2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
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
9 // http://www.apache.org/licenses/LICENSE-2.0
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.
18 * @file FScl_EmailContactImpl.h
19 * @brief This is the header file for the %_EmailContactImpl class.
21 * This header file contains the declarations of the %_EmailContactImpl class.
23 #ifndef _FSCL_INTERNAL_EMAIL_CONTACT_IMPL_H_
24 #define _FSCL_INTERNAL_EMAIL_CONTACT_IMPL_H_
26 #include <FBaseObject.h>
27 #include <FBaseString.h>
28 #include <FSclTypes.h>
29 #include <FSclEmail.h>
31 namespace Tizen { namespace Social
37 * @class _EmailContactImpl
38 * @brief This class provides summarized contact information.
43 class _EmailContactImpl
44 : public Tizen::Base::Object
48 * This is default constructor for the class.
52 _EmailContactImpl(void);
55 * Copying of objects using this copy constructor is allowed.
59 _EmailContactImpl(const _EmailContactImpl& rhs);
62 * This destructor overrides Tizen::Base::Object::~Object().
66 virtual ~_EmailContactImpl(void);
68 virtual bool Equals(const Tizen::Base::Object& rhs) const;
70 virtual int GetHashCode(void) const;
72 RecordId GetContactId(void) const;
74 PersonId GetPersonId(void) const;
76 Tizen::Base::String GetDisplayName(void) const;
78 Tizen::Base::String GetThumbnailPath(void) const;
80 Tizen::Base::String GetRingtonePath(void) const;
82 Email GetEmail(void) const;
84 void SetPersonId(PersonId personId);
86 void SetAddressbookId(AddressbookId addressbookId);
88 AddressbookId GetAddressbookId(void) const;
90 void SetContactId(RecordId contactId);
92 void SetDisplayName(const Tizen::Base::String& displayName);
94 void SetThumbnailPath(const Tizen::Base::String& thumbnail);
96 void SetRingtonePath(const Tizen::Base::String& ringtone);
98 void SetEmailData(int recordId, EmailType type, const Tizen::Base::String& label, const Tizen::Base::String& email);
100 static _EmailContactImpl* GetInstance(EmailContact& simpleContact);
102 static const _EmailContactImpl* GetInstance(const EmailContact& simpleContact);
104 _EmailContactImpl& operator =(const _EmailContactImpl& rhs);
106 bool operator ==(const _EmailContactImpl& rhs) const;
109 AddressbookId __addressbookId;
110 RecordId __contactId;
112 Tizen::Base::String __displayName;
113 Tizen::Base::String __thumbnail;
114 Tizen::Base::String __ringtone;
116 }; // _EmailContactImpl
120 #endif // _FSCL_INTERNAL_EMAIL_CONTACT_IMPL_H_