// // Copyright (c) ZeroC, Inc. All rights reserved. // // // Ice version 3.7.11 // // // // Generated from file `IceStorm.ice' // // Warning: do not edit this file. // // // export namespace IceStorm { /** * Information on the topic links. */ class LinkInfo { constructor(theTopic?:TopicPrx, name?:string, cost?:number); clone():LinkInfo; equals(rhs:any):boolean; theTopic:TopicPrx; name:string; cost:number; static write(outs:Ice.OutputStream, value:LinkInfo):void; static read(ins:Ice.InputStream):LinkInfo; } /** * A sequence of {@link LinkInfo} objects. */ type LinkInfoSeq = LinkInfo[]; class LinkInfoSeqHelper { static write(outs:Ice.OutputStream, value:LinkInfoSeq):void; static read(ins:Ice.InputStream):LinkInfoSeq; } /** * This dictionary represents quality of service parameters. * @see Topic#subscribeAndGetPublisher */ class QoS extends Map { } class QoSHelper { static write(outs:Ice.OutputStream, value:QoS):void; static read(ins:Ice.InputStream):QoS; } /** * This exception indicates that an attempt was made to create a link * that already exists. */ class LinkExists extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param name The name of the linked topic. * @param ice_cause The error that cause this exception. */ constructor(name?:string, ice_cause?:string|Error); name:string; } /** * This exception indicates that an attempt was made to remove a * link that does not exist. */ class NoSuchLink extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param name The name of the link that does not exist. * @param ice_cause The error that cause this exception. */ constructor(name?:string, ice_cause?:string|Error); name:string; } /** * This exception indicates that an attempt was made to subscribe * a proxy for which a subscription already exists. */ class AlreadySubscribed extends Ice.UserException { } /** * This exception indicates that an attempt was made to subscribe * a proxy that is null. */ class InvalidSubscriber extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param reason The reason for the failure. * @param ice_cause The error that cause this exception. */ constructor(reason?:string, ice_cause?:string|Error); reason:string; } /** * This exception indicates that a subscription failed due to an * invalid QoS. */ class BadQoS extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param reason The reason for the failure. * @param ice_cause The error that cause this exception. */ constructor(reason?:string, ice_cause?:string|Error); reason:string; } abstract class TopicPrx extends Ice.ObjectPrx { /** * Get the name of this topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. * @see TopicManager#create */ getName(context?:Map):Ice.AsyncResult; /** * Get a proxy to a publisher object for this topic. To publish * data to a topic, the publisher calls getPublisher and then * casts to the topic type. An unchecked cast must be used on this * proxy. If a replicated IceStorm deployment is used this call * may return a replicated proxy. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getPublisher(context?:Map):Ice.AsyncResult; /** * Get a non-replicated proxy to a publisher object for this * topic. To publish data to a topic, the publisher calls * getPublisher and then casts to the topic type. An unchecked * cast must be used on this proxy. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getNonReplicatedPublisher(context?:Map):Ice.AsyncResult; /** * Subscribe with the given qos to this topic. A * per-subscriber publisher object is returned. * @param theQoS The quality of service parameters for this * subscription. * @param subscriber The subscriber's proxy. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. * @see #unsubscribe */ subscribeAndGetPublisher(theQoS:QoS, subscriber:Ice.ObjectPrx, context?:Map):Ice.AsyncResult; /** * Unsubscribe the given subscriber. * @param subscriber The proxy of an existing subscriber. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. * @see #subscribeAndGetPublisher */ unsubscribe(subscriber:Ice.ObjectPrx, context?:Map):Ice.AsyncResult; /** * Create a link to the given topic. All events originating * on this topic will also be sent to linkTo. * @param linkTo The topic to link to. * @param cost The cost to the linked topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ link(linkTo:TopicPrx, cost:number, context?:Map):Ice.AsyncResult; /** * Destroy the link from this topic to the given topic linkTo. * @param linkTo The topic to destroy the link to. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ unlink(linkTo:TopicPrx, context?:Map):Ice.AsyncResult; /** * Retrieve information on the current links. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getLinkInfoSeq(context?:Map):Ice.AsyncResult; /** * Retrieve the list of subscribers for this topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getSubscribers(context?:Map):Ice.AsyncResult; /** * Destroy the topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ destroy(context?:Map):Ice.AsyncResult; /** * Downcasts a proxy without confirming the target object's type via a remote invocation. * @param prx The target proxy. * @return A proxy with the requested type. */ static uncheckedCast(prx:Ice.ObjectPrx, facet?:string):TopicPrx; /** * Downcasts a proxy after confirming the target object's type via a remote invocation. * @param prx The target proxy. * @param facet A facet name. * @param context The context map for the invocation. * @return A proxy with the requested type and facet, or nil if the target proxy is nil or the target * object does not support the requested type. */ static checkedCast(prx:Ice.ObjectPrx, facet?:string, contex?:Map):Ice.AsyncResult; } abstract class Topic extends Ice.Object { /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract getName(current:Ice.Current):PromiseLike|string; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract getPublisher(current:Ice.Current):PromiseLike|Ice.ObjectPrx; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract getNonReplicatedPublisher(current:Ice.Current):PromiseLike|Ice.ObjectPrx; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract subscribeAndGetPublisher(theQoS:QoS, subscriber:Ice.ObjectPrx, current:Ice.Current):PromiseLike|Ice.ObjectPrx; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract unsubscribe(subscriber:Ice.ObjectPrx, current:Ice.Current):PromiseLike|void; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract link(linkTo:TopicPrx, cost:number, current:Ice.Current):PromiseLike|void; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract unlink(linkTo:TopicPrx, current:Ice.Current):PromiseLike|void; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract getLinkInfoSeq(current:Ice.Current):PromiseLike|LinkInfoSeq; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract getSubscribers(current:Ice.Current):PromiseLike|Ice.IdentitySeq; /** * Publishers publish information on a particular topic. A topic * logically represents a type. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see TopicManager */ abstract destroy(current:Ice.Current):PromiseLike|void; /** * Obtains the Slice type ID of this type. * @return The return value is always "::IceStorm::Topic". */ static ice_staticId():string; } /** * Mapping of topic name to topic proxy. */ class TopicDict extends Map { } class TopicDictHelper { static write(outs:Ice.OutputStream, value:TopicDict):void; static read(ins:Ice.InputStream):TopicDict; } /** * This exception indicates that an attempt was made to create a topic * that already exists. */ class TopicExists extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param name The name of the topic that already exists. * @param ice_cause The error that cause this exception. */ constructor(name?:string, ice_cause?:string|Error); name:string; } /** * This exception indicates that an attempt was made to retrieve a * topic that does not exist. */ class NoSuchTopic extends Ice.UserException { /** * One-shot constructor to initialize all data members. * @param name The name of the topic that does not exist. * @param ice_cause The error that cause this exception. */ constructor(name?:string, ice_cause?:string|Error); name:string; } abstract class TopicManagerPrx extends Ice.ObjectPrx { /** * Create a new topic. The topic name must be unique. * @param name The name of the topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ create(name:string, context?:Map):Ice.AsyncResult; /** * Retrieve a topic by name. * @param name The name of the topic. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ retrieve(name:string, context?:Map):Ice.AsyncResult; /** * Retrieve all topics managed by this topic manager. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ retrieveAll(context?:Map):Ice.AsyncResult; /** * Returns the checksums for the IceStorm Slice definitions. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getSliceChecksums(context?:Map):Ice.AsyncResult; /** * Downcasts a proxy without confirming the target object's type via a remote invocation. * @param prx The target proxy. * @return A proxy with the requested type. */ static uncheckedCast(prx:Ice.ObjectPrx, facet?:string):TopicManagerPrx; /** * Downcasts a proxy after confirming the target object's type via a remote invocation. * @param prx The target proxy. * @param facet A facet name. * @param context The context map for the invocation. * @return A proxy with the requested type and facet, or nil if the target proxy is nil or the target * object does not support the requested type. */ static checkedCast(prx:Ice.ObjectPrx, facet?:string, contex?:Map):Ice.AsyncResult; } abstract class TopicManager extends Ice.Object { /** * A topic manager manages topics, and subscribers to topics. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see Topic */ abstract create(name:string, current:Ice.Current):PromiseLike|TopicPrx; /** * A topic manager manages topics, and subscribers to topics. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see Topic */ abstract retrieve(name:string, current:Ice.Current):PromiseLike|TopicPrx; /** * A topic manager manages topics, and subscribers to topics. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see Topic */ abstract retrieveAll(current:Ice.Current):PromiseLike|TopicDict; /** * A topic manager manages topics, and subscribers to topics. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. * @see Topic */ abstract getSliceChecksums(current:Ice.Current):PromiseLike|Ice.SliceChecksumDict; /** * Obtains the Slice type ID of this type. * @return The return value is always "::IceStorm::TopicManager". */ static ice_staticId():string; } abstract class FinderPrx extends Ice.ObjectPrx { /** * Get the topic manager proxy. The proxy might point to several * replicas. * @param context The Context map to send with the invocation. * @return The asynchronous result object for the invocation. */ getTopicManager(context?:Map):Ice.AsyncResult; /** * Downcasts a proxy without confirming the target object's type via a remote invocation. * @param prx The target proxy. * @return A proxy with the requested type. */ static uncheckedCast(prx:Ice.ObjectPrx, facet?:string):FinderPrx; /** * Downcasts a proxy after confirming the target object's type via a remote invocation. * @param prx The target proxy. * @param facet A facet name. * @param context The context map for the invocation. * @return A proxy with the requested type and facet, or nil if the target proxy is nil or the target * object does not support the requested type. */ static checkedCast(prx:Ice.ObjectPrx, facet?:string, contex?:Map):Ice.AsyncResult; } abstract class Finder extends Ice.Object { /** * This interface is advertised by the IceStorm service through the * Ice object with the identity `IceStorm/Finder'. This allows clients * to retrieve the topic manager with just the endpoint information of * the IceStorm service. * @param current The Current object for the invocation. * @return The result or a promise like object that will be resolved with the result of the invocation. */ abstract getTopicManager(current:Ice.Current):PromiseLike|TopicManagerPrx; /** * Obtains the Slice type ID of this type. * @return The return value is always "::IceStorm::Finder". */ static ice_staticId():string; } }