// the next two lines are C preprocessor directives // which are allowed in CORBA IDL #ifndef _ASManagementAgent_idl_ #define _ASManagementAgent_idl_ #include "CosEventComm.idl" // this module will be converted to // a java package 'ASManagementAgent' module ASManagementAgent { interface ASManagementAgent { //************************* // data types //************************* //parameterlist is a string containing the parameters of one constructor //separated by spaces typedef string parameterlist; //return value for get_agent_parameters(...). It is an array of parameterlists typedef sequence< parameterlist > parametersets; //agentsystemname is a string containing the name of an agent system typedef string agentsystemname; //agentsystem_list is a sequence of agentsystemnames containing the names of the //agent systems found in the appropriate naming context of the CORBA Naming Service. typedef sequence< agentsystemname > agentsystem_list; //packagename is a string containing the name of a Java package typedef string packagename; //agenttype is a string containing the MASA type of an agent. This can be //"StationaryAgent" or "MobileAgent" typedef string agenttype; //pushConsumer_idnr is an integer containing the id number of a pushConsumer //that has been registered by an applet with the ASManagementAgent. It's value //is assigned by ASManagementAgent.connect_push_consumer(...) typedef long pushConsumer_idnr; //************************* // methods //************************* //get list of active agent systems agentsystem_list identify_agentsystems(); //get parameter types for agent "agent_name" parametersets get_agent_parameters(in string agent_name, in packagename agent_package, in agenttype agent_type); //connect pushConsumer of applet to the ASManagementAgent pushConsumer_idnr connect_push_consumer(in CosEventComm::PushConsumer pushConsumer); //disconnect pushConsumer of applet from ASManagementAgent void disconnect_push_consumer(in pushConsumer_idnr id); }; }; #endif