summaryrefslogtreecommitdiffstats
path: root/events.cpp
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2017-02-09 01:27:38 -0500
committerPatrick Williams <patrick@stwcx.xyz>2017-02-15 17:43:18 +0000
commitc1f4798d36e63842c97692ca1a36c0975da18c09 (patch)
tree8268892833c89fba16aa364ef129c91afb455105 /events.cpp
parent02ca0219c1e20f4f51eba068a9a9e272a60f7385 (diff)
downloadphosphor-inventory-manager-c1f4798d36e63842c97692ca1a36c0975da18c09.tar.gz
phosphor-inventory-manager-c1f4798d36e63842c97692ca1a36c0975da18c09.zip
Merge actions.hpp and events.hpp
Move all action/filter functors to a common functor.hpp. The intent of this refactoring is to facilitate reuse of functors in more than one context. - Moved functors from actions.hpp and events.hpp to functor.hpp. - Renamed events.cpp to functor.cpp. - Moved Action/Filter types to types.hpp. - Minor namespace shuffling. - Update pimgen to render according to the new namespaces. Change-Id: I630ec1587b8a48f6dc2eac1111365035873310d9 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'events.cpp')
-rw-r--r--events.cpp96
1 files changed, 0 insertions, 96 deletions
diff --git a/events.cpp b/events.cpp
deleted file mode 100644
index 6f5bb59..0000000
--- a/events.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * Copyright © 2017 IBM Corporation
- *
- * 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.
- */
-#include "events.hpp"
-#include <sdbusplus/bus.hpp>
-
-namespace phosphor
-{
-namespace inventory
-{
-namespace manager
-{
-namespace filters
-{
-namespace property_condition
-{
-
-bool PropertyConditionBase::operator()(
- sdbusplus::bus::bus& bus,
- sdbusplus::message::message&,
- Manager&) const
-{
- std::string host;
-
- if (_service)
- {
- host.assign(_service);
- }
- else
- {
- auto mapperCall = bus.new_method_call(
- "xyz.openbmc_project.ObjectMapper",
- "/xyz/openbmc_project/ObjectMapper",
- "xyz.openbmc_project.ObjectMapper",
- "GetObject");
- mapperCall.append(_path);
- mapperCall.append(std::vector<std::string>({_iface}));
-
- auto mapperResponseMsg = bus.call(mapperCall);
- if (mapperResponseMsg.is_method_error())
- {
- return false;
- }
-
- std::map<std::string, std::vector<std::string>> mapperResponse;
- mapperResponseMsg.read(mapperResponse);
-
- if (mapperResponse.begin() == mapperResponse.end())
- {
- return false;
- }
-
- host = mapperResponse.begin()->first;
-
- if (host == bus.get_unique_name())
- {
- // TODO I can't call myself here.
- return false;
- }
- }
- auto hostCall = bus.new_method_call(
- host.c_str(),
- _path.c_str(),
- "org.freedesktop.DBus.Properties",
- "Get");
- hostCall.append(_iface);
- hostCall.append(_property);
-
- auto hostResponseMsg = bus.call(hostCall);
- if (hostResponseMsg.is_method_error())
- {
- return false;
- }
-
- return eval(hostResponseMsg);
-}
-
-} // namespace property_condition
-} // namespace filters
-} // namespace manager
-} // namespace inventory
-} // namespace phosphor
-
-// vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
OpenPOWER on IntegriCloud