2 * Copyright (c) 2019 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.
17 #ifndef NOTIFICATION_EX_ITEM_INFO_INTERNAL_H_
18 #define NOTIFICATION_EX_ITEM_INFO_INTERNAL_H_
20 #include "notification-ex/abstract_item_implementation.h"
21 #include "notification-ex/iitem_info_internal.h"
23 namespace notification {
26 class AbstractItem::Impl::ItemInfo : public IItemInfoInternal {
28 ItemInfo(AbstractItem::Impl* impl);
29 virtual ~ItemInfo() = default;
30 int GetUid() const override;
31 void SetUid(int uid) override;
32 time_t GetTime() const override;
33 void SetTime(time_t time) override;
34 int GetVersion() const override;
35 void SetVersion(int ver) override;
36 void SetHideTime(int hide_time) override;
37 int GetHideTime() const override;
38 void SetDeleteTime(int delete_time) override;
39 int GetDeleteTime() const override;
40 void AddHideViewer(std::string appid) override;
41 std::list<std::string> GetHideViewerList() const override;
44 AbstractItem::Impl* impl_;
48 } // namespace notification
49 #endif // NOTIFICATION_EX_ITEM_INFO_INTERNAL_H_