1 //******************************************************************
3 // Copyright 2014 Samsung Electronics All Rights Reserved.
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
11 // http://www.apache.org/licenses/LICENSE-2.0
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
53 typedef std::string AttributeValue;
57 * @brief This class provides information of each plugin installed.
69 * Constructor for Plugin.
78 virtual ~Plugin(void);
81 * Get unique ID of the plug-in
83 * @return unique id string of the pluin. if ID is not exist, it return ""
85 std::string getID(void);
89 * Get version of the plug-in
91 * @return version information string of the plugin. if Version is not exist, it return ""
94 std::string getVersion(void);
98 * Get name of the plug-in
100 * @return name string of the plugin. if Name is not exist, it return ""
102 std::string getName(void);
106 * Get provider name of the plug-in
108 * @return provider name of the plugin. if ProviderName is not exist, it return ""
111 std::string getProviderName(void);
115 * Get value for the attributes
117 * @param attribute attriubute string to get value
118 * @return value of the attribute. if "attribute" is not exist, it return ""
121 std::string getValueByAttribute(const std::string attribute);
125 * Set key, value. key is attribute name.
127 * @param key is atrribute name.
128 * @param value for the attribute.
132 void setValue(const std::string key, const std::string value);
136 * Check whether the plugin same or not.
139 * @return true if same, else return false
142 bool operator==(Plugin &plugin);
145 * Get supported resourc type
148 * @return vector of surported resource type
150 std::vector<std::string> getSupportedType(void);
152 * Add supported resource type for a plugin
154 * @param resource type string
158 void addSupportedType(const std::string rscType);
161 std::map<std::string, AttributeValue> m_attributeMap;
162 std::vector<std::string> m_supportedType;
168 #endif //__Plugin_H__