DEPRECATED: Diffusion iOS Classic API  5.9.4
 All Data Structures Files Functions Variables Enumerations Enumerator Properties Macros Pages
DFConnectionDetails.h
1 /*
2  * ConnectionDetails.h
3  *
4  * Created by dhudson on 22/05/2009 - Diffusion 5.9.4_01
5  * Copyright © 2009, 2015 Push Technology Ltd. All rights reserved.
6  *
7  * This class represents the connection details passed to the DFClient class
8  */
9 
10 #import "DFConnectionDetails.h"
11 #import "DFClientDelegate.h"
12 #import "DFCredentials.h"
13 #import "DFServerDetails.h"
14 #import "DFBaseConnectionProperties.h"
15 
16 /**
17  A collection of DFServerDetails objects, with some default values.
18  */
19 @interface DFConnectionDetails : NSObject
20 
21 @property(nonatomic,readonly) DFBaseConnectionProperties *defaults; /**< The set of defaults to use when a DFServerDetails object in serverDetails lacks a setting */
22 @property(nonatomic,readonly) NSArray *serverDetails; /**< The pool of DFServerDetails objects */
23 
24 @property(nonatomic,assign) BOOL isAutoAck; /**< YES if auto acknowledge is switched on. If this is set to NO, it is down to the implementation to ack message from the server */
25 @property(nonatomic,assign) BOOL isAutoFailover; /**< Once a connection to Diffusion is place, should it fail, if there is a pool of DFServerDetail objects to pick from, then the next DFServerDetail object is chosen and a connection placed to it */
26 @property(nonatomic,assign) BOOL isLoadBalance; /**< If YES, the list of of DFServerDetail objects is shuffled prior to use */
27 @property(nonatomic,assign) BOOL isCascade; /**< When the Diffusion client attempts to place a connection, should the attempt fail, then the next server-details object in the list is chosen. It is similar to isAutoFailover except this logic is apply prior to a connection */
28 
29 @property(nonatomic,readonly) DFServerDetails *currentServerDetails; /**< Server details object currently in use */
30 
31 /**
32  Initialiase the DFConnectionDetails object.
33  @param server A single DFServerDetails object, detailing the location of the Diffusion server
34  @param topicSet A default list of topic-names, as a comma seperated list, may be nil.
35  @param credentials A default set of credentials to use, may be nil.
36  */
37 -(id)initWithServer:(DFServerDetails*)server topics: (NSString*)topicSet andCredentials:(DFCredentials*)credentials;
38 
39 /**
40  Initialiase the DFConnectionDetails object.
41  @param servers An NSArray of DFServerDetails object, detailing the location of the Diffusion server
42  @param topicSet A default list of topic-names, as a comma seperated list, may be nil.
43  @param credentials A default set of credentials to use, may be nil.
44  */
45 -(id)initWithServers:(NSArray*)servers topics: (NSString*)topicSet andCredentials:(DFCredentials*)credentials;
46 
47 /**
48  Reset the next-server-index to zero
49  */
50 -(void)reset;
51 
52 /**
53  Get next serverDetails object from the list
54  */
56 
57 
58 @end
59