/* * This file was generated by the CommonAPI Generators. * Used org.genivi.commonapi.core 3.1.2.v201506150834. * Used org.franca.core 0.9.1.201412191134. * * This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. * If a copy of the MPL was not distributed with this file, You can obtain one at * http://mozilla.org/MPL/2.0/. */ #ifndef COMMONAPI_TESTS_MANAGED_Leaf_Interface_STUB_DEFAULT_HPP_ #define COMMONAPI_TESTS_MANAGED_Leaf_Interface_STUB_DEFAULT_HPP_ #include #include namespace v1_0 { namespace commonapi { namespace tests { namespace managed { /** * Provides a default implementation for LeafInterfaceStubRemoteEvent and * LeafInterfaceStub. Method callbacks have an empty implementation, * remote set calls on attributes will always change the value of the attribute * to the one received. * * Override this stub if you only want to provide a subset of the functionality * that would be defined for this service, and/or if you do not need any non-default * behaviour. */ class LeafInterfaceStubDefault : public virtual LeafInterfaceStub { public: LeafInterfaceStubDefault(); LeafInterfaceStubRemoteEvent* initStubAdapter(const std::shared_ptr &_adapter); const CommonAPI::Version& getInterfaceVersion(std::shared_ptr _client); virtual void testLeafMethod(const std::shared_ptr _client, int32_t _inInt, std::string _inString, testLeafMethodReply_t _reply); protected: class RemoteEventHandler: public virtual LeafInterfaceStubRemoteEvent { public: RemoteEventHandler(LeafInterfaceStubDefault *_defaultStub); private: LeafInterfaceStubDefault *defaultStub_; }; private: LeafInterfaceStubDefault::RemoteEventHandler remoteEventHandler_; CommonAPI::Version interfaceVersion_; }; } // namespace managed } // namespace tests } // namespace commonapi } // namespace v1_0 #endif // COMMONAPI_TESTS_MANAGED_Leaf_Interface_STUB_DEFAULT