next up previous contents
Next: B Listing des ASManagementAgenten Up: No Title Previous: Mögliche Weiterentwicklungen:

A Listing der IDL-Schnittstelle des ASManagementAgenten

// 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



Copyright Munich Network Management Team