From 2c18556135b6e89cd5f3ef0e17a57dae96e278ae Mon Sep 17 00:00:00 2001
From: Frank Winklmeier <fwinkl@cern>
Date: Mon, 14 Sep 2020 19:29:53 +0200
Subject: [PATCH] RecAlgs: Migrate JobOptsDumperAlg to IOptionsSvc

---
 .../RecAlgs/src/JobOptsDumperAlg.cxx           | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/Reconstruction/RecAlgs/src/JobOptsDumperAlg.cxx b/Reconstruction/RecAlgs/src/JobOptsDumperAlg.cxx
index 1aa63d94971f..4229a18e4a97 100755
--- a/Reconstruction/RecAlgs/src/JobOptsDumperAlg.cxx
+++ b/Reconstruction/RecAlgs/src/JobOptsDumperAlg.cxx
@@ -2,7 +2,8 @@
   Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
 */
 
-#include "GaudiKernel/IJobOptionsSvc.h"
+#include "Gaudi/Interfaces/IOptionsSvc.h"
+#include "GaudiKernel/ServiceHandle.h"
 
 #include "JobOptsDumperAlg.h"
 #include <fstream>
@@ -15,17 +16,14 @@ StatusCode JobOptsDumperAlg::initialize() {
       return StatusCode::FAILURE;
   }
 
-
-  IJobOptionsSvc* p_jobOptionSvc;
-  ATH_CHECK(service("JobOptionsSvc", p_jobOptionSvc));
+  ServiceHandle<Gaudi::Interfaces::IOptionsSvc> joSvc("JobOptionsSvc", name());
+  ATH_CHECK(joSvc.retrieve());
 
   std::vector<std::string> options;
-  for (const std::string& compName :  p_jobOptionSvc->getClients()) {
-    for (const auto& props:  *p_jobOptionSvc->getProperties(compName)) {
-      std::ostringstream os;
-      os << compName << "." << props->name() << " = " << props->toString() << std::endl;
-      options.emplace_back(os.str());
-    }
+  for (const auto& [name, value] : joSvc->items()) {
+    std::ostringstream os;
+    os << name << " = " << value << std::endl;
+    options.emplace_back(os.str());
   }
 
   std::sort(options.begin(), options.end()); 
-- 
GitLab