*/
module Engines
{
+/*!
+ General Key Value Structure to set or get properties, for component
+*/
+ struct KeyValuePair
+ {
+ string key;
+ any value;
+ };
+
+ typedef sequence<KeyValuePair> FieldsDict;
+
interface Component ;
/*! \brief Interface of the %Container
*/
interface Container
{
-/*!
- Initializes the %container with a definite name.
-*/
- Container start_impl( in string ContainerName ) ;
/*!
Loads into the container a new component, registers it and starts it's CORBA servant.
\param nameToRegister Name of the component which will be registered in Registry (or Name Service)
\param componentName Name of the constructed library of the %component
+ \return a loaded component
*/
Component load_impl(in string nameToRegister, in string componentName);
/*!
- Stops the component servant, and deletes all related objects
+ Stops the component servant, and deletes all related objects
+ \param component_i Component to be removed
*/
void remove_impl(in Component component_i);
Returns True if the %container has been killed
*/
boolean Kill_impl() ;
+/*!
+ Shutdown the Container process.
+*/
+ void Shutdown();
+/*!
+ Returns the hostname of the container
+*/
+ string getHostName();
+/*!
+ Returns the PID of the container
+*/
+ long getPID();
};
/*! \brief Interface of the %component
Returns the container that the %Component refers to.
*/
Container GetContainerRef() ;
+/*!
+ Gives a sequence of (key=string,value=any) to the component.
+ Base class component stores the sequence in a map.
+ The map is cleared before.
+ This map is for use by derived classes.
+*/
+ void setProperties(in FieldsDict dico);
+/*!
+ returns a previously stored map (key=string,value=any) as a sequence.
+ See setProperties(in FieldsDict dico).
+*/
+ FieldsDict getProperties();
/*!
This method is used by the %SUPERVISOR component. It sets the names of the graph and of the node.
+ \param aGraphName Name of graph
+ \param aNodeName Name of node
*/
void Names( in string aGraphName , in string aNodeName ) ;
/*!