diff options
Diffstat (limited to 'libweaved/command.h')
-rw-r--r-- | libweaved/command.h | 56 |
1 files changed, 27 insertions, 29 deletions
diff --git a/libweaved/command.h b/libweaved/command.h index a8332e5..2b69266 100644 --- a/libweaved/command.h +++ b/libweaved/command.h @@ -1,18 +1,16 @@ -/* - * Copyright 2015 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// Copyright 2015 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. #ifndef LIBWEAVED_COMMAND_H_ #define LIBWEAVED_COMMAND_H_ @@ -23,19 +21,17 @@ #include <brillo/errors/error.h> #include <brillo/variant_dictionary.h> #include <libweaved/export.h> +#include <utils/StrongPointer.h> -namespace com { namespace android { -namespace Weave { -class CommandProxyInterface; -} // namespace Weave +namespace weave { +class IWeaveCommand; +} // namespace weave } // namespace android -} // namespace com - namespace weaved { -class Device; +class ServiceImpl; namespace detail { @@ -76,14 +72,16 @@ class LIBWEAVED_EXPORT Command final { enum class Origin { kLocal, kCloud }; + ~Command(); + // Returns the full command ID. - const std::string& GetID() const; + std::string GetID() const; // Returns the full name of the command. - const std::string& GetName() const; + std::string GetName() const; // Returns the name of the component this command was sent to. - const std::string& GetComponent() const; + std::string GetComponent() const; // Returns the command state. Command::State GetState() const; @@ -92,7 +90,7 @@ class LIBWEAVED_EXPORT Command final { Command::Origin GetOrigin() const; // Returns the command parameters. - const brillo::VariantDictionary& GetParameters() const; + brillo::VariantDictionary GetParameters() const; // Helper function to get a command parameter of particular type T from the // command parameter list. Returns default value for type T (e.g. 0 for int or @@ -130,11 +128,11 @@ class LIBWEAVED_EXPORT Command final { bool Cancel(brillo::ErrorPtr* error); protected: - Command(com::android::Weave::CommandProxyInterface* proxy); + explicit Command(const android::sp<android::weave::IWeaveCommand>& proxy); private: - friend class Device; - com::android::Weave::CommandProxyInterface* proxy_{nullptr}; + friend class ServiceImpl; + android::sp<android::weave::IWeaveCommand> binder_proxy_; DISALLOW_COPY_AND_ASSIGN(Command); }; |