From af7a68fa8a6658931cc4640c519a9d1aebf834cc Mon Sep 17 00:00:00 2001 From: Matej Vasek Date: Sun, 21 Feb 2021 19:33:05 +0100 Subject: [NO TESTS NEEDED] Make binding util internal The functions are supposed to be called only from generated code Signed-off-by: Matej Vasek --- pkg/bindings/containers/types_attach_options.go | 2 +- .../containers/types_checkpoint_options.go | 2 +- pkg/bindings/containers/types_commit_options.go | 2 +- pkg/bindings/containers/types_create_options.go | 2 +- pkg/bindings/containers/types_diff_options.go | 2 +- .../containers/types_execinspect_options.go | 2 +- pkg/bindings/containers/types_execstart_options.go | 2 +- .../containers/types_execstartandattach_options.go | 2 +- pkg/bindings/containers/types_exists_options.go | 2 +- pkg/bindings/containers/types_export_options.go | 2 +- .../containers/types_healthcheck_options.go | 2 +- pkg/bindings/containers/types_init_options.go | 2 +- pkg/bindings/containers/types_inspect_options.go | 2 +- pkg/bindings/containers/types_kill_options.go | 2 +- pkg/bindings/containers/types_list_options.go | 2 +- pkg/bindings/containers/types_log_options.go | 2 +- pkg/bindings/containers/types_mount_options.go | 2 +- .../types_mountedcontainerpaths_options.go | 2 +- pkg/bindings/containers/types_pause_options.go | 2 +- pkg/bindings/containers/types_prune_options.go | 2 +- pkg/bindings/containers/types_remove_options.go | 2 +- pkg/bindings/containers/types_rename_options.go | 2 +- .../containers/types_resizeexectty_options.go | 2 +- pkg/bindings/containers/types_resizetty_options.go | 2 +- pkg/bindings/containers/types_restart_options.go | 2 +- pkg/bindings/containers/types_restore_options.go | 2 +- .../containers/types_shouldrestart_options.go | 2 +- pkg/bindings/containers/types_start_options.go | 2 +- pkg/bindings/containers/types_stats_options.go | 2 +- pkg/bindings/containers/types_stop_options.go | 2 +- pkg/bindings/containers/types_top_options.go | 2 +- pkg/bindings/containers/types_unmount_options.go | 2 +- pkg/bindings/containers/types_unpause_options.go | 2 +- pkg/bindings/containers/types_wait_options.go | 2 +- pkg/bindings/generate/types_kube_options.go | 2 +- pkg/bindings/generate/types_systemd_options.go | 2 +- pkg/bindings/generator/generator.go | 2 +- pkg/bindings/images/types_diff_options.go | 2 +- pkg/bindings/images/types_exists_options.go | 2 +- pkg/bindings/images/types_export_options.go | 2 +- pkg/bindings/images/types_get_options.go | 2 +- pkg/bindings/images/types_history_options.go | 2 +- pkg/bindings/images/types_import_options.go | 2 +- pkg/bindings/images/types_list_options.go | 2 +- pkg/bindings/images/types_load_options.go | 2 +- pkg/bindings/images/types_prune_options.go | 2 +- pkg/bindings/images/types_pull_options.go | 2 +- pkg/bindings/images/types_push_options.go | 2 +- pkg/bindings/images/types_remove_options.go | 2 +- pkg/bindings/images/types_search_options.go | 2 +- pkg/bindings/images/types_tag_options.go | 2 +- pkg/bindings/images/types_tree_options.go | 2 +- pkg/bindings/images/types_untag_options.go | 2 +- pkg/bindings/internal/util/util.go | 102 +++++++++++++++++++++ pkg/bindings/manifests/types_add_options.go | 2 +- pkg/bindings/manifests/types_create_options.go | 2 +- pkg/bindings/manifests/types_exists_options.go | 2 +- pkg/bindings/manifests/types_inspect_options.go | 2 +- pkg/bindings/manifests/types_remove_options.go | 2 +- pkg/bindings/network/types_connect_options.go | 2 +- pkg/bindings/network/types_create_options.go | 2 +- pkg/bindings/network/types_disconnect_options.go | 2 +- pkg/bindings/network/types_exists_options.go | 2 +- pkg/bindings/network/types_inspect_options.go | 2 +- pkg/bindings/network/types_list_options.go | 2 +- pkg/bindings/network/types_prune_options.go | 2 +- pkg/bindings/network/types_remove_options.go | 2 +- pkg/bindings/play/types_kube_options.go | 2 +- pkg/bindings/pods/types_create_options.go | 2 +- pkg/bindings/pods/types_exists_options.go | 2 +- pkg/bindings/pods/types_inspect_options.go | 2 +- pkg/bindings/pods/types_kill_options.go | 2 +- pkg/bindings/pods/types_list_options.go | 2 +- pkg/bindings/pods/types_pause_options.go | 2 +- pkg/bindings/pods/types_prune_options.go | 2 +- pkg/bindings/pods/types_remove_options.go | 2 +- pkg/bindings/pods/types_restart_options.go | 2 +- pkg/bindings/pods/types_start_options.go | 2 +- pkg/bindings/pods/types_stats_options.go | 2 +- pkg/bindings/pods/types_stop_options.go | 2 +- pkg/bindings/pods/types_top_options.go | 2 +- pkg/bindings/pods/types_unpause_options.go | 2 +- pkg/bindings/secrets/types_create_options.go | 2 +- pkg/bindings/secrets/types_inspect_options.go | 2 +- pkg/bindings/secrets/types_list_options.go | 2 +- pkg/bindings/secrets/types_remove_options.go | 2 +- pkg/bindings/system/types_disk_options.go | 2 +- pkg/bindings/system/types_events_options.go | 2 +- pkg/bindings/system/types_info_options.go | 2 +- pkg/bindings/system/types_prune_options.go | 2 +- pkg/bindings/system/types_version_options.go | 2 +- pkg/bindings/util/util.go | 102 --------------------- pkg/bindings/volumes/types_create_options.go | 2 +- pkg/bindings/volumes/types_exists_options.go | 2 +- pkg/bindings/volumes/types_inspect_options.go | 2 +- pkg/bindings/volumes/types_list_options.go | 2 +- pkg/bindings/volumes/types_prune_options.go | 2 +- pkg/bindings/volumes/types_remove_options.go | 2 +- 98 files changed, 198 insertions(+), 198 deletions(-) create mode 100644 pkg/bindings/internal/util/util.go delete mode 100644 pkg/bindings/util/util.go diff --git a/pkg/bindings/containers/types_attach_options.go b/pkg/bindings/containers/types_attach_options.go index 3ab848bbb..cb8f9ea65 100644 --- a/pkg/bindings/containers/types_attach_options.go +++ b/pkg/bindings/containers/types_attach_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_checkpoint_options.go b/pkg/bindings/containers/types_checkpoint_options.go index b0921460a..a2a9a913e 100644 --- a/pkg/bindings/containers/types_checkpoint_options.go +++ b/pkg/bindings/containers/types_checkpoint_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_commit_options.go b/pkg/bindings/containers/types_commit_options.go index f00b1a619..dfb7b2ced 100644 --- a/pkg/bindings/containers/types_commit_options.go +++ b/pkg/bindings/containers/types_commit_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_create_options.go b/pkg/bindings/containers/types_create_options.go index 9fcd16fc1..dd8c82c15 100644 --- a/pkg/bindings/containers/types_create_options.go +++ b/pkg/bindings/containers/types_create_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_diff_options.go b/pkg/bindings/containers/types_diff_options.go index ee4ed009c..ed356335d 100644 --- a/pkg/bindings/containers/types_diff_options.go +++ b/pkg/bindings/containers/types_diff_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_execinspect_options.go b/pkg/bindings/containers/types_execinspect_options.go index aa2ce3976..b14ce9edb 100644 --- a/pkg/bindings/containers/types_execinspect_options.go +++ b/pkg/bindings/containers/types_execinspect_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_execstart_options.go b/pkg/bindings/containers/types_execstart_options.go index e67bb1f02..052270c49 100644 --- a/pkg/bindings/containers/types_execstart_options.go +++ b/pkg/bindings/containers/types_execstart_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_execstartandattach_options.go b/pkg/bindings/containers/types_execstartandattach_options.go index cac23beb1..feda9cc83 100644 --- a/pkg/bindings/containers/types_execstartandattach_options.go +++ b/pkg/bindings/containers/types_execstartandattach_options.go @@ -5,7 +5,7 @@ import ( "io" "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_exists_options.go b/pkg/bindings/containers/types_exists_options.go index efb81679e..a3eefcebf 100644 --- a/pkg/bindings/containers/types_exists_options.go +++ b/pkg/bindings/containers/types_exists_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_export_options.go b/pkg/bindings/containers/types_export_options.go index a47bf93fa..d15904bc1 100644 --- a/pkg/bindings/containers/types_export_options.go +++ b/pkg/bindings/containers/types_export_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_healthcheck_options.go b/pkg/bindings/containers/types_healthcheck_options.go index 1bf251f0b..edad13fee 100644 --- a/pkg/bindings/containers/types_healthcheck_options.go +++ b/pkg/bindings/containers/types_healthcheck_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_init_options.go b/pkg/bindings/containers/types_init_options.go index 6c2e544b9..602608133 100644 --- a/pkg/bindings/containers/types_init_options.go +++ b/pkg/bindings/containers/types_init_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_inspect_options.go b/pkg/bindings/containers/types_inspect_options.go index 30d1e42f1..d1f64ea9a 100644 --- a/pkg/bindings/containers/types_inspect_options.go +++ b/pkg/bindings/containers/types_inspect_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_kill_options.go b/pkg/bindings/containers/types_kill_options.go index 3bcabb71c..60cb4ae2c 100644 --- a/pkg/bindings/containers/types_kill_options.go +++ b/pkg/bindings/containers/types_kill_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_list_options.go b/pkg/bindings/containers/types_list_options.go index 934cbd748..c96b7d880 100644 --- a/pkg/bindings/containers/types_list_options.go +++ b/pkg/bindings/containers/types_list_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_log_options.go b/pkg/bindings/containers/types_log_options.go index 8acefa2aa..63f323089 100644 --- a/pkg/bindings/containers/types_log_options.go +++ b/pkg/bindings/containers/types_log_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_mount_options.go b/pkg/bindings/containers/types_mount_options.go index 1151e108d..a1d8aef62 100644 --- a/pkg/bindings/containers/types_mount_options.go +++ b/pkg/bindings/containers/types_mount_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_mountedcontainerpaths_options.go b/pkg/bindings/containers/types_mountedcontainerpaths_options.go index 4f836f0b9..c4562f43a 100644 --- a/pkg/bindings/containers/types_mountedcontainerpaths_options.go +++ b/pkg/bindings/containers/types_mountedcontainerpaths_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_pause_options.go b/pkg/bindings/containers/types_pause_options.go index bcbc17723..fa2ad4995 100644 --- a/pkg/bindings/containers/types_pause_options.go +++ b/pkg/bindings/containers/types_pause_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_prune_options.go b/pkg/bindings/containers/types_prune_options.go index af8a0fc27..adba0a4ef 100644 --- a/pkg/bindings/containers/types_prune_options.go +++ b/pkg/bindings/containers/types_prune_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_remove_options.go b/pkg/bindings/containers/types_remove_options.go index 90b932bf3..cd4b76ac2 100644 --- a/pkg/bindings/containers/types_remove_options.go +++ b/pkg/bindings/containers/types_remove_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_rename_options.go b/pkg/bindings/containers/types_rename_options.go index bc307abcc..96d9aaab5 100644 --- a/pkg/bindings/containers/types_rename_options.go +++ b/pkg/bindings/containers/types_rename_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_resizeexectty_options.go b/pkg/bindings/containers/types_resizeexectty_options.go index 6dc4b60a7..d74459822 100644 --- a/pkg/bindings/containers/types_resizeexectty_options.go +++ b/pkg/bindings/containers/types_resizeexectty_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_resizetty_options.go b/pkg/bindings/containers/types_resizetty_options.go index c4a6b80fd..68527b330 100644 --- a/pkg/bindings/containers/types_resizetty_options.go +++ b/pkg/bindings/containers/types_resizetty_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_restart_options.go b/pkg/bindings/containers/types_restart_options.go index 993dbae3e..18a47fcb6 100644 --- a/pkg/bindings/containers/types_restart_options.go +++ b/pkg/bindings/containers/types_restart_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_restore_options.go b/pkg/bindings/containers/types_restore_options.go index 3afe71845..ea6c810a2 100644 --- a/pkg/bindings/containers/types_restore_options.go +++ b/pkg/bindings/containers/types_restore_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_shouldrestart_options.go b/pkg/bindings/containers/types_shouldrestart_options.go index 32ede7bac..28986d4f8 100644 --- a/pkg/bindings/containers/types_shouldrestart_options.go +++ b/pkg/bindings/containers/types_shouldrestart_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_start_options.go b/pkg/bindings/containers/types_start_options.go index e247fc4d5..f8ba29623 100644 --- a/pkg/bindings/containers/types_start_options.go +++ b/pkg/bindings/containers/types_start_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_stats_options.go b/pkg/bindings/containers/types_stats_options.go index 0524d1815..8f6a03301 100644 --- a/pkg/bindings/containers/types_stats_options.go +++ b/pkg/bindings/containers/types_stats_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_stop_options.go b/pkg/bindings/containers/types_stop_options.go index c0009b0e7..d952f9c29 100644 --- a/pkg/bindings/containers/types_stop_options.go +++ b/pkg/bindings/containers/types_stop_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_top_options.go b/pkg/bindings/containers/types_top_options.go index cf774ac3d..a80f2111a 100644 --- a/pkg/bindings/containers/types_top_options.go +++ b/pkg/bindings/containers/types_top_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_unmount_options.go b/pkg/bindings/containers/types_unmount_options.go index 4aae72061..6f624081b 100644 --- a/pkg/bindings/containers/types_unmount_options.go +++ b/pkg/bindings/containers/types_unmount_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_unpause_options.go b/pkg/bindings/containers/types_unpause_options.go index 85ad7fb01..d6694d4da 100644 --- a/pkg/bindings/containers/types_unpause_options.go +++ b/pkg/bindings/containers/types_unpause_options.go @@ -3,7 +3,7 @@ package containers import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/containers/types_wait_options.go b/pkg/bindings/containers/types_wait_options.go index fb29f0ea7..ea724b619 100644 --- a/pkg/bindings/containers/types_wait_options.go +++ b/pkg/bindings/containers/types_wait_options.go @@ -4,7 +4,7 @@ import ( "net/url" "github.com/containers/podman/v3/libpod/define" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/generate/types_kube_options.go b/pkg/bindings/generate/types_kube_options.go index 106eed17f..785e55dd4 100644 --- a/pkg/bindings/generate/types_kube_options.go +++ b/pkg/bindings/generate/types_kube_options.go @@ -3,7 +3,7 @@ package generate import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/generate/types_systemd_options.go b/pkg/bindings/generate/types_systemd_options.go index 368484e51..59b344e1d 100644 --- a/pkg/bindings/generate/types_systemd_options.go +++ b/pkg/bindings/generate/types_systemd_options.go @@ -3,7 +3,7 @@ package generate import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/generator/generator.go b/pkg/bindings/generator/generator.go index fbca567d0..90f0bfaf5 100644 --- a/pkg/bindings/generator/generator.go +++ b/pkg/bindings/generator/generator.go @@ -81,7 +81,7 @@ func main() { panic(err) } // always add reflect - imports := []string{"\"reflect\"", "\"github.com/containers/podman/v3/pkg/bindings/util\""} + imports := []string{"\"reflect\"", "\"github.com/containers/podman/v3/pkg/bindings/internal/util\""} for _, imp := range f.Imports { imports = append(imports, imp.Path.Value) } diff --git a/pkg/bindings/images/types_diff_options.go b/pkg/bindings/images/types_diff_options.go index 5d7c18cc8..f15a9a696 100644 --- a/pkg/bindings/images/types_diff_options.go +++ b/pkg/bindings/images/types_diff_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_exists_options.go b/pkg/bindings/images/types_exists_options.go index 88efb03c8..2326c398b 100644 --- a/pkg/bindings/images/types_exists_options.go +++ b/pkg/bindings/images/types_exists_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_export_options.go b/pkg/bindings/images/types_export_options.go index b87c99d12..0c5a3390c 100644 --- a/pkg/bindings/images/types_export_options.go +++ b/pkg/bindings/images/types_export_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_get_options.go b/pkg/bindings/images/types_get_options.go index 4d892aa29..33da7b0be 100644 --- a/pkg/bindings/images/types_get_options.go +++ b/pkg/bindings/images/types_get_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_history_options.go b/pkg/bindings/images/types_history_options.go index 424fbfd37..191375390 100644 --- a/pkg/bindings/images/types_history_options.go +++ b/pkg/bindings/images/types_history_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_import_options.go b/pkg/bindings/images/types_import_options.go index 5eb30adfc..333e841e6 100644 --- a/pkg/bindings/images/types_import_options.go +++ b/pkg/bindings/images/types_import_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_list_options.go b/pkg/bindings/images/types_list_options.go index d3d5b2046..e86157f59 100644 --- a/pkg/bindings/images/types_list_options.go +++ b/pkg/bindings/images/types_list_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_load_options.go b/pkg/bindings/images/types_load_options.go index 75b5566d6..7b2e504d9 100644 --- a/pkg/bindings/images/types_load_options.go +++ b/pkg/bindings/images/types_load_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_prune_options.go b/pkg/bindings/images/types_prune_options.go index 06378b56d..6bd0c0f6f 100644 --- a/pkg/bindings/images/types_prune_options.go +++ b/pkg/bindings/images/types_prune_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_pull_options.go b/pkg/bindings/images/types_pull_options.go index 3ea23fc02..0611c4447 100644 --- a/pkg/bindings/images/types_pull_options.go +++ b/pkg/bindings/images/types_pull_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_push_options.go b/pkg/bindings/images/types_push_options.go index 3cb3ec937..2593c2fe0 100644 --- a/pkg/bindings/images/types_push_options.go +++ b/pkg/bindings/images/types_push_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_remove_options.go b/pkg/bindings/images/types_remove_options.go index 81a717bf8..d591aae88 100644 --- a/pkg/bindings/images/types_remove_options.go +++ b/pkg/bindings/images/types_remove_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_search_options.go b/pkg/bindings/images/types_search_options.go index a0e95a0b1..a437a0934 100644 --- a/pkg/bindings/images/types_search_options.go +++ b/pkg/bindings/images/types_search_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_tag_options.go b/pkg/bindings/images/types_tag_options.go index 1a0e05640..25cb8f68b 100644 --- a/pkg/bindings/images/types_tag_options.go +++ b/pkg/bindings/images/types_tag_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_tree_options.go b/pkg/bindings/images/types_tree_options.go index b03d2282a..43178113d 100644 --- a/pkg/bindings/images/types_tree_options.go +++ b/pkg/bindings/images/types_tree_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/images/types_untag_options.go b/pkg/bindings/images/types_untag_options.go index a8004b21e..520cf7a49 100644 --- a/pkg/bindings/images/types_untag_options.go +++ b/pkg/bindings/images/types_untag_options.go @@ -3,7 +3,7 @@ package images import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/internal/util/util.go b/pkg/bindings/internal/util/util.go new file mode 100644 index 000000000..c1961308e --- /dev/null +++ b/pkg/bindings/internal/util/util.go @@ -0,0 +1,102 @@ +package util + +import ( + "errors" + "fmt" + "net/url" + "reflect" + "strconv" + "strings" + + jsoniter "github.com/json-iterator/go" +) + +func IsSimpleType(f reflect.Value) bool { + if _, ok := f.Interface().(fmt.Stringer); ok { + return true + } + + switch f.Kind() { + case reflect.Bool, reflect.Int, reflect.Int64, reflect.Uint, reflect.Uint64, reflect.String: + return true + } + + return false +} + +func SimpleTypeToParam(f reflect.Value) string { + if s, ok := f.Interface().(fmt.Stringer); ok { + return s.String() + } + + switch f.Kind() { + case reflect.Bool: + return strconv.FormatBool(f.Bool()) + case reflect.Int, reflect.Int64: + // f.Int() is always an int64 + return strconv.FormatInt(f.Int(), 10) + case reflect.Uint, reflect.Uint64: + // f.Uint() is always an uint64 + return strconv.FormatUint(f.Uint(), 10) + case reflect.String: + return f.String() + } + + panic("the input parameter is not a simple type") +} + +func Changed(o interface{}, fieldName string) bool { + r := reflect.ValueOf(o) + value := reflect.Indirect(r).FieldByName(fieldName) + return !value.IsNil() +} + +func ToParams(o interface{}) (url.Values, error) { + params := url.Values{} + if o == nil || reflect.ValueOf(o).IsNil() { + return params, nil + } + json := jsoniter.ConfigCompatibleWithStandardLibrary + s := reflect.ValueOf(o) + if reflect.Ptr == s.Kind() { + s = s.Elem() + } + sType := s.Type() + for i := 0; i < s.NumField(); i++ { + fieldName := sType.Field(i).Name + if !Changed(o, fieldName) { + continue + } + fieldName = strings.ToLower(fieldName) + f := s.Field(i) + if reflect.Ptr == f.Kind() { + f = f.Elem() + } + switch { + case IsSimpleType(f): + params.Set(fieldName, SimpleTypeToParam(f)) + case f.Kind() == reflect.Slice: + for i := 0; i < f.Len(); i++ { + elem := f.Index(i) + if IsSimpleType(elem) { + params.Add(fieldName, SimpleTypeToParam(elem)) + } else { + return nil, errors.New("slices must contain only simple types") + } + } + case f.Kind() == reflect.Map: + lowerCaseKeys := make(map[string][]string) + iter := f.MapRange() + for iter.Next() { + lowerCaseKeys[iter.Key().Interface().(string)] = iter.Value().Interface().([]string) + } + s, err := json.MarshalToString(lowerCaseKeys) + if err != nil { + return nil, err + } + + params.Set(fieldName, s) + } + } + return params, nil +} diff --git a/pkg/bindings/manifests/types_add_options.go b/pkg/bindings/manifests/types_add_options.go index 167c42639..09105c590 100644 --- a/pkg/bindings/manifests/types_add_options.go +++ b/pkg/bindings/manifests/types_add_options.go @@ -3,7 +3,7 @@ package manifests import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/manifests/types_create_options.go b/pkg/bindings/manifests/types_create_options.go index e3b549968..5f022c672 100644 --- a/pkg/bindings/manifests/types_create_options.go +++ b/pkg/bindings/manifests/types_create_options.go @@ -3,7 +3,7 @@ package manifests import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/manifests/types_exists_options.go b/pkg/bindings/manifests/types_exists_options.go index 301652d99..6f33c2cd5 100644 --- a/pkg/bindings/manifests/types_exists_options.go +++ b/pkg/bindings/manifests/types_exists_options.go @@ -3,7 +3,7 @@ package manifests import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/manifests/types_inspect_options.go b/pkg/bindings/manifests/types_inspect_options.go index 104fd8469..7dfa11cb4 100644 --- a/pkg/bindings/manifests/types_inspect_options.go +++ b/pkg/bindings/manifests/types_inspect_options.go @@ -3,7 +3,7 @@ package manifests import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/manifests/types_remove_options.go b/pkg/bindings/manifests/types_remove_options.go index 57a5f82ce..7a507cf1a 100644 --- a/pkg/bindings/manifests/types_remove_options.go +++ b/pkg/bindings/manifests/types_remove_options.go @@ -3,7 +3,7 @@ package manifests import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_connect_options.go b/pkg/bindings/network/types_connect_options.go index f51c31be0..c0e7a6f50 100644 --- a/pkg/bindings/network/types_connect_options.go +++ b/pkg/bindings/network/types_connect_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_create_options.go b/pkg/bindings/network/types_create_options.go index 66e155b7a..5746a5b1f 100644 --- a/pkg/bindings/network/types_create_options.go +++ b/pkg/bindings/network/types_create_options.go @@ -4,7 +4,7 @@ import ( "net" "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_disconnect_options.go b/pkg/bindings/network/types_disconnect_options.go index 37e9f4c72..a73675d4f 100644 --- a/pkg/bindings/network/types_disconnect_options.go +++ b/pkg/bindings/network/types_disconnect_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_exists_options.go b/pkg/bindings/network/types_exists_options.go index 4861343b6..4f33cdfbb 100644 --- a/pkg/bindings/network/types_exists_options.go +++ b/pkg/bindings/network/types_exists_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_inspect_options.go b/pkg/bindings/network/types_inspect_options.go index 6022ae111..9f7497ed5 100644 --- a/pkg/bindings/network/types_inspect_options.go +++ b/pkg/bindings/network/types_inspect_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_list_options.go b/pkg/bindings/network/types_list_options.go index c922dcf8e..fcbe23bd6 100644 --- a/pkg/bindings/network/types_list_options.go +++ b/pkg/bindings/network/types_list_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_prune_options.go b/pkg/bindings/network/types_prune_options.go index ae26dbece..84e1a8b32 100644 --- a/pkg/bindings/network/types_prune_options.go +++ b/pkg/bindings/network/types_prune_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/network/types_remove_options.go b/pkg/bindings/network/types_remove_options.go index 7e3265924..f715c94c9 100644 --- a/pkg/bindings/network/types_remove_options.go +++ b/pkg/bindings/network/types_remove_options.go @@ -3,7 +3,7 @@ package network import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/play/types_kube_options.go b/pkg/bindings/play/types_kube_options.go index d290ceb34..78396a090 100644 --- a/pkg/bindings/play/types_kube_options.go +++ b/pkg/bindings/play/types_kube_options.go @@ -3,7 +3,7 @@ package play import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_create_options.go b/pkg/bindings/pods/types_create_options.go index a29c24794..891ef2e84 100644 --- a/pkg/bindings/pods/types_create_options.go +++ b/pkg/bindings/pods/types_create_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_exists_options.go b/pkg/bindings/pods/types_exists_options.go index e235fad37..02423e7ed 100644 --- a/pkg/bindings/pods/types_exists_options.go +++ b/pkg/bindings/pods/types_exists_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_inspect_options.go b/pkg/bindings/pods/types_inspect_options.go index a78337015..20ec3a726 100644 --- a/pkg/bindings/pods/types_inspect_options.go +++ b/pkg/bindings/pods/types_inspect_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_kill_options.go b/pkg/bindings/pods/types_kill_options.go index 7a9714bfd..fabd45c67 100644 --- a/pkg/bindings/pods/types_kill_options.go +++ b/pkg/bindings/pods/types_kill_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_list_options.go b/pkg/bindings/pods/types_list_options.go index cb9bbc5a6..7221c7ff8 100644 --- a/pkg/bindings/pods/types_list_options.go +++ b/pkg/bindings/pods/types_list_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_pause_options.go b/pkg/bindings/pods/types_pause_options.go index 91a12b76b..0bbc9c293 100644 --- a/pkg/bindings/pods/types_pause_options.go +++ b/pkg/bindings/pods/types_pause_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_prune_options.go b/pkg/bindings/pods/types_prune_options.go index 6740a22ba..0e788f471 100644 --- a/pkg/bindings/pods/types_prune_options.go +++ b/pkg/bindings/pods/types_prune_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_remove_options.go b/pkg/bindings/pods/types_remove_options.go index bf1096955..3d3c7ad2a 100644 --- a/pkg/bindings/pods/types_remove_options.go +++ b/pkg/bindings/pods/types_remove_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_restart_options.go b/pkg/bindings/pods/types_restart_options.go index ace0a0cbd..9278b7b46 100644 --- a/pkg/bindings/pods/types_restart_options.go +++ b/pkg/bindings/pods/types_restart_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_start_options.go b/pkg/bindings/pods/types_start_options.go index 37bc93ffc..d0cb50969 100644 --- a/pkg/bindings/pods/types_start_options.go +++ b/pkg/bindings/pods/types_start_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_stats_options.go b/pkg/bindings/pods/types_stats_options.go index 257dab50c..2fb3529ad 100644 --- a/pkg/bindings/pods/types_stats_options.go +++ b/pkg/bindings/pods/types_stats_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_stop_options.go b/pkg/bindings/pods/types_stop_options.go index f43317275..443c9120f 100644 --- a/pkg/bindings/pods/types_stop_options.go +++ b/pkg/bindings/pods/types_stop_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_top_options.go b/pkg/bindings/pods/types_top_options.go index 6526d9879..ab6501704 100644 --- a/pkg/bindings/pods/types_top_options.go +++ b/pkg/bindings/pods/types_top_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/pods/types_unpause_options.go b/pkg/bindings/pods/types_unpause_options.go index 67e7d45d6..f9ea972e6 100644 --- a/pkg/bindings/pods/types_unpause_options.go +++ b/pkg/bindings/pods/types_unpause_options.go @@ -3,7 +3,7 @@ package pods import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/secrets/types_create_options.go b/pkg/bindings/secrets/types_create_options.go index af4516c35..ea5bd3039 100644 --- a/pkg/bindings/secrets/types_create_options.go +++ b/pkg/bindings/secrets/types_create_options.go @@ -3,7 +3,7 @@ package secrets import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/secrets/types_inspect_options.go b/pkg/bindings/secrets/types_inspect_options.go index 75831841d..48c2737d0 100644 --- a/pkg/bindings/secrets/types_inspect_options.go +++ b/pkg/bindings/secrets/types_inspect_options.go @@ -3,7 +3,7 @@ package secrets import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/secrets/types_list_options.go b/pkg/bindings/secrets/types_list_options.go index 14dcd761c..568e021a8 100644 --- a/pkg/bindings/secrets/types_list_options.go +++ b/pkg/bindings/secrets/types_list_options.go @@ -3,7 +3,7 @@ package secrets import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/secrets/types_remove_options.go b/pkg/bindings/secrets/types_remove_options.go index 3da8e8485..dd5ac530a 100644 --- a/pkg/bindings/secrets/types_remove_options.go +++ b/pkg/bindings/secrets/types_remove_options.go @@ -3,7 +3,7 @@ package secrets import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/system/types_disk_options.go b/pkg/bindings/system/types_disk_options.go index 3a7474502..d55139b68 100644 --- a/pkg/bindings/system/types_disk_options.go +++ b/pkg/bindings/system/types_disk_options.go @@ -3,7 +3,7 @@ package system import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/system/types_events_options.go b/pkg/bindings/system/types_events_options.go index b430c99fd..8b4cff42c 100644 --- a/pkg/bindings/system/types_events_options.go +++ b/pkg/bindings/system/types_events_options.go @@ -3,7 +3,7 @@ package system import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/system/types_info_options.go b/pkg/bindings/system/types_info_options.go index 5fa8fd37d..2bbb95a2e 100644 --- a/pkg/bindings/system/types_info_options.go +++ b/pkg/bindings/system/types_info_options.go @@ -3,7 +3,7 @@ package system import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/system/types_prune_options.go b/pkg/bindings/system/types_prune_options.go index 47093a910..f4daa830a 100644 --- a/pkg/bindings/system/types_prune_options.go +++ b/pkg/bindings/system/types_prune_options.go @@ -3,7 +3,7 @@ package system import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/system/types_version_options.go b/pkg/bindings/system/types_version_options.go index 3bfb85c3b..5e01da583 100644 --- a/pkg/bindings/system/types_version_options.go +++ b/pkg/bindings/system/types_version_options.go @@ -3,7 +3,7 @@ package system import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/util/util.go b/pkg/bindings/util/util.go deleted file mode 100644 index c1961308e..000000000 --- a/pkg/bindings/util/util.go +++ /dev/null @@ -1,102 +0,0 @@ -package util - -import ( - "errors" - "fmt" - "net/url" - "reflect" - "strconv" - "strings" - - jsoniter "github.com/json-iterator/go" -) - -func IsSimpleType(f reflect.Value) bool { - if _, ok := f.Interface().(fmt.Stringer); ok { - return true - } - - switch f.Kind() { - case reflect.Bool, reflect.Int, reflect.Int64, reflect.Uint, reflect.Uint64, reflect.String: - return true - } - - return false -} - -func SimpleTypeToParam(f reflect.Value) string { - if s, ok := f.Interface().(fmt.Stringer); ok { - return s.String() - } - - switch f.Kind() { - case reflect.Bool: - return strconv.FormatBool(f.Bool()) - case reflect.Int, reflect.Int64: - // f.Int() is always an int64 - return strconv.FormatInt(f.Int(), 10) - case reflect.Uint, reflect.Uint64: - // f.Uint() is always an uint64 - return strconv.FormatUint(f.Uint(), 10) - case reflect.String: - return f.String() - } - - panic("the input parameter is not a simple type") -} - -func Changed(o interface{}, fieldName string) bool { - r := reflect.ValueOf(o) - value := reflect.Indirect(r).FieldByName(fieldName) - return !value.IsNil() -} - -func ToParams(o interface{}) (url.Values, error) { - params := url.Values{} - if o == nil || reflect.ValueOf(o).IsNil() { - return params, nil - } - json := jsoniter.ConfigCompatibleWithStandardLibrary - s := reflect.ValueOf(o) - if reflect.Ptr == s.Kind() { - s = s.Elem() - } - sType := s.Type() - for i := 0; i < s.NumField(); i++ { - fieldName := sType.Field(i).Name - if !Changed(o, fieldName) { - continue - } - fieldName = strings.ToLower(fieldName) - f := s.Field(i) - if reflect.Ptr == f.Kind() { - f = f.Elem() - } - switch { - case IsSimpleType(f): - params.Set(fieldName, SimpleTypeToParam(f)) - case f.Kind() == reflect.Slice: - for i := 0; i < f.Len(); i++ { - elem := f.Index(i) - if IsSimpleType(elem) { - params.Add(fieldName, SimpleTypeToParam(elem)) - } else { - return nil, errors.New("slices must contain only simple types") - } - } - case f.Kind() == reflect.Map: - lowerCaseKeys := make(map[string][]string) - iter := f.MapRange() - for iter.Next() { - lowerCaseKeys[iter.Key().Interface().(string)] = iter.Value().Interface().([]string) - } - s, err := json.MarshalToString(lowerCaseKeys) - if err != nil { - return nil, err - } - - params.Set(fieldName, s) - } - } - return params, nil -} diff --git a/pkg/bindings/volumes/types_create_options.go b/pkg/bindings/volumes/types_create_options.go index 5ff1615ec..0e8274d25 100644 --- a/pkg/bindings/volumes/types_create_options.go +++ b/pkg/bindings/volumes/types_create_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/volumes/types_exists_options.go b/pkg/bindings/volumes/types_exists_options.go index 396975cb8..b58b93f38 100644 --- a/pkg/bindings/volumes/types_exists_options.go +++ b/pkg/bindings/volumes/types_exists_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/volumes/types_inspect_options.go b/pkg/bindings/volumes/types_inspect_options.go index 9bc3969b0..81bed1363 100644 --- a/pkg/bindings/volumes/types_inspect_options.go +++ b/pkg/bindings/volumes/types_inspect_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/volumes/types_list_options.go b/pkg/bindings/volumes/types_list_options.go index ddaf8dd91..9b2c6a3ad 100644 --- a/pkg/bindings/volumes/types_list_options.go +++ b/pkg/bindings/volumes/types_list_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/volumes/types_prune_options.go b/pkg/bindings/volumes/types_prune_options.go index 474714fa5..5d52752f2 100644 --- a/pkg/bindings/volumes/types_prune_options.go +++ b/pkg/bindings/volumes/types_prune_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* diff --git a/pkg/bindings/volumes/types_remove_options.go b/pkg/bindings/volumes/types_remove_options.go index 09651e424..5e3fde58a 100644 --- a/pkg/bindings/volumes/types_remove_options.go +++ b/pkg/bindings/volumes/types_remove_options.go @@ -3,7 +3,7 @@ package volumes import ( "net/url" - "github.com/containers/podman/v3/pkg/bindings/util" + "github.com/containers/podman/v3/pkg/bindings/internal/util" ) /* -- cgit v1.2.3-54-g00ecf