1 /*
2  * Copyright (C) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 #define MLOG_TAG "VibrateAsset"
16 
17 #include "vibrate_asset.h"
18 
19 #include "ringtone_db_const.h"
20 #include "ringtone_errno.h"
21 #include "ringtone_log.h"
22 #include "ringtone_type.h"
23 #include "vibrate_type.h"
24 
25 namespace OHOS {
26 namespace Media {
27 using namespace std;
28 
VibrateAsset()29 VibrateAsset::VibrateAsset()
30 {
31 }
32 
GetId() const33 int32_t VibrateAsset::GetId() const
34 {
35     return GetInt32Member(VIBRATE_COLUMN_VIBRATE_ID);
36 }
37 
SetId(int32_t id)38 void VibrateAsset::SetId(int32_t id)
39 {
40     member_[VIBRATE_COLUMN_VIBRATE_ID] = id;
41 }
42 
GetSize() const43 int64_t VibrateAsset::GetSize() const
44 {
45     return GetInt64Member(VIBRATE_COLUMN_SIZE);
46 }
47 
SetSize(int64_t size)48 void VibrateAsset::SetSize(int64_t size)
49 {
50     member_[VIBRATE_COLUMN_SIZE] = size;
51 }
52 
GetPath() const53 const string &VibrateAsset::GetPath() const
54 {
55     return GetStrMember(VIBRATE_COLUMN_DATA);
56 }
57 
SetPath(const string & path)58 void VibrateAsset::SetPath(const string &path)
59 {
60     member_[VIBRATE_COLUMN_DATA] = path;
61 }
62 
GetDisplayName() const63 const string &VibrateAsset::GetDisplayName() const
64 {
65     return GetStrMember(VIBRATE_COLUMN_DISPLAY_NAME);
66 }
67 
SetDisplayName(const string & displayName)68 void VibrateAsset::SetDisplayName(const string &displayName)
69 {
70     member_[VIBRATE_COLUMN_DISPLAY_NAME] = displayName;
71 }
72 
GetTitle() const73 const string &VibrateAsset::GetTitle() const
74 {
75     return GetStrMember(VIBRATE_COLUMN_TITLE);
76 }
77 
SetTitle(const string & title)78 void VibrateAsset::SetTitle(const string &title)
79 {
80     member_[VIBRATE_COLUMN_TITLE] = title;
81 }
82 
GetDisplayLanguage() const83 const std::string &VibrateAsset::GetDisplayLanguage() const
84 {
85     return GetStrMember(VIBRATE_COLUMN_DISPLAY_LANGUAGE);
86 }
87 
SetDisplayLanguage(const std::string & displayLanguage)88 void VibrateAsset::SetDisplayLanguage(const std::string &displayLanguage)
89 {
90     member_[VIBRATE_COLUMN_DISPLAY_LANGUAGE] = displayLanguage;
91 }
92 
GetVibrateType() const93 int32_t VibrateAsset::GetVibrateType() const
94 {
95     return GetInt32Member(VIBRATE_COLUMN_VIBRATE_TYPE);
96 }
97 
SetVibrateType(int32_t type)98 void VibrateAsset::SetVibrateType(int32_t type)
99 {
100     member_[VIBRATE_COLUMN_VIBRATE_TYPE] = type;
101 }
102 
GetSourceType() const103 int32_t VibrateAsset::GetSourceType() const
104 {
105     return GetInt32Member(VIBRATE_COLUMN_SOURCE_TYPE);
106 }
107 
SetSourceType(int32_t type)108 void VibrateAsset::SetSourceType(int32_t type)
109 {
110     member_[VIBRATE_COLUMN_SOURCE_TYPE] = type;
111 }
112 
GetDateAdded() const113 int64_t VibrateAsset::GetDateAdded() const
114 {
115     return GetInt64Member(VIBRATE_COLUMN_DATE_ADDED);
116 }
117 
SetDateAdded(int64_t dateAdded)118 void VibrateAsset::SetDateAdded(int64_t dateAdded)
119 {
120     member_[VIBRATE_COLUMN_DATE_ADDED] = dateAdded;
121 }
122 
GetDateModified() const123 int64_t VibrateAsset::GetDateModified() const
124 {
125     return GetInt64Member(VIBRATE_COLUMN_DATE_MODIFIED);
126 }
127 
SetDateModified(int64_t dateModified)128 void VibrateAsset::SetDateModified(int64_t dateModified)
129 {
130     member_[VIBRATE_COLUMN_DATE_MODIFIED] = dateModified;
131 }
132 
GetDateTaken() const133 int64_t VibrateAsset::GetDateTaken() const
134 {
135     return GetInt64Member(VIBRATE_COLUMN_DATE_TAKEN);
136 }
137 
SetDateTaken(int64_t dataTaken)138 void VibrateAsset::SetDateTaken(int64_t dataTaken)
139 {
140     member_[VIBRATE_COLUMN_DATE_TAKEN] = dataTaken;
141 }
142 
GetPlayMode() const143 int32_t VibrateAsset::GetPlayMode() const
144 {
145     return GetInt32Member(VIBRATE_COLUMN_PLAY_MODE);
146 }
147 
SetPlayMode(int32_t playMode)148 void VibrateAsset::SetPlayMode(int32_t playMode)
149 {
150     member_[VIBRATE_COLUMN_PLAY_MODE] = playMode;
151 }
152 
GetMemberMap()153 unordered_map<string, variant<int32_t, int64_t, string, double>> &VibrateAsset::GetMemberMap()
154 {
155     return member_;
156 }
157 
GetMemberValue(const string & name)158 variant<int32_t, int64_t, string, double> &VibrateAsset::GetMemberValue(const string &name)
159 {
160     return member_[name];
161 }
162 
GetStrMember(const string & name) const163 const string &VibrateAsset::GetStrMember(const string &name) const
164 {
165     return (member_.count(name) > 0) ? get<string>(member_.at(name)) : RINGTONE_DEFAULT_STR;
166 }
167 
GetInt32Member(const string & name) const168 int32_t VibrateAsset::GetInt32Member(const string &name) const
169 {
170     return (member_.count(name) > 0) ? get<int32_t>(member_.at(name)) : RINGTONE_DEFAULT_INT32;
171 }
172 
GetInt64Member(const string & name) const173 int64_t VibrateAsset::GetInt64Member(const string &name) const
174 {
175     return (member_.count(name) > 0) ? get<int64_t>(member_.at(name)) : RINGTONE_DEFAULT_INT64;
176 }
177 } // namespace Media
178 } // namespace OHOS
179