// // Copyright (c) ZeroC, Inc. All rights reserved. // #import #import #import #import #import #import // // Forward declarations. // @protocol ICELogger; ICE_API @protocol ICEDispatcherCall -(void) run; @end ICE_API @protocol ICEBatchRequest -(void) enqueue; -(int) getSize; -(NSString*) getOperation; -(id) getProxy; @end ICE_API @interface ICEInitializationData : NSObject { @private id properties; id logger; void(^dispatcher)(id, id); void(^batchRequestInterceptor)(id, int, int); NSDictionary* prefixTable_; } @property(retain, nonatomic) id properties; @property(retain, nonatomic) id logger; @property(copy, nonatomic) void(^dispatcher)(id, id); @property(copy, nonatomic) void(^batchRequestInterceptor)(id, int, int); @property(retain, nonatomic) NSDictionary* prefixTable_; -(id) init:(id)properties logger:(id)logger dispatcher:(void(^)(id, id))d batchRequestInterceptor:(void(^)(id, int, int))i; +(id) initializationData; +(id) initializationData:(id)properties logger:(id)logger dispatcher:(void(^)(id, id))d batchRequestInterceptor:(void(^)(id, int, int))i; // This class also overrides copyWithZone:, hash, isEqual:, and dealloc. @end extern ICEEncodingVersion* ICEEncoding_1_0; extern ICEEncodingVersion* ICEEncoding_1_1; extern ICEEncodingVersion* ICECurrentEncoding; extern ICEProtocolVersion* ICEProtocol_1_0; extern ICEProtocolVersion* ICECurrentProtocol; extern ICEEncodingVersion* ICECurrentProtocolEncoding; ICE_API @interface ICEUtil : NSObject +(id) createProperties; +(id) createProperties:(int*)argc argv:(char*[])argv; +(id) createCommunicator; +(id) createCommunicator:(ICEInitializationData*)initData; +(id) createCommunicator:(int*)argc argv:(char*[])argv; +(id) createCommunicator:(int*)argc argv:(char*[])argv initData:(ICEInitializationData*)initData; +(id) createCommunicator:(int*)argc argv:(char*[])argv configFile:(NSString*)configFile; +(id) createInputStream:(id)communicator data:(NSData*)data; +(id) createInputStream:(id)c data:(NSData*)data encoding:(ICEEncodingVersion*)e; +(id) createOutputStream:(id)communicator; +(id) createOutputStream:(id)c encoding:(ICEEncodingVersion*)e; +(NSString*) generateUUID; +(NSArray*)argsToStringSeq:(int)argc argv:(char*[])argv; +(void)stringSeqToArgs:(NSArray*)args argc:(int*)argc argv:(char*[])argv; +(ICEIdentity*) stringToIdentity:(NSString*)str; +(NSMutableString*) identityToString:(ICEIdentity*)ident toStringMode:(ICEToStringMode)toStringMode; +(NSMutableString*) identityToString:(ICEIdentity*)ident; @end @interface ICEEncodingVersion(StringConv) +(ICEEncodingVersion*) encodingVersionWithString:(NSString*)str; @end @interface ICEProtocolVersion(StringConv) +(ICEProtocolVersion*) protocolVersionWithString:(NSString*)str; @end extern void ICEregisterIceStringConverter(BOOL); extern void ICEregisterIceSSL(BOOL); extern void ICEregisterIceUDP(BOOL); extern void ICEregisterIceWS(BOOL); extern void ICEregisterIceDiscovery(BOOL); extern void ICEregisterIceLocatorDiscovery(BOOL); #if defined(__APPLE__) && TARGET_OS_IPHONE > 0 extern void ICEregisterIceIAP(BOOL); #endif