d59a8e2136e60069688b6a27612c7b2d685ce6ee
[profile/ivi/genivi/genivi-audio-manager.git] / AudioManagerDaemon / src-gen / org / genivi / NodeStateManager / LifeCycleConsumerStubDefault.h
1 /*
2 * This file was generated by the CommonAPI Generators. 
3 * Used org.genivi.commonapi.core 2.1.2.201309301424.
4 * Used org.franca.core 0.8.9.201308271211.
5 *
6 * Copyright (C) 2012, BMW AG
7
8 * This file is part of GENIVI Project AudioManager.
9
10 * Contributions are licensed to the GENIVI Alliance under one or more
11 * Contribution License Agreements.
12
13 * \copyright
14 *  This Source Code Form is subject to the terms of the
15 * Mozilla Public License, v. 2.0. If a  copy of the MPL was not distributed with
16 *  this file, You can obtain one at http://mozilla.org/MPL/2.0/.
17
18
19 * \author Aleksandar Donchev, aleksander.donchev@partner.bmw.de BMW 2013
20
21 * For further information see http://www.genivi.org/.
22 */
23 /**
24  * @author Christian Linke
25  */
26 #ifndef ORG_GENIVI_NODESTATEMANAGER_Life_Cycle_Consumer_STUB_DEFAULT_H_
27 #define ORG_GENIVI_NODESTATEMANAGER_Life_Cycle_Consumer_STUB_DEFAULT_H_
28
29 #include <org/genivi/NodeStateManager/LifeCycleConsumerStub.h>
30 #include <sstream>
31
32 namespace org {
33 namespace genivi {
34 namespace NodeStateManager {
35
36 /**
37  * Provides a default implementation for LifeCycleConsumerStubRemoteEvent and
38  * LifeCycleConsumerStub. Method callbacks have an empty implementation,
39  * remote set calls on attributes will always change the value of the attribute
40  * to the one received.
41  *
42  * Override this stub if you only want to provide a subset of the functionality
43  * that would be defined for this service, and/or if you do not need any non-default
44  * behaviour.
45  */
46 class LifeCycleConsumerStubDefault : public LifeCycleConsumerStub {
47  public:
48     LifeCycleConsumerStubDefault();
49
50     LifeCycleConsumerStubRemoteEvent* initStubAdapter(const std::shared_ptr<LifeCycleConsumerStubAdapter>& stubAdapter);
51
52
53     virtual void LifecycleRequest(const std::shared_ptr<CommonAPI::ClientId> clientId, uint32_t Request, uint32_t RequestId, int32_t& ErrorCode);
54     virtual void LifecycleRequest(uint32_t Request, uint32_t RequestId, int32_t& ErrorCode);
55
56
57     
58
59  protected:
60     std::shared_ptr<LifeCycleConsumerStubAdapter> stubAdapter_;
61  private:
62     class RemoteEventHandler: public LifeCycleConsumerStubRemoteEvent {
63      public:
64         RemoteEventHandler(LifeCycleConsumerStubDefault* defaultStub);
65
66
67      private:
68         LifeCycleConsumerStubDefault* defaultStub_;
69     };
70
71     RemoteEventHandler remoteEventHandler_;
72
73 };
74
75 } // namespace NodeStateManager
76 } // namespace genivi
77 } // namespace org
78
79 #endif // ORG_GENIVI_NODESTATEMANAGER_Life_Cycle_Consumer_STUB_DEFAULT_H_