aboutsummaryrefslogtreecommitdiff
path: root/src/zen/cmds/hub_cmd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/zen/cmds/hub_cmd.cpp')
-rw-r--r--src/zen/cmds/hub_cmd.cpp43
1 files changed, 12 insertions, 31 deletions
diff --git a/src/zen/cmds/hub_cmd.cpp b/src/zen/cmds/hub_cmd.cpp
index 5bdd3a922..75408a5e9 100644
--- a/src/zen/cmds/hub_cmd.cpp
+++ b/src/zen/cmds/hub_cmd.cpp
@@ -2,6 +2,8 @@
#include "hub_cmd.h"
+#include "zenserviceclient.h"
+
#include <zencore/compactbinary.h>
#include <zencore/compactbinaryutil.h>
#include <zencore/filesystem.h>
@@ -210,17 +212,13 @@ HubProvisionSubCmd::Run(const ZenCliOptions& GlobalOptions)
{
ZEN_UNUSED(GlobalOptions);
- m_HostName = ZenCmdBase::ResolveTargetHostSpec(m_HostName);
- if (m_HostName.empty())
- {
- throw OptionParseException("Unable to resolve hub host specification", SubOptions().help());
- }
if (m_ModuleId.empty())
{
throw OptionParseException("moduleid is required", SubOptions().help());
}
- HttpClient Http = ZenCmdBase::CreateHttpClient(m_HostName);
+ ZenServiceClient Service({.HostSpec = m_HostName, .CommandName = HubCommand::Name});
+ HttpClient& Http = Service.Http();
if (HttpClient::Response Resp =
Http.Post(fmt::format("/hub/modules/{}/provision", m_ModuleId), HttpClient::KeyValueMap{}, HttpClient::KeyValueMap{}))
{
@@ -251,17 +249,13 @@ HubDeprovisionSubCmd::Run(const ZenCliOptions& GlobalOptions)
{
ZEN_UNUSED(GlobalOptions);
- m_HostName = ZenCmdBase::ResolveTargetHostSpec(m_HostName);
- if (m_HostName.empty())
- {
- throw OptionParseException("Unable to resolve hub host specification", SubOptions().help());
- }
if (m_ModuleId.empty())
{
throw OptionParseException("moduleid is required", SubOptions().help());
}
- HttpClient Http = ZenCmdBase::CreateHttpClient(m_HostName);
+ ZenServiceClient Service({.HostSpec = m_HostName, .CommandName = HubCommand::Name});
+ HttpClient& Http = Service.Http();
if (HttpClient::Response Resp =
Http.Post(fmt::format("/hub/modules/{}/deprovision", m_ModuleId), HttpClient::KeyValueMap{}, HttpClient::KeyValueMap{}))
{
@@ -290,17 +284,13 @@ HubHibernateSubCmd::Run(const ZenCliOptions& GlobalOptions)
{
ZEN_UNUSED(GlobalOptions);
- m_HostName = ZenCmdBase::ResolveTargetHostSpec(m_HostName);
- if (m_HostName.empty())
- {
- throw OptionParseException("Unable to resolve hub host specification", SubOptions().help());
- }
if (m_ModuleId.empty())
{
throw OptionParseException("moduleid is required", SubOptions().help());
}
- HttpClient Http = ZenCmdBase::CreateHttpClient(m_HostName);
+ ZenServiceClient Service({.HostSpec = m_HostName, .CommandName = HubCommand::Name});
+ HttpClient& Http = Service.Http();
if (HttpClient::Response Resp =
Http.Post(fmt::format("/hub/modules/{}/hibernate", m_ModuleId), HttpClient::KeyValueMap{}, HttpClient::KeyValueMap{}))
{
@@ -329,17 +319,13 @@ HubWakeSubCmd::Run(const ZenCliOptions& GlobalOptions)
{
ZEN_UNUSED(GlobalOptions);
- m_HostName = ZenCmdBase::ResolveTargetHostSpec(m_HostName);
- if (m_HostName.empty())
- {
- throw OptionParseException("Unable to resolve hub host specification", SubOptions().help());
- }
if (m_ModuleId.empty())
{
throw OptionParseException("moduleid is required", SubOptions().help());
}
- HttpClient Http = ZenCmdBase::CreateHttpClient(m_HostName);
+ ZenServiceClient Service({.HostSpec = m_HostName, .CommandName = HubCommand::Name});
+ HttpClient& Http = Service.Http();
if (HttpClient::Response Resp =
Http.Post(fmt::format("/hub/modules/{}/wake", m_ModuleId), HttpClient::KeyValueMap{}, HttpClient::KeyValueMap{}))
{
@@ -369,13 +355,8 @@ HubStatusSubCmd::Run(const ZenCliOptions& GlobalOptions)
{
ZEN_UNUSED(GlobalOptions);
- m_HostName = ZenCmdBase::ResolveTargetHostSpec(m_HostName);
- if (m_HostName.empty())
- {
- throw OptionParseException("Unable to resolve hub host specification", SubOptions().help());
- }
-
- HttpClient Http = ZenCmdBase::CreateHttpClient(m_HostName);
+ ZenServiceClient Service({.HostSpec = m_HostName, .CommandName = HubCommand::Name});
+ HttpClient& Http = Service.Http();
if (!m_ModuleId.empty())
{