Fix code for TDIS-5396
[framework/osp/social.git] / src / FScl_OrganizationImpl.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17 /**
18  * @file        FScl_OrganizationImpl.h
19  * @brief       This is the header file for the %_OrganizationImpl class.
20  *
21  * This header file contains the declarations of the %_OrganizationImpl class.
22  */
23 #ifndef _FSCL_INTERNAL_ORGANIZATION_IMPL_H_
24 #define _FSCL_INTERNAL_ORGANIZATION_IMPL_H_
25
26 #include <FBaseResult.h>
27 #include <FBaseObject.h>
28 #include <FBaseString.h>
29 #include <FSclTypes.h>
30
31 namespace Tizen { namespace Social
32 {
33
34 class Organization;
35
36 class _OSP_EXPORT_ _OrganizationImpl
37         : public Tizen::Base::Object
38 {
39 public:
40         _OrganizationImpl(void);
41
42         _OrganizationImpl(const _OrganizationImpl& rhs);
43
44         virtual ~_OrganizationImpl(void);
45
46         virtual bool Equals(const Tizen::Base::Object& rhs) const;
47
48         virtual int GetHashCode(void) const;
49
50         Tizen::Base::String GetName(void) const;
51
52         Tizen::Base::String GetJobTitle(void) const;
53
54         Tizen::Base::String GetDepartment(void) const;
55
56         Tizen::Base::String GetRole(void) const;
57
58         Tizen::Base::String GetAgent(void) const;
59
60         OrganizationType GetType(void) const;
61
62         Tizen::Base::String GetLabel(void) const;
63
64         Tizen::Base::String GetLocation(void) const;
65
66         Tizen::Base::String GetDescription(void) const;
67
68         Tizen::Base::String GetPhoneticName(void) const;
69
70         Tizen::Base::String GetLogoPath(void) const;
71
72         void SetName(const Tizen::Base::String& name);
73
74         void SetJobTitle(const Tizen::Base::String& jobTitle);
75
76         void SetDepartment(const Tizen::Base::String& department);
77
78         void SetRole(const Tizen::Base::String& role);
79
80         void SetAgent(const Tizen::Base::String& agent);
81
82         void SetType(OrganizationType type);
83
84         void SetLabel(const Tizen::Base::String& label);
85
86         void SetLocation(const Tizen::Base::String& location);
87
88         void SetDescription(const Tizen::Base::String& description);
89
90         void SetPhoneticName(const Tizen::Base::String& phoneticName);
91
92         result SetLogo(const Tizen::Base::String& filePath);
93
94         _OrganizationImpl& operator =(const _OrganizationImpl& rhs);
95
96         bool IsEmpty(void) const;
97
98         bool IsLogoPathChanged(void) const;
99
100         result SetLogoPath(const Tizen::Base::String& filePath);
101
102         bool operator ==(const _OrganizationImpl& rhs) const;
103
104         bool operator !=(const _OrganizationImpl& rhs) const;
105
106         static const _OrganizationImpl* GetInstance(const Organization& organization);
107
108         static _OrganizationImpl* GetInstance(Organization& organization);
109
110 private:
111         Tizen::Base::String __name;
112         Tizen::Base::String __jobTitle;
113         Tizen::Base::String __department;
114         Tizen::Base::String __role;
115         Tizen::Base::String __agent;
116         Tizen::Base::String __label;
117         Tizen::Base::String __location;
118         Tizen::Base::String __description;
119         Tizen::Base::String __phoneticName;
120         Tizen::Base::String __logoPath;
121         OrganizationType __type;
122         bool __isLogoPathChanged;
123 }; // _OrganizationImpl
124
125 }} // Tizen::Social
126
127 #endif //_FSCL_INTERNAL_ORGANIZATION_IMPL_H_