2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
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.
20 * @author Pawel Misiak (p.misiak@samsung.com)
27 #include "IMessagingTypes.h"
30 #include <dpl/shared_ptr.h>
32 namespace WrtDeviceApis {
35 //--------------------------------------------------------------------------
44 std::vector<std::string> m_recipients;
46 bool m_validRecipients;
52 explicit Recipients(const std::vector<std::string>& value);
54 virtual ~Recipients();
57 * information if abstract message to recipient has been changed and
58 * need update in low level
62 void setValid(bool state);
65 * setter of recipient value
67 void setRecipients(const std::vector<std::string>& value);
69 void setRecipients(const std::string& value);
71 void setRecipient(const size_t index,
72 const std::string& value);
74 void setRecipientWithExpand(const size_t index,
75 const std::string& value);
78 * getter of recipient value
80 std::vector<std::string> getRecipients() const;
82 const std::vector<std::string>& getRecipientsRef() const;
84 std::string getRecipient(const size_t index) const;
86 void appendRecipient(const std::string & value);
88 void removeRecipient(const size_t position);
90 void removeRecipient(const std::string & value);
92 size_t getRecipientSize() const;
94 bool operator !=(const Recipients& arg) const;
96 Recipients & operator +=(const Recipients& val);
98 Recipients & operator -=(const Recipients& val);
100 std::string join(char delimiter = ';') const;
104 std::vector<std::string> split(const std::string& input,
108 typedef DPL::SharedPtr<Recipients> RecipientsPtr;