13e5483f6Sopenharmony_ci/*
23e5483f6Sopenharmony_ci * Copyright (C) 2024 Huawei Device Co., Ltd.
33e5483f6Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
43e5483f6Sopenharmony_ci * you may not use this file except in compliance with the License.
53e5483f6Sopenharmony_ci * You may obtain a copy of the License at
63e5483f6Sopenharmony_ci *
73e5483f6Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
83e5483f6Sopenharmony_ci *
93e5483f6Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
103e5483f6Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
113e5483f6Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
123e5483f6Sopenharmony_ci * See the License for the specific language governing permissions and
133e5483f6Sopenharmony_ci * limitations under the License.
143e5483f6Sopenharmony_ci */
153e5483f6Sopenharmony_ci
163e5483f6Sopenharmony_ci#include "vibrate_metadata.h"
173e5483f6Sopenharmony_ci
183e5483f6Sopenharmony_cinamespace OHOS {
193e5483f6Sopenharmony_cinamespace Media {
203e5483f6Sopenharmony_ciusing namespace std;
213e5483f6Sopenharmony_ciVibrateMetadata::VibrateMetadata()
223e5483f6Sopenharmony_ci    : vibrateId_(VIBRATE_ID_DEFAULT),
233e5483f6Sopenharmony_ci    data_(DATA_DEFAULT),
243e5483f6Sopenharmony_ci    size_(SIZE_DEFAULT),
253e5483f6Sopenharmony_ci    displayName_(DISPLAY_NAME_DEFAULT),
263e5483f6Sopenharmony_ci    title_(TITLE_DEFAULT),
273e5483f6Sopenharmony_ci    displayLanguage_(DISPLAY_LANGUAGE_DEFAULT),
283e5483f6Sopenharmony_ci    vibrateType_(VIBRATE_TYPE_DEFAULT),
293e5483f6Sopenharmony_ci    sourceType_(SOURCE_TYPE_DEFAULT),
303e5483f6Sopenharmony_ci    dateAdded_(DATE_ADDED_DEFAULT),
313e5483f6Sopenharmony_ci    dateModified_(DATE_MODIFIED_DEFAULT),
323e5483f6Sopenharmony_ci    dateTaken_(DATE_TAKEN_DEFAULT),
333e5483f6Sopenharmony_ci    vibratePlayMode_(VIBRATE_PLAYMODE_NONE)
343e5483f6Sopenharmony_ci{
353e5483f6Sopenharmony_ci    Init();
363e5483f6Sopenharmony_ci}
373e5483f6Sopenharmony_ci
383e5483f6Sopenharmony_civoid VibrateMetadata::Init()
393e5483f6Sopenharmony_ci{
403e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_VIBRATE_ID] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT32,
413e5483f6Sopenharmony_ci        &VibrateMetadata::SetVibrateId);
423e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DATA] = make_pair(RingtoneResultSetDataType::DATA_TYPE_STRING,
433e5483f6Sopenharmony_ci        &VibrateMetadata::SetData);
443e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_SIZE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT64,
453e5483f6Sopenharmony_ci        &VibrateMetadata::SetSize);
463e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DISPLAY_NAME] = make_pair(RingtoneResultSetDataType::DATA_TYPE_STRING,
473e5483f6Sopenharmony_ci        &VibrateMetadata::SetDisplayName);
483e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_TITLE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_STRING,
493e5483f6Sopenharmony_ci        &VibrateMetadata::SetTitle);
503e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DISPLAY_LANGUAGE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_STRING,
513e5483f6Sopenharmony_ci        &VibrateMetadata::SetDisplayLanguage);
523e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_VIBRATE_TYPE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT32,
533e5483f6Sopenharmony_ci        &VibrateMetadata::SetVibrateType);
543e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_SOURCE_TYPE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT32,
553e5483f6Sopenharmony_ci        &VibrateMetadata::SetSourceType);
563e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DATE_ADDED] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT64,
573e5483f6Sopenharmony_ci        &VibrateMetadata::SetDateAdded);
583e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DATE_MODIFIED] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT64,
593e5483f6Sopenharmony_ci        &VibrateMetadata::SetDateModified);
603e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_DATE_TAKEN] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT64,
613e5483f6Sopenharmony_ci        &VibrateMetadata::SetDateTaken);
623e5483f6Sopenharmony_ci    memberFuncMap_[VIBRATE_COLUMN_PLAY_MODE] = make_pair(RingtoneResultSetDataType::DATA_TYPE_INT32,
633e5483f6Sopenharmony_ci        &VibrateMetadata::SetPlayMode);
643e5483f6Sopenharmony_ci}
653e5483f6Sopenharmony_ci
663e5483f6Sopenharmony_civoid VibrateMetadata::SetVibrateId(const VariantData &vibrateId)
673e5483f6Sopenharmony_ci{
683e5483f6Sopenharmony_ci    vibrateId_ = std::get<int32_t>(vibrateId);
693e5483f6Sopenharmony_ci}
703e5483f6Sopenharmony_ci
713e5483f6Sopenharmony_ciint32_t VibrateMetadata::GetVibrateId() const
723e5483f6Sopenharmony_ci{
733e5483f6Sopenharmony_ci    return vibrateId_;
743e5483f6Sopenharmony_ci}
753e5483f6Sopenharmony_ci
763e5483f6Sopenharmony_civoid VibrateMetadata::SetData(const VariantData &data)
773e5483f6Sopenharmony_ci{
783e5483f6Sopenharmony_ci    data_ = std::get<std::string>(data);
793e5483f6Sopenharmony_ci}
803e5483f6Sopenharmony_ci
813e5483f6Sopenharmony_ciconst std::string &VibrateMetadata::GetData() const
823e5483f6Sopenharmony_ci{
833e5483f6Sopenharmony_ci    return data_;
843e5483f6Sopenharmony_ci}
853e5483f6Sopenharmony_ci
863e5483f6Sopenharmony_civoid VibrateMetadata::SetSize(const VariantData &size)
873e5483f6Sopenharmony_ci{
883e5483f6Sopenharmony_ci    size_ = std::get<int64_t>(size);
893e5483f6Sopenharmony_ci}
903e5483f6Sopenharmony_ci
913e5483f6Sopenharmony_ciint64_t VibrateMetadata::GetSize() const
923e5483f6Sopenharmony_ci{
933e5483f6Sopenharmony_ci    return size_;
943e5483f6Sopenharmony_ci}
953e5483f6Sopenharmony_ci
963e5483f6Sopenharmony_civoid VibrateMetadata::SetDisplayName(const VariantData &displayName)
973e5483f6Sopenharmony_ci{
983e5483f6Sopenharmony_ci    displayName_ = std::get<std::string>(displayName);
993e5483f6Sopenharmony_ci}
1003e5483f6Sopenharmony_ci
1013e5483f6Sopenharmony_ciconst std::string &VibrateMetadata::GetDisplayName() const
1023e5483f6Sopenharmony_ci{
1033e5483f6Sopenharmony_ci    return displayName_;
1043e5483f6Sopenharmony_ci}
1053e5483f6Sopenharmony_ci
1063e5483f6Sopenharmony_civoid VibrateMetadata::SetTitle(const VariantData &title)
1073e5483f6Sopenharmony_ci{
1083e5483f6Sopenharmony_ci    title_ = std::get<std::string>(title);
1093e5483f6Sopenharmony_ci}
1103e5483f6Sopenharmony_ci
1113e5483f6Sopenharmony_ciconst std::string &VibrateMetadata::GetTitle() const
1123e5483f6Sopenharmony_ci{
1133e5483f6Sopenharmony_ci    return title_;
1143e5483f6Sopenharmony_ci}
1153e5483f6Sopenharmony_ci
1163e5483f6Sopenharmony_civoid VibrateMetadata::SetDisplayLanguage(const VariantData &displayLanguage)
1173e5483f6Sopenharmony_ci{
1183e5483f6Sopenharmony_ci    displayLanguage_ = std::get<std::string>(displayLanguage);
1193e5483f6Sopenharmony_ci}
1203e5483f6Sopenharmony_ci
1213e5483f6Sopenharmony_ciconst std::string &VibrateMetadata::GetDisplayLanguage() const
1223e5483f6Sopenharmony_ci{
1233e5483f6Sopenharmony_ci    return displayLanguage_;
1243e5483f6Sopenharmony_ci}
1253e5483f6Sopenharmony_ci
1263e5483f6Sopenharmony_civoid VibrateMetadata::SetVibrateType(const VariantData &vibrateType)
1273e5483f6Sopenharmony_ci{
1283e5483f6Sopenharmony_ci    vibrateType_ = std::get<int32_t>(vibrateType);
1293e5483f6Sopenharmony_ci}
1303e5483f6Sopenharmony_ci
1313e5483f6Sopenharmony_ciint32_t VibrateMetadata::GetVibrateType() const
1323e5483f6Sopenharmony_ci{
1333e5483f6Sopenharmony_ci    return vibrateType_;
1343e5483f6Sopenharmony_ci}
1353e5483f6Sopenharmony_ci
1363e5483f6Sopenharmony_civoid VibrateMetadata::SetSourceType(const VariantData &sourceType)
1373e5483f6Sopenharmony_ci{
1383e5483f6Sopenharmony_ci    sourceType_ = std::get<int32_t>(sourceType);
1393e5483f6Sopenharmony_ci}
1403e5483f6Sopenharmony_ci
1413e5483f6Sopenharmony_ciint32_t VibrateMetadata::GetSourceType() const
1423e5483f6Sopenharmony_ci{
1433e5483f6Sopenharmony_ci    return sourceType_;
1443e5483f6Sopenharmony_ci}
1453e5483f6Sopenharmony_ci
1463e5483f6Sopenharmony_civoid VibrateMetadata::SetDateAdded(const VariantData &dateAdded)
1473e5483f6Sopenharmony_ci{
1483e5483f6Sopenharmony_ci    dateAdded_ = std::get<int64_t>(dateAdded);
1493e5483f6Sopenharmony_ci}
1503e5483f6Sopenharmony_ci
1513e5483f6Sopenharmony_ciint64_t VibrateMetadata::GetDateAdded() const
1523e5483f6Sopenharmony_ci{
1533e5483f6Sopenharmony_ci    return dateAdded_;
1543e5483f6Sopenharmony_ci}
1553e5483f6Sopenharmony_ci
1563e5483f6Sopenharmony_civoid VibrateMetadata::SetDateModified(const VariantData &dateModified)
1573e5483f6Sopenharmony_ci{
1583e5483f6Sopenharmony_ci    dateModified_ = std::get<int64_t>(dateModified);
1593e5483f6Sopenharmony_ci}
1603e5483f6Sopenharmony_ci
1613e5483f6Sopenharmony_ciint64_t VibrateMetadata::GetDateModified() const
1623e5483f6Sopenharmony_ci{
1633e5483f6Sopenharmony_ci    return dateModified_;
1643e5483f6Sopenharmony_ci}
1653e5483f6Sopenharmony_ci
1663e5483f6Sopenharmony_civoid VibrateMetadata::SetDateTaken(const VariantData &dateTaken)
1673e5483f6Sopenharmony_ci{
1683e5483f6Sopenharmony_ci    dateTaken_ = std::get<int64_t>(dateTaken);
1693e5483f6Sopenharmony_ci}
1703e5483f6Sopenharmony_ci
1713e5483f6Sopenharmony_ciint64_t VibrateMetadata::GetDateTaken() const
1723e5483f6Sopenharmony_ci{
1733e5483f6Sopenharmony_ci    return dateTaken_;
1743e5483f6Sopenharmony_ci}
1753e5483f6Sopenharmony_ci
1763e5483f6Sopenharmony_civoid VibrateMetadata::SetPlayMode(const VariantData &playMode)
1773e5483f6Sopenharmony_ci{
1783e5483f6Sopenharmony_ci    vibratePlayMode_ = std::get<int32_t>(playMode);
1793e5483f6Sopenharmony_ci}
1803e5483f6Sopenharmony_ci
1813e5483f6Sopenharmony_ciint32_t VibrateMetadata::GetPlayMode() const
1823e5483f6Sopenharmony_ci{
1833e5483f6Sopenharmony_ci    return vibratePlayMode_;
1843e5483f6Sopenharmony_ci}
1853e5483f6Sopenharmony_ci
1863e5483f6Sopenharmony_cistring VibrateMetadata::ToString() const
1873e5483f6Sopenharmony_ci{
1883e5483f6Sopenharmony_ci    string str = "vibrate metadata:{ vibrateId_=" + to_string(vibrateId_) +
1893e5483f6Sopenharmony_ci                "; data_=" + data_ +
1903e5483f6Sopenharmony_ci                "; size_=" + to_string(size_) +
1913e5483f6Sopenharmony_ci                "; displayName_=" + displayName_ +
1923e5483f6Sopenharmony_ci                "; title_=" + title_ +
1933e5483f6Sopenharmony_ci                "; displayLanguage_=" + displayLanguage_ +
1943e5483f6Sopenharmony_ci                "; vibrateType_=" + to_string(vibrateType_) +
1953e5483f6Sopenharmony_ci                "; sourceType_=" + to_string(sourceType_) +
1963e5483f6Sopenharmony_ci                "; dateAdded_=" + to_string(dateAdded_) +
1973e5483f6Sopenharmony_ci                "; dateModified_=" + to_string(dateModified_) +
1983e5483f6Sopenharmony_ci                "; dateTaken_=" + to_string(dateTaken_) + "}";
1993e5483f6Sopenharmony_ci    return str;
2003e5483f6Sopenharmony_ci}
2013e5483f6Sopenharmony_ci} // namespace Media
2023e5483f6Sopenharmony_ci} // namespace OHOS
203