2 // Copyright (c) 2013 Samsung Electronics Co., Ltd.
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
18 * @file FSecPrivilegeInfo.h
19 * @brief This is the header file for the %PrivilegeInfo class.
21 * This header file contains the declarations of the %PrivilegeInfo class.
24 #ifndef _FSEC_PRIVILEGE_INFO_H_
25 #define _FSEC_PRIVILEGE_INFO_H_
27 #include <FBaseObject.h>
29 namespace Tizen { namespace Security
32 class _PrivilegeInfoImpl;
35 * @class PrivilegeInfo
36 * @brief This class represents the privilege information.
40 * @final This class is not intended for extension.
42 * The %PrivilegeInfo class represents the privilege information.
43 * This class provides methods to retrieve the name and description of privilege.
47 class _OSP_EXPORT_ PrivilegeInfo
48 : public Tizen::Base::Object
53 * The object is not fully constructed after this constructor is called. @n
54 * For full construction, the Construct() method must be called right after calling this constructor.
61 * This destructor overrides Tizen::Base::Object::~Object().
66 virtual ~PrivilegeInfo(void);
69 * Initializes this instance of %PrivilegeInfo with the specified parameters.
73 * @return An error code
74 * @param[in] privilegeId The privilege ID
75 * @exception E_SUCCESS The method is successful.
76 * @exception E_INVALID_ARG The specified @c privilegeId is invalid.
79 result Construct(const Tizen::Base::String& privilegeId);
82 * Gets a privilege ID.
86 * @return The privilege ID
89 Tizen::Base::String GetId(void) const;
92 * Gets the localized display name of privilege.
96 * @return The display name of privilege, @n
97 * else an empty string is returned if there is no value
100 Tizen::Base::String GetDisplayName(void) const;
103 * Gets the localized description of privilege.
107 * @return The description of privilege, @n
108 * else an empty string is returned if there is no value
111 Tizen::Base::String GetDescription(void) const;
116 // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
118 // @param[in] rhs An instance of %PrivilegeInfo
120 PrivilegeInfo(const PrivilegeInfo& rhs);
123 // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
125 // @param[in] rhs An instance of %PrivilegeInfo
127 PrivilegeInfo& operator =(const PrivilegeInfo& rhs);
131 class _PrivilegeInfoImpl * __pImpl;
132 friend class _PrivilegeInfoImpl;
136 } } // Tizen::Security::PrivilegeInfo
138 #endif // _FSEC_PRIVILEGE_INFO_H_