1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-09-17 21:45:33 +03:00

virsh: Don't open code virshEnumComplete()

Now that we have a function that generates string list for given
enum, let's use that instead of open coding it.

Note, after this there are still some 'candidates' left (e.g,
virshNetworkEventNameCompleter(), or
virshNetworkUpdateCommandCompleter()). These are not converted
because either they don't have a convenient int2str function or
they don't start from the very beginning of the enum.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Michal Privoznik
2022-03-12 05:41:56 +01:00
parent d2e8718f3a
commit 4aafdf1e1f
5 changed files with 36 additions and 147 deletions

View File

@@ -476,17 +476,10 @@ virshDomainInterfaceAddrSourceCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_DOMAIN_INTERFACE_ADDRESSES_SRC_LAST + 1); return virshEnumComplete(VIR_DOMAIN_INTERFACE_ADDRESSES_SRC_LAST,
virshDomainInterfaceAddressesSourceTypeToString);
for (i = 0; i < VIR_DOMAIN_INTERFACE_ADDRESSES_SRC_LAST; i++)
ret[i] = g_strdup(virshDomainInterfaceAddressesSourceTypeToString(i));
return ret;
} }
@@ -495,17 +488,10 @@ virshDomainInterfaceSourceModeCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIRSH_DOMAIN_INTERFACE_SOURCE_MODE_LAST + 1); return virshEnumComplete(VIRSH_DOMAIN_INTERFACE_SOURCE_MODE_LAST,
virshDomainInterfaceSourceModeTypeToString);
for (i = 0; i < VIRSH_DOMAIN_INTERFACE_SOURCE_MODE_LAST; i++)
ret[i] = g_strdup(virshDomainInterfaceSourceModeTypeToString(i));
return ret;
} }
@@ -514,17 +500,10 @@ virshDomainHostnameSourceCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIRSH_DOMAIN_HOSTNAME_SOURCE_LAST + 1); return virshEnumComplete(VIRSH_DOMAIN_HOSTNAME_SOURCE_LAST,
virshDomainHostnameSourceTypeToString);
for (i = 0; i < VIRSH_DOMAIN_HOSTNAME_SOURCE_LAST; i++)
ret[i] = g_strdup(virshDomainHostnameSourceTypeToString(i));
return ret;
} }
@@ -533,20 +512,17 @@ virshDomainPerfEnableCompleter(vshControl *ctl,
const vshCmd *cmd, const vshCmd *cmd,
unsigned int flags) unsigned int flags)
{ {
size_t i = 0;
g_auto(GStrv) events = NULL; g_auto(GStrv) events = NULL;
const char *event = NULL; const char *event = NULL;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
events = g_new0(char *, VIR_PERF_EVENT_LAST + 1);
for (i = 0; i < VIR_PERF_EVENT_LAST; i++)
events[i] = g_strdup(virPerfEventTypeToString(i));
if (vshCommandOptStringQuiet(ctl, cmd, "enable", &event) < 0) if (vshCommandOptStringQuiet(ctl, cmd, "enable", &event) < 0)
return NULL; return NULL;
events = virshEnumComplete(VIR_PERF_EVENT_LAST,
virPerfEventTypeToString);
return virshCommaStringListComplete(event, (const char **)events); return virshCommaStringListComplete(event, (const char **)events);
} }
@@ -556,20 +532,17 @@ virshDomainPerfDisableCompleter(vshControl *ctl,
const vshCmd *cmd, const vshCmd *cmd,
unsigned int flags) unsigned int flags)
{ {
size_t i = 0;
g_auto(GStrv) events = NULL; g_auto(GStrv) events = NULL;
const char *event = NULL; const char *event = NULL;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
events = g_new0(char *, VIR_PERF_EVENT_LAST + 1);
for (i = 0; i < VIR_PERF_EVENT_LAST; i++)
events[i] = g_strdup(virPerfEventTypeToString(i));
if (vshCommandOptStringQuiet(ctl, cmd, "disable", &event) < 0) if (vshCommandOptStringQuiet(ctl, cmd, "disable", &event) < 0)
return NULL; return NULL;
events = virshEnumComplete(VIR_PERF_EVENT_LAST,
virPerfEventTypeToString);
return virshCommaStringListComplete(event, (const char **)events); return virshCommaStringListComplete(event, (const char **)events);
} }
@@ -871,19 +844,10 @@ virshDomainSignalCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
g_auto(GStrv) tmp = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
tmp = g_new0(char *, VIR_DOMAIN_PROCESS_SIGNAL_LAST + 1); return virshEnumComplete(VIR_DOMAIN_PROCESS_SIGNAL_LAST,
virshDomainProcessSignalTypeToString);
for (i = 0; i < VIR_DOMAIN_PROCESS_SIGNAL_LAST; i++) {
const char *name = virshDomainProcessSignalTypeToString(i);
tmp[i] = g_strdup(name);
}
return g_steal_pointer(&tmp);
} }
@@ -892,19 +856,10 @@ virshDomainLifecycleCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
g_auto(GStrv) tmp = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
tmp = g_new0(char *, VIR_DOMAIN_LIFECYCLE_LAST + 1); return virshEnumComplete(VIR_DOMAIN_LIFECYCLE_LAST,
virshDomainLifecycleTypeToString);
for (i = 0; i < VIR_DOMAIN_LIFECYCLE_LAST; i++) {
const char *name = virshDomainLifecycleTypeToString(i);
tmp[i] = g_strdup(name);
}
return g_steal_pointer(&tmp);
} }
@@ -913,19 +868,10 @@ virshDomainLifecycleActionCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
g_auto(GStrv) tmp = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
tmp = g_new0(char *, VIR_DOMAIN_LIFECYCLE_ACTION_LAST + 1); return virshEnumComplete(VIR_DOMAIN_LIFECYCLE_ACTION_LAST,
virshDomainLifecycleActionTypeToString);
for (i = 0; i < VIR_DOMAIN_LIFECYCLE_ACTION_LAST; i++) {
const char *action = virshDomainLifecycleActionTypeToString(i);
tmp[i] = g_strdup(action);
}
return g_steal_pointer(&tmp);
} }
@@ -934,19 +880,10 @@ virshCodesetNameCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
g_auto(GStrv) tmp = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
tmp = g_new0(char *, VIR_KEYCODE_SET_LAST + 1); return virshEnumComplete(VIR_KEYCODE_SET_LAST,
virKeycodeSetTypeToString);
for (i = 0; i < VIR_KEYCODE_SET_LAST; i++) {
const char *name = virKeycodeSetTypeToString(i);
tmp[i] = g_strdup(name);
}
return g_steal_pointer(&tmp);
} }
@@ -1064,17 +1001,10 @@ virshDomainCoreDumpFormatCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_DOMAIN_CORE_DUMP_FORMAT_LAST + 1); return virshEnumComplete(VIR_DOMAIN_CORE_DUMP_FORMAT_LAST,
virshDomainCoreDumpFormatTypeToString);
for (i = 0; i < VIR_DOMAIN_CORE_DUMP_FORMAT_LAST; i++)
ret[i] = g_strdup(virshDomainCoreDumpFormatTypeToString(i));
return ret;
} }
@@ -1100,17 +1030,10 @@ virshDomainStorageFileFormatCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_STORAGE_FILE_LAST + 1); return virshEnumComplete(VIR_STORAGE_FILE_LAST,
virStorageFileFormatTypeToString);
for (i = 0; i < VIR_STORAGE_FILE_LAST; i++)
ret[i] = g_strdup(virStorageFileFormatTypeToString(i));
return ret;
} }
@@ -1119,17 +1042,10 @@ virshDomainNumatuneModeCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_DOMAIN_NUMATUNE_MEM_LAST + 1); return virshEnumComplete(VIR_DOMAIN_NUMATUNE_MEM_LAST,
virDomainNumatuneMemModeTypeToString);
for (i = 0; i < VIR_DOMAIN_NUMATUNE_MEM_LAST; i++)
ret[i] = g_strdup(virDomainNumatuneMemModeTypeToString(i));
return ret;
} }
@@ -1138,15 +1054,8 @@ virshDomainDirtyRateCalcModeCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIRSH_DOMAIN_DIRTYRATE_CALC_MODE_LAST + 1); return virshEnumComplete(VIRSH_DOMAIN_DIRTYRATE_CALC_MODE_LAST,
virshDomainDirtyRateCalcModeTypeToString);
for (i = 0; i < VIRSH_DOMAIN_DIRTYRATE_CALC_MODE_LAST; i++)
ret[i] = g_strdup(virshDomainDirtyRateCalcModeTypeToString(i));
return ret;
} }

