15ccb8f90Sopenharmony_ci/*
25ccb8f90Sopenharmony_ci * Copyright (c) 2022 Huawei Device Co., Ltd.
35ccb8f90Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
45ccb8f90Sopenharmony_ci * you may not use this file except in compliance with the License.
55ccb8f90Sopenharmony_ci * You may obtain a copy of the License at
65ccb8f90Sopenharmony_ci *
75ccb8f90Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
85ccb8f90Sopenharmony_ci *
95ccb8f90Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
105ccb8f90Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
115ccb8f90Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
125ccb8f90Sopenharmony_ci * See the License for the specific language governing permissions and
135ccb8f90Sopenharmony_ci * limitations under the License.
145ccb8f90Sopenharmony_ci */
155ccb8f90Sopenharmony_ci
165ccb8f90Sopenharmony_ci#include "setting_observer.h"
175ccb8f90Sopenharmony_ci
185ccb8f90Sopenharmony_cinamespace OHOS {
195ccb8f90Sopenharmony_cinamespace PowerMgr {
205ccb8f90Sopenharmony_ciSettingObserver::SettingObserver() = default;
215ccb8f90Sopenharmony_ciSettingObserver::~SettingObserver() = default;
225ccb8f90Sopenharmony_ci
235ccb8f90Sopenharmony_civoid SettingObserver::OnChange()
245ccb8f90Sopenharmony_ci{
255ccb8f90Sopenharmony_ci    if (update_) {
265ccb8f90Sopenharmony_ci        update_(key_);
275ccb8f90Sopenharmony_ci    }
285ccb8f90Sopenharmony_ci}
295ccb8f90Sopenharmony_ci
305ccb8f90Sopenharmony_civoid SettingObserver::SetKey(const std::string& key)
315ccb8f90Sopenharmony_ci{
325ccb8f90Sopenharmony_ci    key_ = key;
335ccb8f90Sopenharmony_ci}
345ccb8f90Sopenharmony_ci
355ccb8f90Sopenharmony_ciconst std::string& SettingObserver::GetKey()
365ccb8f90Sopenharmony_ci{
375ccb8f90Sopenharmony_ci    return key_;
385ccb8f90Sopenharmony_ci}
395ccb8f90Sopenharmony_ci
405ccb8f90Sopenharmony_civoid SettingObserver::SetUpdateFunc(UpdateFunc& func)
415ccb8f90Sopenharmony_ci{
425ccb8f90Sopenharmony_ci    update_ = func;
435ccb8f90Sopenharmony_ci}
445ccb8f90Sopenharmony_ci} // OHOS
455ccb8f90Sopenharmony_ci} // PowerMgr