Communicators
module Ice {
local interface Communicator {
string proxyToString(Object* obj);
Object* stringToProxy(string str);
PropertyDict proxyToProperty(Object* proxy, string property);
Object* propertyToProxy(string property);
Identity stringToIdentity(string str);
string identityToString(Identity id);
ObjectAdapter createObjectAdapter(string name);
ObjectAdapter createObjectAdapterWithEndpoints(string name, string endpoints);
ObjectAdapter createObjectAdapterWithRouter(string name, Router* rtr);
void shutdown();
void waitForShutdown();
bool isShutdown();
void destroy();
// ...
};
// ...
};
Communicator Initialization
namespace Ice {
struct InitializationData {
PropertiesPtr properties;
LoggerPtr logger;
Instrumentation::CommunicatorObserverPtr observer;
StringConverterPtr stringConverter;
WstringConverterPtr wstringConverter;
ThreadNotificationPtr threadHook;
DispatcherPtr dispatcher;
CompactIdResolverPtr compactIdResolver;
BatchRequestInterceptorPtr batchRequestInterceptor;
};
}
namespace Ice {
CommunicatorPtr initialize(int&, char*[],
const InitializationData& = InitializationData(),
Int = ICE_INT_VERSION);
CommunicatorPtr initialize(StringSeq&,
const InitializationData& = InitializationData(),
Int = ICE_INT_VERSION);
CommunicatorPtr initialize(
const InitializationData& = InitializationData()
Int = ICE_INT_VERSION);
}
Object Identity
module Ice {
struct Identity {
string name;
string category;
};
};