summaryrefslogtreecommitdiffstats
path: root/tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h
diff options
context:
space:
mode:
Diffstat (limited to 'tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h')
-rw-r--r--tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h215
1 files changed, 0 insertions, 215 deletions
diff --git a/tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h b/tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h
deleted file mode 100644
index 5198e68f6d..0000000000
--- a/tags/native-sca-1.0.incubating-M3/runtime/core/src/tuscany/sca/model/Composite.h
+++ /dev/null
@@ -1,215 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-/* $Rev$ $Date$ */
-
-#ifndef tuscany_sca_model_composite_h
-#define tuscany_sca_model_composite_h
-
-#include <string>
-#include <map>
-#include <vector>
-
-#include "commonj/sdo/SDO.h"
-
-#include "tuscany/sca/export.h"
-#include "tuscany/sca/model/ComponentType.h"
-
-
-namespace tuscany
-{
- namespace sca
- {
-
- namespace model
- {
- class Component;
- class ComponentType;
- class CompositeReference;
- class CompositeService;
- class Service;
- class WSDLDefinition;
- class Wire;
-
- /**
- * Represents a composite.
- * A composite is used to assemble SCA elements in logical groupings.
- * It is the basic unit of composition within an SCA System. An SCA composite contains a
- * set of components, services, references and the wires that interconnect them, plus a set
- * of properties which can be used to configure components.
- */
- class Composite : public ComponentType
- {
- public:
-
- /**
- * Constructor.
- * @param name the name of the composite.
- * @param root the root of the composite in the file system.
- */
- SCA_API Composite(const std::string& name, const std::string& root);
-
- /**
- * Destructor.
- */
- SCA_API virtual ~Composite();
-
- /**
- * Returns the root directory of the composite.
- * @return The root of the composite in the file system.
- */
- SCA_API const std::string& getRoot() const { return root; }
-
- /**
- * Add a new component to the composite.
- * @param component The component to add.
- */
- SCA_API void addComponent(Component* component);
-
- /**
- * Add a new composite reference to the composite.
- * @param compositeReference The composite reference to add.
- */
- SCA_API void addCompositeReference(CompositeReference* compositeReference);
-
- /**
- * Add a new composite service to the composite.
- * @param compositeService The composite service to add.
- */
- SCA_API void addCompositeService(CompositeService* compositeService);
-
- /**
- * Add/include a composite in this composite.
- * @param composite The composite included in this composite.
- */
- SCA_API void addInclude(Composite* composite);
-
- /**
- * Add a wire to the model.
- * @param source The source location. Either the source component and
- * reference (optional), or an entry point.
- * @param target The target location. Either the target component and
- * service (optional), or an external service.
- */
- SCA_API void addWire(const std::string& source, const std::string& target);
-
- /**
- * Find a component by name.
- * @param componentName The name of the component to be found.
- * @return The component that was found, or 0 if not found.
- */
- SCA_API Component* findComponent(const std::string& componentName);
-
- /**
- * Find a component and service by name.
- * @param componentServiceName A string of the form
- * "componentName"/"serviceName" where the service name is optional
- * if there is only one service on the component.
- * @return The Service that was found, or 0 if not found.
- */
- SCA_API Service* findComponentService(const std::string& componentServiceName);
-
- /**
- * Add a WSDL definition to the composite.
- * @param wsdlModel A data object holding all the information about
- * the WSDL definition from a WSDL file.
- */
- SCA_API void addWSDLDefinition(commonj::sdo::DataObjectPtr wsdlModel);
-
- /**
- * Find a WSDL definition by target namespace.
- * @param wsdlNamespace The namespace of the WSDL definitions to find.
- */
- SCA_API WSDLDefinition* findWSDLDefinition(const std::string& wsdlNamespace);
-
- /**
- * Initialize a component of this type.
- * @param component The component to initialize.
- */
- virtual void initializeComponent(Component* component);
-
- /**
- * Return a cached SDO XSDHelper.
- */
- SCA_API commonj::sdo::XSDHelperPtr getXSDHelper(void);
-
- /**
- * Return a cached SDO XMLHelper.
- */
- SCA_API commonj::sdo::XMLHelperPtr getXMLHelper(void);
-
- /**
- * Return a data factory which has all the types defined in XSDs and
- * WSDL files configured for this composite.
- * @return The data factory for this composite.
- */
- SCA_API commonj::sdo::DataFactoryPtr getDataFactory(void);
-
- /**
- * Work through the list of wires and connect the source and target uris.
- */
- SCA_API void resolveWires();
-
- private:
-
- /**
- * Directory of the root of the composite.
- */
- std::string root;
-
- /**
- * Cached XSDHelper.
- */
- commonj::sdo::XSDHelperPtr xsdHelper;
-
- /**
- * Cached XMLHelper.
- */
- commonj::sdo::XMLHelperPtr xmlHelper;
-
- /**
- * Map (by name) of all the components in this composite.
- */
- typedef std::map<std::string, Component*> COMPONENT_MAP;
- COMPONENT_MAP components;
-
- /**
- * Vector of all the composites included in this composite.
- */
- typedef std::vector<Composite*> INCLUDES;
- INCLUDES includes;
-
- /**
- * Vector of all the wires in this composite.
- */
- typedef std::vector<Wire*> WIRES;
- WIRES wires;
-
- /**
- * Map by namespace of all the wsdl definitions in this composite.
- */
- typedef std::map<std::string, WSDLDefinition*> WSDL_MAP;
- WSDL_MAP wsdlDefinitions;
- };
-
- } // End namespace model
- } // End namespace sca
-} // End namespace tuscany
-
-#endif // tuscany_sca_model_composite_h