View File

@@ -175,15 +175,8 @@ virshNodeSuspendTargetCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_NODE_SUSPEND_TARGET_LAST + 1); return virshEnumComplete(VIR_NODE_SUSPEND_TARGET_LAST,
virshNodeSuspendTargetTypeToString);
for (i = 0; i < VIR_NODE_SUSPEND_TARGET_LAST; i++)
ret[i] = g_strdup(virshNodeSuspendTargetTypeToString(i));
return ret;
} }

View File

@@ -91,17 +91,14 @@ virshNodeDeviceCapabilityNameCompleter(vshControl *ctl,
{ {
g_auto(GStrv) tmp = NULL; g_auto(GStrv) tmp = NULL;
const char *cap_str = NULL; const char *cap_str = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
if (vshCommandOptStringQuiet(ctl, cmd, "cap", &cap_str) < 0) if (vshCommandOptStringQuiet(ctl, cmd, "cap", &cap_str) < 0)
return NULL; return NULL;
tmp = g_new0(char *, VIR_NODE_DEV_CAP_LAST + 1); tmp = virshEnumComplete(VIR_NODE_DEV_CAP_LAST,
virNodeDevCapTypeToString);
for (i = 0; i < VIR_NODE_DEV_CAP_LAST; i++)
tmp[i] = g_strdup(virNodeDevCapTypeToString(i));
return virshCommaStringListComplete(cap_str, (const char **)tmp); return virshCommaStringListComplete(cap_str, (const char **)tmp);
} }

View File

@@ -94,17 +94,14 @@ virshPoolTypeCompleter(vshControl *ctl,
{ {
g_auto(GStrv) tmp = NULL; g_auto(GStrv) tmp = NULL;
const char *type_str = NULL; const char *type_str = NULL;
size_t i = 0;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
if (vshCommandOptStringQuiet(ctl, cmd, "type", &type_str) < 0) if (vshCommandOptStringQuiet(ctl, cmd, "type", &type_str) < 0)
return NULL; return NULL;
tmp = g_new0(char *, VIR_STORAGE_POOL_LAST + 1); tmp = virshEnumComplete(VIR_STORAGE_POOL_LAST,
virStoragePoolTypeToString);
for (i = 0; i < VIR_STORAGE_POOL_LAST; i++)
tmp[i] = g_strdup(virStoragePoolTypeToString(i));
return virshCommaStringListComplete(type_str, (const char **)tmp); return virshCommaStringListComplete(type_str, (const char **)tmp);
} }

View File

@@ -123,15 +123,8 @@ virshStorageVolWipeAlgorithmCompleter(vshControl *ctl G_GNUC_UNUSED,
const vshCmd *cmd G_GNUC_UNUSED, const vshCmd *cmd G_GNUC_UNUSED,
unsigned int flags) unsigned int flags)
{ {
char **ret = NULL;
size_t i;
virCheckFlags(0, NULL); virCheckFlags(0, NULL);
ret = g_new0(char *, VIR_STORAGE_VOL_WIPE_ALG_LAST + 1); return virshEnumComplete(VIR_STORAGE_VOL_WIPE_ALG_LAST,
virshStorageVolWipeAlgorithmTypeToString);
for (i = 0; i < VIR_STORAGE_VOL_WIPE_ALG_LAST; i++)
ret[i] = g_strdup(virshStorageVolWipeAlgorithmTypeToString(i));
return ret;
} }