diff options
Diffstat (limited to 'TAO/CIAO/ciao/Deployment_Core.idl')
-rw-r--r-- | TAO/CIAO/ciao/Deployment_Core.idl | 100 |
1 files changed, 16 insertions, 84 deletions
diff --git a/TAO/CIAO/ciao/Deployment_Core.idl b/TAO/CIAO/ciao/Deployment_Core.idl index fec1b124c61..023c413b1fc 100644 --- a/TAO/CIAO/ciao/Deployment_Core.idl +++ b/TAO/CIAO/ciao/Deployment_Core.idl @@ -4,7 +4,6 @@ #define DEPLOYMENT_CORE_IDL #include "CCM_Component.idl" -#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> // *************** Packaging and Deployment *************** module Deployment @@ -12,19 +11,21 @@ module Deployment // Typeprefix Components "omg.org"; // OMG threw these things away, didn't it. - exception UnknownImplId + exception UnknownImplId { string name; string reason; }; exception InvalidLocation {}; - exception InstallationFailure + exception InstallationFailure { + /*Do we still need a reason? --Tao + *Yes -- will */ string name; string reason; }; - exception ImplEntryPointNotFound + exception ImplEntryPointNotFound { string name; string reason; @@ -48,14 +49,14 @@ module Deployment string name; string reason; }; - + //==============property================== struct Property { string name; any value; }; - + typedef sequence < Property > Properties; //============connection================== @@ -70,19 +71,9 @@ module Deployment MultiplexReceptacle, EventEmitter, EventPublisher, - EventConsumer, - ecEventEmitter, - ecEventPublisher, - ecEventConsumer, - rtecEventEmitter, - rtecEventPublisher, - rtecEventConsumer, - nsEventEmitter, - nsEventPublisher, - nsEventConsumer + EventConsumer }; - // CIAO's specific <Connection> type defition. // To avoid the connection info in the plan being passed to the // local node and to make the implementation not very cumbersome // I changed the connection struct to include some extra informations. @@ -92,22 +83,11 @@ module Deployment string portName; CCMComponentPortKind kind; - string endpointInstanceName; // CIAO specific extension - string endpointPortName; // CIAO specific extension - // the endpoints member is change to endpoint. // Since we will not have more than 1 objref in there. Object endpoint; - - // A wrapper facade interface to provision different event - // communication mechanisms, including RTEC, etc. - CIAO::CIAO_Event_Service event_service; - - // The properties of this connection, particularly useful - // to speicfy QoS properties of pub/sub service connections. - Properties config; }; - + typedef sequence < Connection > Connections; //======================================= @@ -143,9 +123,7 @@ module Deployment //================================== interface Application { - void finishLaunch (in Connections providedReference, - in boolean start, - in boolean is_ReDAC) + void finishLaunch (in Connections providedReference, in boolean start) raises (StartError, InvalidConnection); void start () raises (StartError); @@ -173,8 +151,6 @@ module Deployment interface NodeApplication; // Forward decl. typedef sequence<NodeApplication> NodeApplications; - /// CIAO specific interface, which could deal with installing multiple - /// containers into a single NodeApplication. interface Container { readonly attribute ::Deployment::Properties properties; @@ -182,14 +158,10 @@ module Deployment /// Get the NodeApplication which created us NodeApplication get_node_application (); - /// Initialize the container with policies - // long init (in ::CORBA::PolicyList policies); + /// Initialize the container with properties. + long init (in ::Deployment::Properties properties); - // NW: The following should be component specific info because the - // container has already been created and initialized at this - // time. So there's not much container configuration to be done - // at this stage. - //@@ The container_impl_info will contain + //@@ The properties will contain //1 component instance name as the key. //2 dll/so name of the exec //3 entry point of the exec @@ -197,7 +169,7 @@ module Deployment //5 entry point of the svnt //6 Poosible other configuration for container/home/component - /// Install all homes and components + /// Install all homes and components Deployment::ComponentInfos install (in ContainerImplementationInfo container_impl_info) raises (UnknownImplId, ImplEntryPointNotFound, @@ -207,35 +179,14 @@ module Deployment /// Remove all homes and components void remove () raises (::Components::RemoveFailure); - - /// Remove a component instance - void remove_component (in string inst_name) - raises (::Components::RemoveFailure); }; typedef sequence<Container> Containers; - typedef sequence<CIAO::CIAO_Event_Service> CIAO_Event_Services; - - /// CIAO specific extension - /// This struct captures the installation information of a particular - /// CIAO_Event_Service, as defined in <ciaosvcs/Events/CIAO_Events.idl> - struct ESInstallationInfo - { - string id; - CIAO::EventServiceType type; - string svcconf; - //Properties es_config; - }; - - /// CIAO specific extension - typedef sequence<ESInstallationInfo> ESInstallationInfos; interface NodeApplication : Application { readonly attribute ::Deployment::Properties properties; - /// CIAO specific operation to handle dynamic system redeployment - /// and reconfiguration /// @@ Initialize the nodeapplication, so it will know what /// components it will create and home many of them are /// there. However the real create action will take place when @@ -251,52 +202,33 @@ module Deployment ::Components::InvalidConfiguration, ::Components::RemoveFailure); - /// CIAO specific extension - /// This operation will create one or more CIAO_Event_Service objects - /// within the NodeApplication, which will be used to mediate the - /// communication of CCM events - CIAO_Event_Services install_es (in ESInstallationInfos es_infos) - raises (InstallationFailure); - - /// CIAO specific extensions - ///@@ We know that Deployment::NodeApplicationManager will be returned, + ///@@ We know that Dployment::NodeApplicationManager will be returned, /// however to avoid the size of the shared object of CIAO_Server. /// we return an Object. Object get_node_application_manager (); - /// CIAO specific extension Container create_container (in ::Deployment::Properties properties) raises (::Components::CreateFailure, ::Components::InvalidConfiguration); - /// CIAO specific extension void remove_container (in Container cref) raises (::Components::RemoveFailure); - /// CIAO specific extension Containers get_containers (); - /// CIAO specific extension - /// Remove a component instance from the NodeApplication - void remove_component (in string inst_name) - raises (::Components::RemoveFailure); - - /// CIAO specific extension /// Remove all containers, components and component homes. /// Shuts down the ORB of the NodeApplication to terminate the process. oneway void remove (); - /// CIAO specific extension. This will enforce the component to + /// CIAO specific extensions. This will enforce the component to /// be activated (preactivate, activate, postactivated) before the assembly /// is established void ciao_preactivate () raises (StartError); - /// CIAO specific extension void ciao_postactivate () raises (StartError); - /// CIAO specific extension void ciao_passivate () raises (StopError); }; |