diff options
Diffstat (limited to 'tags/native-sca-1.0.incubating-M3-RC4/runtime/extensions/ruby/src/tuscany/sca/ruby/model/RubyImplementation.h')
-rw-r--r-- | tags/native-sca-1.0.incubating-M3-RC4/runtime/extensions/ruby/src/tuscany/sca/ruby/model/RubyImplementation.h | 136 |
1 files changed, 0 insertions, 136 deletions
diff --git a/tags/native-sca-1.0.incubating-M3-RC4/runtime/extensions/ruby/src/tuscany/sca/ruby/model/RubyImplementation.h b/tags/native-sca-1.0.incubating-M3-RC4/runtime/extensions/ruby/src/tuscany/sca/ruby/model/RubyImplementation.h deleted file mode 100644 index c7bc851635..0000000000 --- a/tags/native-sca-1.0.incubating-M3-RC4/runtime/extensions/ruby/src/tuscany/sca/ruby/model/RubyImplementation.h +++ /dev/null @@ -1,136 +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_ruby_model_rubyimplementation_h -#define tuscany_sca_ruby_model_rubyimplementation_h - -#include <string> - -#include "tuscany/sca/ruby/Ruby.h" -#include "tuscany/sca/model/ComponentType.h" - -namespace tuscany -{ - namespace sca - { - namespace ruby - { - /** - * Holds information about an SCA implementation written in Ruby - */ - class RubyImplementation : public tuscany::sca::model::ComponentType - { - - public: - /** - * Constructor. - * @param composite The composite containing this implementation. - * @param module Name of the Ruby module. - * @param className Name of the Ruby implementation class. - * @param script Path of the Ruby script. - */ - RubyImplementation(tuscany::sca::model::Composite* composite, - const std::string& module, const std::string& className, const std::string& script); - - /** - * Destructor - */ - virtual ~RubyImplementation(); - - /** - * Initialize a component of this type. - * @param component The component to initialize. - */ - virtual void initializeComponent(tuscany::sca::model::Component* component); - - /** - * Returns the name of the Ruby module. - * @return The name of the Ruby module. - */ - const std::string& getModule() const { return module; } - - /** - * Returns the name of Ruby class. - * @return Name of the Ruby class. - */ - const std::string& getClass() const { return className; } - - /** - * Returns the path of the Ruby script. - * @return The path of the Ruby script. - */ - const std::string& getScript() const { return script; } - - /** - * Returns the Ruby implementation class - */ - VALUE getImplementationClass() const { return implementationClass; } - - /** - * Returns the Ruby REXML::Document class - */ - static VALUE getXMLDocumentClass(); - - private: - - /** - * Load the Ruby implementation class - */ - void loadClass(); - - /** - * Name of the Ruby module. - */ - std::string module; - - /** - * Name of the Ruby class. - */ - std::string className; - - /** - * Path of the Ruby script. - */ - std::string script; - - /** - * The Ruby implementation class - */ - VALUE implementationClass; - - /** - * True if the Ruby runtime has been initialized - */ - static bool initialized; - - /** - * The Ruby REXML::Document class. - */ - static VALUE xmlDocumentClass; - - }; - - } // End namespace ruby - } // End namespace sca -} // End namespace tuscany - -#endif // tuscany_sca_ruby_model_rubyimplementation_h |