diff options
Diffstat (limited to 'CIAO/DAnCE/Deployment/Deployment_Packaging_Data.idl')
-rw-r--r-- | CIAO/DAnCE/Deployment/Deployment_Packaging_Data.idl | 171 |
1 files changed, 171 insertions, 0 deletions
diff --git a/CIAO/DAnCE/Deployment/Deployment_Packaging_Data.idl b/CIAO/DAnCE/Deployment/Deployment_Packaging_Data.idl new file mode 100644 index 00000000000..99619f4699c --- /dev/null +++ b/CIAO/DAnCE/Deployment/Deployment_Packaging_Data.idl @@ -0,0 +1,171 @@ +// $Id$ + +#ifndef PACKAGING_DATA_IDL +#define PACKAGING_DATA_IDL + +#include "DAnCE/Deployment/Deployment_Data.idl" + +module Deployment +{ + struct ComponentPackageImport { + ::CORBA::StringSeq location; + }; + + typedef sequence < ComponentPackageImport > ComponentPackageImports; + + struct SubcomponentPropertyReference { + string propertyName; + unsigned long instanceRef; + }; + + struct SubcomponentPortEndpoint { + string portName; + unsigned long instanceRef; + }; + + typedef sequence < SubcomponentPortEndpoint > SubcomponentPortEndpoints; + + typedef sequence < SubcomponentPropertyReference > SubcomponentPropertyReferences; + + struct AssemblyPropertyMapping { + string name; + string externalName; + SubcomponentPropertyReferences delegatesTo; + }; + + typedef sequence < AssemblyPropertyMapping > AssemblyPropertyMappings; + + struct NamedImplementationArtifact; + + typedef sequence < NamedImplementationArtifact > NamedImplementationArtifacts; + + struct ImplementationArtifactDescription { + string label; + string UUID; + ::CORBA::StringSeq location; + Properties execParameter; + Requirements deployRequirement; + NamedImplementationArtifacts dependsOn; + Properties infoProperty; + }; + + struct NamedImplementationArtifact { + string name; + ImplementationArtifactDescription referencedArtifact; + }; + + // @@changed: order of members + struct MonolithicImplementationDescription { + Properties nodeExecParameter; + NamedImplementationArtifacts primaryArtifact; + ImplementationRequirements deployRequirement; + Properties componentExecParameter; + }; + + typedef sequence < MonolithicImplementationDescription > MonolithicImplementationDescriptions; + + struct PackageConfiguration; + + typedef sequence < PackageConfiguration > PackageConfigurations; + + struct ComponentPackageDescription; + + typedef sequence < ComponentPackageDescription > ComponentPackageDescriptions; + + struct SubcomponentInstantiationDescription { + string name; + ComponentPackageDescriptions basePackage; + PackageConfigurations specializedConfig; + Requirements selectRequirement; + Properties configProperty; + ComponentPackageReferences referencedPackage; + ComponentPackageImports importedPackage; + }; + + typedef sequence < SubcomponentInstantiationDescription > SubcomponentInstantiationDescriptions; + + struct AssemblyConnectionDescription { + string name; + Requirements deployRequirement; + ComponentExternalPortEndpoints externalEndpoint; + SubcomponentPortEndpoints internalEndpoint; + ExternalReferenceEndpoints externalReference; + }; + + typedef sequence < AssemblyConnectionDescription > AssemblyConnectionDescriptions; + + // @@added + enum LocalityKind { + SameNodeAnyProcess, + SameNodeSameProcess, + SameNodeDifferentProcess, + DifferentNode, + DifferentProcess, + NoConstraint + }; + + // @@added + struct Locality { + LocalityKind constraint; + ::CORBA::ULongSeq constrainedInstanceRef; + }; + + struct ComponentAssemblyDescription { + SubcomponentInstantiationDescriptions instance; + AssemblyConnectionDescriptions connection; + AssemblyPropertyMappings externalProperty; + // @@added + // Localities localityConstraint; + }; + + typedef sequence < ComponentAssemblyDescription > ComponentAssemblyDescriptions; + + struct ComponentImplementationDescription { + string label; + string UUID; + ComponentInterfaceDescription implements; + ComponentAssemblyDescriptions assemblyImpl; + MonolithicImplementationDescriptions monolithicImpl; + Properties configProperty; + Capabilities capability; + ImplementationDependencies dependsOn; + Properties infoProperty; + }; + + + struct PackagedComponentImplementation { + string name; + ComponentImplementationDescription referencedImplementation; + }; + + + typedef sequence < PackagedComponentImplementation > PackagedComponentImplementations; + + struct ComponentPackageDescription { + string label; + string UUID; + ComponentInterfaceDescription realizes; + Properties configProperty; + PackagedComponentImplementations implementation; + Properties infoProperty; + }; + + + struct PackageConfiguration { + string label; + string UUID; + ComponentPackageDescriptions basePackage; + PackageConfigurations specializedConfig; + Requirements selectRequirement; + Properties configProperty; + ComponentPackageReferences reference; + // @@changed, delete previous + //ComponentPackageReferences referencedPackage; + // @@add + ComponentPackageImports importedPackage; + }; + + +}; + +#endif /* PACKAGING_DATA_IDL */ |