harbor2_legacy_client 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Gemfile +7 -0
- data/README.md +365 -0
- data/Rakefile +8 -0
- data/docs/Action.md +8 -0
- data/docs/Action1.md +8 -0
- data/docs/AdminJobSchedule.md +9 -0
- data/docs/AdminJobScheduleObj.md +9 -0
- data/docs/BadRequestFormatedError.md +8 -0
- data/docs/BoolConfigItem.md +9 -0
- data/docs/CVEAllowlist.md +11 -0
- data/docs/CVEAllowlistItem.md +8 -0
- data/docs/ChartAPIError.md +8 -0
- data/docs/ChartMetadata.md +18 -0
- data/docs/ChartRepositoryApi.md +191 -0
- data/docs/ChartVersion.md +23 -0
- data/docs/ComponentHealthStatus.md +10 -0
- data/docs/ComponentOverviewEntry.md +9 -0
- data/docs/Configurations.md +42 -0
- data/docs/ConfigurationsResponse.md +41 -0
- data/docs/ConfigurationsScanAllPolicy.md +9 -0
- data/docs/ConfigurationsScanAllPolicyParameter.md +8 -0
- data/docs/ConflictFormatedError.md +8 -0
- data/docs/EmailServerSetting.md +13 -0
- data/docs/Endpoint.md +9 -0
- data/docs/EventType.md +7 -0
- data/docs/FilterStyle.md +10 -0
- data/docs/ForbiddenChartAPIError.md +8 -0
- data/docs/GCResult.md +16 -0
- data/docs/GeneralInfo.md +16 -0
- data/docs/InputSecret.md +8 -0
- data/docs/InsufficientStorageChartAPIError.md +8 -0
- data/docs/IntegerConfigItem.md +9 -0
- data/docs/InternalChartAPIError.md +8 -0
- data/docs/IsDefault.md +8 -0
- data/docs/Label.md +16 -0
- data/docs/LabelApi.md +191 -0
- data/docs/Labels.md +7 -0
- data/docs/LdapConf.md +15 -0
- data/docs/LdapFailedImportUsers.md +9 -0
- data/docs/LdapImportUsers.md +8 -0
- data/docs/LdapUsers.md +10 -0
- data/docs/Namespace.md +9 -0
- data/docs/NotFoundChartAPIError.md +8 -0
- data/docs/NotifyType.md +7 -0
- data/docs/OverallHealthStatus.md +9 -0
- data/docs/Password.md +9 -0
- data/docs/Permission.md +9 -0
- data/docs/PingRegistry.md +14 -0
- data/docs/ProductsApi.md +6382 -0
- data/docs/Project.md +22 -0
- data/docs/ProjectMember.md +10 -0
- data/docs/ProjectMemberEntity.md +14 -0
- data/docs/ProjectMetadata.md +13 -0
- data/docs/ProjectReq.md +13 -0
- data/docs/ProjectScanner.md +8 -0
- data/docs/ProjectSummary.md +15 -0
- data/docs/ProjectSummaryQuota.md +9 -0
- data/docs/PutRegistry.md +14 -0
- data/docs/Quota.md +13 -0
- data/docs/QuotaApi.md +118 -0
- data/docs/QuotaRefObject.md +7 -0
- data/docs/QuotaSwitcher.md +8 -0
- data/docs/QuotaUpdateReq.md +8 -0
- data/docs/Registry.md +17 -0
- data/docs/RegistryCredential.md +10 -0
- data/docs/RegistryInfo.md +11 -0
- data/docs/ReplicationExecution.md +19 -0
- data/docs/ReplicationFilter.md +9 -0
- data/docs/ReplicationPolicy.md +20 -0
- data/docs/ReplicationTask.md +16 -0
- data/docs/ReplicationTrigger.md +9 -0
- data/docs/ResourceList.md +7 -0
- data/docs/RetentionApi.md +449 -0
- data/docs/RetentionExecution.md +14 -0
- data/docs/RetentionExecutionTask.md +18 -0
- data/docs/RetentionMetadata.md +10 -0
- data/docs/RetentionPolicy.md +12 -0
- data/docs/RetentionPolicyScope.md +9 -0
- data/docs/RetentionRule.md +15 -0
- data/docs/RetentionRuleMetadata.md +11 -0
- data/docs/RetentionRuleParamMetadata.md +10 -0
- data/docs/RetentionRuleTrigger.md +10 -0
- data/docs/RetentionSelector.md +11 -0
- data/docs/RetentionSelectorMetadata.md +10 -0
- data/docs/RobotAccount.md +15 -0
- data/docs/RobotAccountAccess.md +9 -0
- data/docs/RobotAccountApi.md +291 -0
- data/docs/RobotAccountCreate.md +11 -0
- data/docs/RobotAccountPostRep.md +9 -0
- data/docs/RobotAccountUpdate.md +8 -0
- data/docs/Role.md +11 -0
- data/docs/RoleParam.md +9 -0
- data/docs/RoleRequest.md +8 -0
- data/docs/ScanApi.md +104 -0
- data/docs/Scanner.md +10 -0
- data/docs/ScannerAdapterMetadata.md +10 -0
- data/docs/ScannerCapability.md +9 -0
- data/docs/ScannerRegistration.md +21 -0
- data/docs/ScannerRegistrationReq.md +15 -0
- data/docs/ScannerRegistrationSettings.md +11 -0
- data/docs/ScannersApi.md +600 -0
- data/docs/Search.md +10 -0
- data/docs/SearchRepository.md +13 -0
- data/docs/SearchResult.md +10 -0
- data/docs/StatisticMap.md +13 -0
- data/docs/Stats.md +12 -0
- data/docs/Storage.md +9 -0
- data/docs/StringConfigItem.md +9 -0
- data/docs/SupportedWebhookEventTypes.md +9 -0
- data/docs/SysAdminFlag.md +8 -0
- data/docs/SystemApi.md +163 -0
- data/docs/SystemInfo.md +8 -0
- data/docs/TriggerSettings.md +8 -0
- data/docs/UnauthorizedChartAPIError.md +8 -0
- data/docs/User.md +22 -0
- data/docs/UserEntity.md +9 -0
- data/docs/UserGroup.md +11 -0
- data/docs/UserProfile.md +10 -0
- data/docs/UserSearch.md +9 -0
- data/docs/WebhookJob.md +15 -0
- data/docs/WebhookLastTrigger.md +11 -0
- data/docs/WebhookPolicy.md +17 -0
- data/docs/WebhookTargetObject.md +11 -0
- data/git_push.sh +55 -0
- data/harbor2_legacy_client.gemspec +46 -0
- data/lib/harbor2_legacy_client.rb +159 -0
- data/lib/harbor2_legacy_client/api/chart_repository_api.rb +230 -0
- data/lib/harbor2_legacy_client/api/label_api.rb +230 -0
- data/lib/harbor2_legacy_client/api/products_api.rb +6500 -0
- data/lib/harbor2_legacy_client/api/quota_api.rb +136 -0
- data/lib/harbor2_legacy_client/api/retention_api.rb +482 -0
- data/lib/harbor2_legacy_client/api/robot_account_api.rb +321 -0
- data/lib/harbor2_legacy_client/api/scan_api.rb +119 -0
- data/lib/harbor2_legacy_client/api/scanners_api.rb +624 -0
- data/lib/harbor2_legacy_client/api/system_api.rb +173 -0
- data/lib/harbor2_legacy_client/api_client.rb +391 -0
- data/lib/harbor2_legacy_client/api_error.rb +38 -0
- data/lib/harbor2_legacy_client/configuration.rb +209 -0
- data/lib/harbor2_legacy_client/models/action.rb +184 -0
- data/lib/harbor2_legacy_client/models/action_1.rb +184 -0
- data/lib/harbor2_legacy_client/models/admin_job_schedule.rb +196 -0
- data/lib/harbor2_legacy_client/models/admin_job_schedule_obj.rb +195 -0
- data/lib/harbor2_legacy_client/models/bad_request_formated_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/bool_config_item.rb +195 -0
- data/lib/harbor2_legacy_client/models/chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/chart_metadata.rb +320 -0
- data/lib/harbor2_legacy_client/models/chart_version.rb +371 -0
- data/lib/harbor2_legacy_client/models/component_health_status.rb +206 -0
- data/lib/harbor2_legacy_client/models/component_overview_entry.rb +195 -0
- data/lib/harbor2_legacy_client/models/configurations.rb +524 -0
- data/lib/harbor2_legacy_client/models/configurations_response.rb +514 -0
- data/lib/harbor2_legacy_client/models/configurations_scan_all_policy.rb +194 -0
- data/lib/harbor2_legacy_client/models/configurations_scan_all_policy_parameter.rb +186 -0
- data/lib/harbor2_legacy_client/models/conflict_formated_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/cve_allowlist.rb +217 -0
- data/lib/harbor2_legacy_client/models/cve_allowlist_item.rb +186 -0
- data/lib/harbor2_legacy_client/models/email_server_setting.rb +235 -0
- data/lib/harbor2_legacy_client/models/endpoint.rb +195 -0
- data/lib/harbor2_legacy_client/models/event_type.rb +176 -0
- data/lib/harbor2_legacy_client/models/filter_style.rb +208 -0
- data/lib/harbor2_legacy_client/models/forbidden_chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/gc_result.rb +264 -0
- data/lib/harbor2_legacy_client/models/general_info.rb +265 -0
- data/lib/harbor2_legacy_client/models/input_secret.rb +185 -0
- data/lib/harbor2_legacy_client/models/insufficient_storage_chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/integer_config_item.rb +195 -0
- data/lib/harbor2_legacy_client/models/internal_chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/is_default.rb +185 -0
- data/lib/harbor2_legacy_client/models/label.rb +265 -0
- data/lib/harbor2_legacy_client/models/labels.rb +176 -0
- data/lib/harbor2_legacy_client/models/ldap_conf.rb +255 -0
- data/lib/harbor2_legacy_client/models/ldap_failed_import_users.rb +195 -0
- data/lib/harbor2_legacy_client/models/ldap_import_users.rb +187 -0
- data/lib/harbor2_legacy_client/models/ldap_users.rb +205 -0
- data/lib/harbor2_legacy_client/models/namespace.rb +196 -0
- data/lib/harbor2_legacy_client/models/not_found_chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/notify_type.rb +176 -0
- data/lib/harbor2_legacy_client/models/overall_health_status.rb +197 -0
- data/lib/harbor2_legacy_client/models/password.rb +195 -0
- data/lib/harbor2_legacy_client/models/permission.rb +196 -0
- data/lib/harbor2_legacy_client/models/ping_registry.rb +245 -0
- data/lib/harbor2_legacy_client/models/project.rb +327 -0
- data/lib/harbor2_legacy_client/models/project_member.rb +203 -0
- data/lib/harbor2_legacy_client/models/project_member_entity.rb +245 -0
- data/lib/harbor2_legacy_client/models/project_metadata.rb +235 -0
- data/lib/harbor2_legacy_client/models/project_req.rb +235 -0
- data/lib/harbor2_legacy_client/models/project_scanner.rb +185 -0
- data/lib/harbor2_legacy_client/models/project_summary.rb +253 -0
- data/lib/harbor2_legacy_client/models/project_summary_quota.rb +195 -0
- data/lib/harbor2_legacy_client/models/put_registry.rb +245 -0
- data/lib/harbor2_legacy_client/models/quota.rb +236 -0
- data/lib/harbor2_legacy_client/models/quota_ref_object.rb +175 -0
- data/lib/harbor2_legacy_client/models/quota_switcher.rb +185 -0
- data/lib/harbor2_legacy_client/models/quota_update_req.rb +185 -0
- data/lib/harbor2_legacy_client/models/registry.rb +274 -0
- data/lib/harbor2_legacy_client/models/registry_credential.rb +205 -0
- data/lib/harbor2_legacy_client/models/registry_info.rb +220 -0
- data/lib/harbor2_legacy_client/models/replication_execution.rb +296 -0
- data/lib/harbor2_legacy_client/models/replication_filter.rb +195 -0
- data/lib/harbor2_legacy_client/models/replication_policy.rb +306 -0
- data/lib/harbor2_legacy_client/models/replication_task.rb +266 -0
- data/lib/harbor2_legacy_client/models/replication_trigger.rb +194 -0
- data/lib/harbor2_legacy_client/models/resource_list.rb +175 -0
- data/lib/harbor2_legacy_client/models/retention_execution.rb +238 -0
- data/lib/harbor2_legacy_client/models/retention_execution_task.rb +274 -0
- data/lib/harbor2_legacy_client/models/retention_metadata.rb +212 -0
- data/lib/harbor2_legacy_client/models/retention_policy.rb +223 -0
- data/lib/harbor2_legacy_client/models/retention_policy_scope.rb +193 -0
- data/lib/harbor2_legacy_client/models/retention_rule.rb +253 -0
- data/lib/harbor2_legacy_client/models/retention_rule_metadata.rb +218 -0
- data/lib/harbor2_legacy_client/models/retention_rule_param_metadata.rb +203 -0
- data/lib/harbor2_legacy_client/models/retention_rule_trigger.rb +202 -0
- data/lib/harbor2_legacy_client/models/retention_selector.rb +211 -0
- data/lib/harbor2_legacy_client/models/retention_selector_metadata.rb +205 -0
- data/lib/harbor2_legacy_client/models/robot_account.rb +256 -0
- data/lib/harbor2_legacy_client/models/robot_account_access.rb +195 -0
- data/lib/harbor2_legacy_client/models/robot_account_create.rb +217 -0
- data/lib/harbor2_legacy_client/models/robot_account_post_rep.rb +195 -0
- data/lib/harbor2_legacy_client/models/robot_account_update.rb +185 -0
- data/lib/harbor2_legacy_client/models/role.rb +214 -0
- data/lib/harbor2_legacy_client/models/role_param.rb +197 -0
- data/lib/harbor2_legacy_client/models/role_request.rb +185 -0
- data/lib/harbor2_legacy_client/models/scanner.rb +205 -0
- data/lib/harbor2_legacy_client/models/scanner_adapter_metadata.rb +207 -0
- data/lib/harbor2_legacy_client/models/scanner_capability.rb +197 -0
- data/lib/harbor2_legacy_client/models/scanner_registration.rb +328 -0
- data/lib/harbor2_legacy_client/models/scanner_registration_req.rb +263 -0
- data/lib/harbor2_legacy_client/models/scanner_registration_settings.rb +217 -0
- data/lib/harbor2_legacy_client/models/search.rb +211 -0
- data/lib/harbor2_legacy_client/models/search_repository.rb +235 -0
- data/lib/harbor2_legacy_client/models/search_result.rb +205 -0
- data/lib/harbor2_legacy_client/models/statistic_map.rb +235 -0
- data/lib/harbor2_legacy_client/models/stats.rb +228 -0
- data/lib/harbor2_legacy_client/models/storage.rb +195 -0
- data/lib/harbor2_legacy_client/models/string_config_item.rb +195 -0
- data/lib/harbor2_legacy_client/models/supported_webhook_event_types.rb +198 -0
- data/lib/harbor2_legacy_client/models/sys_admin_flag.rb +185 -0
- data/lib/harbor2_legacy_client/models/system_info.rb +187 -0
- data/lib/harbor2_legacy_client/models/trigger_settings.rb +185 -0
- data/lib/harbor2_legacy_client/models/unauthorized_chart_api_error.rb +191 -0
- data/lib/harbor2_legacy_client/models/user.rb +312 -0
- data/lib/harbor2_legacy_client/models/user_entity.rb +195 -0
- data/lib/harbor2_legacy_client/models/user_group.rb +215 -0
- data/lib/harbor2_legacy_client/models/user_profile.rb +205 -0
- data/lib/harbor2_legacy_client/models/user_search.rb +194 -0
- data/lib/harbor2_legacy_client/models/webhook_job.rb +256 -0
- data/lib/harbor2_legacy_client/models/webhook_last_trigger.rb +216 -0
- data/lib/harbor2_legacy_client/models/webhook_policy.rb +278 -0
- data/lib/harbor2_legacy_client/models/webhook_target_object.rb +216 -0
- data/lib/harbor2_legacy_client/version.rb +15 -0
- data/spec/api/chart_repository_api_spec.rb +79 -0
- data/spec/api/label_api_spec.rb +79 -0
- data/spec/api/products_api_spec.rb +1493 -0
- data/spec/api/quota_api_spec.rb +60 -0
- data/spec/api/retention_api_spec.rb +136 -0
- data/spec/api/robot_account_api_spec.rb +100 -0
- data/spec/api/scan_api_spec.rb +57 -0
- data/spec/api/scanners_api_spec.rb +169 -0
- data/spec/api/system_api_spec.rb +70 -0
- data/spec/api_client_spec.rb +243 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/action_1_spec.rb +41 -0
- data/spec/models/action_spec.rb +41 -0
- data/spec/models/admin_job_schedule_obj_spec.rb +47 -0
- data/spec/models/admin_job_schedule_spec.rb +47 -0
- data/spec/models/bad_request_formated_error_spec.rb +41 -0
- data/spec/models/bool_config_item_spec.rb +47 -0
- data/spec/models/chart_api_error_spec.rb +41 -0
- data/spec/models/chart_metadata_spec.rb +101 -0
- data/spec/models/chart_version_spec.rb +131 -0
- data/spec/models/component_health_status_spec.rb +53 -0
- data/spec/models/component_overview_entry_spec.rb +47 -0
- data/spec/models/configurations_response_spec.rb +239 -0
- data/spec/models/configurations_scan_all_policy_parameter_spec.rb +41 -0
- data/spec/models/configurations_scan_all_policy_spec.rb +47 -0
- data/spec/models/configurations_spec.rb +245 -0
- data/spec/models/conflict_formated_error_spec.rb +41 -0
- data/spec/models/cve_allowlist_item_spec.rb +41 -0
- data/spec/models/cve_allowlist_spec.rb +59 -0
- data/spec/models/email_server_setting_spec.rb +71 -0
- data/spec/models/endpoint_spec.rb +47 -0
- data/spec/models/event_type_spec.rb +35 -0
- data/spec/models/filter_style_spec.rb +53 -0
- data/spec/models/forbidden_chart_api_error_spec.rb +41 -0
- data/spec/models/gc_result_spec.rb +89 -0
- data/spec/models/general_info_spec.rb +89 -0
- data/spec/models/input_secret_spec.rb +41 -0
- data/spec/models/insufficient_storage_chart_api_error_spec.rb +41 -0
- data/spec/models/integer_config_item_spec.rb +47 -0
- data/spec/models/internal_chart_api_error_spec.rb +41 -0
- data/spec/models/is_default_spec.rb +41 -0
- data/spec/models/label_spec.rb +89 -0
- data/spec/models/labels_spec.rb +35 -0
- data/spec/models/ldap_conf_spec.rb +83 -0
- data/spec/models/ldap_failed_import_users_spec.rb +47 -0
- data/spec/models/ldap_import_users_spec.rb +41 -0
- data/spec/models/ldap_users_spec.rb +53 -0
- data/spec/models/namespace_spec.rb +47 -0
- data/spec/models/not_found_chart_api_error_spec.rb +41 -0
- data/spec/models/notify_type_spec.rb +35 -0
- data/spec/models/overall_health_status_spec.rb +47 -0
- data/spec/models/password_spec.rb +47 -0
- data/spec/models/permission_spec.rb +47 -0
- data/spec/models/ping_registry_spec.rb +77 -0
- data/spec/models/project_member_entity_spec.rb +77 -0
- data/spec/models/project_member_spec.rb +53 -0
- data/spec/models/project_metadata_spec.rb +71 -0
- data/spec/models/project_req_spec.rb +71 -0
- data/spec/models/project_scanner_spec.rb +41 -0
- data/spec/models/project_spec.rb +125 -0
- data/spec/models/project_summary_quota_spec.rb +47 -0
- data/spec/models/project_summary_spec.rb +83 -0
- data/spec/models/put_registry_spec.rb +77 -0
- data/spec/models/quota_ref_object_spec.rb +35 -0
- data/spec/models/quota_spec.rb +71 -0
- data/spec/models/quota_switcher_spec.rb +41 -0
- data/spec/models/quota_update_req_spec.rb +41 -0
- data/spec/models/registry_credential_spec.rb +53 -0
- data/spec/models/registry_info_spec.rb +59 -0
- data/spec/models/registry_spec.rb +95 -0
- data/spec/models/replication_execution_spec.rb +107 -0
- data/spec/models/replication_filter_spec.rb +47 -0
- data/spec/models/replication_policy_spec.rb +113 -0
- data/spec/models/replication_task_spec.rb +89 -0
- data/spec/models/replication_trigger_spec.rb +47 -0
- data/spec/models/resource_list_spec.rb +35 -0
- data/spec/models/retention_execution_spec.rb +77 -0
- data/spec/models/retention_execution_task_spec.rb +101 -0
- data/spec/models/retention_metadata_spec.rb +53 -0
- data/spec/models/retention_policy_scope_spec.rb +47 -0
- data/spec/models/retention_policy_spec.rb +65 -0
- data/spec/models/retention_rule_metadata_spec.rb +59 -0
- data/spec/models/retention_rule_param_metadata_spec.rb +53 -0
- data/spec/models/retention_rule_spec.rb +83 -0
- data/spec/models/retention_rule_trigger_spec.rb +53 -0
- data/spec/models/retention_selector_metadata_spec.rb +53 -0
- data/spec/models/retention_selector_spec.rb +59 -0
- data/spec/models/robot_account_access_spec.rb +47 -0
- data/spec/models/robot_account_create_spec.rb +59 -0
- data/spec/models/robot_account_post_rep_spec.rb +47 -0
- data/spec/models/robot_account_spec.rb +83 -0
- data/spec/models/robot_account_update_spec.rb +41 -0
- data/spec/models/role_param_spec.rb +47 -0
- data/spec/models/role_request_spec.rb +41 -0
- data/spec/models/role_spec.rb +59 -0
- data/spec/models/scanner_adapter_metadata_spec.rb +53 -0
- data/spec/models/scanner_capability_spec.rb +47 -0
- data/spec/models/scanner_registration_req_spec.rb +83 -0
- data/spec/models/scanner_registration_settings_spec.rb +59 -0
- data/spec/models/scanner_registration_spec.rb +119 -0
- data/spec/models/scanner_spec.rb +53 -0
- data/spec/models/search_repository_spec.rb +71 -0
- data/spec/models/search_result_spec.rb +53 -0
- data/spec/models/search_spec.rb +53 -0
- data/spec/models/statistic_map_spec.rb +71 -0
- data/spec/models/stats_spec.rb +65 -0
- data/spec/models/storage_spec.rb +47 -0
- data/spec/models/string_config_item_spec.rb +47 -0
- data/spec/models/supported_webhook_event_types_spec.rb +47 -0
- data/spec/models/sys_admin_flag_spec.rb +41 -0
- data/spec/models/system_info_spec.rb +41 -0
- data/spec/models/trigger_settings_spec.rb +41 -0
- data/spec/models/unauthorized_chart_api_error_spec.rb +41 -0
- data/spec/models/user_entity_spec.rb +47 -0
- data/spec/models/user_group_spec.rb +59 -0
- data/spec/models/user_profile_spec.rb +53 -0
- data/spec/models/user_search_spec.rb +47 -0
- data/spec/models/user_spec.rb +125 -0
- data/spec/models/webhook_job_spec.rb +83 -0
- data/spec/models/webhook_last_trigger_spec.rb +59 -0
- data/spec/models/webhook_policy_spec.rb +95 -0
- data/spec/models/webhook_target_object_spec.rb +59 -0
- data/spec/spec_helper.rb +111 -0
- metadata +740 -0
|
@@ -0,0 +1,514 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Harbor API
|
|
3
|
+
|
|
4
|
+
#These APIs provide services for manipulating Harbor project.
|
|
5
|
+
|
|
6
|
+
OpenAPI spec version: 2.0
|
|
7
|
+
|
|
8
|
+
Generated by: https://github.com/swagger-api/swagger-codegen.git
|
|
9
|
+
Swagger Codegen version: 2.4.17
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'date'
|
|
14
|
+
|
|
15
|
+
module Harbor2LegacyClient
|
|
16
|
+
class ConfigurationsResponse
|
|
17
|
+
# The auth mode of current system, such as \"db_auth\", \"ldap_auth\"
|
|
18
|
+
attr_accessor :auth_mode
|
|
19
|
+
|
|
20
|
+
# The default count quota for the new created projects.
|
|
21
|
+
attr_accessor :count_per_project
|
|
22
|
+
|
|
23
|
+
# The sender name for Email notification.
|
|
24
|
+
attr_accessor :email_from
|
|
25
|
+
|
|
26
|
+
# The hostname of SMTP server that sends Email notification.
|
|
27
|
+
attr_accessor :email_host
|
|
28
|
+
|
|
29
|
+
# The port of SMTP server.
|
|
30
|
+
attr_accessor :email_port
|
|
31
|
+
|
|
32
|
+
# By default it's empty so the email_username is picked.
|
|
33
|
+
attr_accessor :email_identity
|
|
34
|
+
|
|
35
|
+
# The username for authenticate against SMTP server.
|
|
36
|
+
attr_accessor :email_username
|
|
37
|
+
|
|
38
|
+
# When it's set to true the system will access Email server via TLS by default. If it's set to false, it still will handle \"STARTTLS\" from server side.
|
|
39
|
+
attr_accessor :email_ssl
|
|
40
|
+
|
|
41
|
+
# Whether or not the certificate will be verified when Harbor tries to access the email server.
|
|
42
|
+
attr_accessor :email_insecure
|
|
43
|
+
|
|
44
|
+
# The URL of LDAP server.
|
|
45
|
+
attr_accessor :ldap_url
|
|
46
|
+
|
|
47
|
+
# The Base DN for LDAP binding.
|
|
48
|
+
attr_accessor :ldap_base_dn
|
|
49
|
+
|
|
50
|
+
# The filter for LDAP binding.
|
|
51
|
+
attr_accessor :ldap_filter
|
|
52
|
+
|
|
53
|
+
# 0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE
|
|
54
|
+
attr_accessor :ldap_scope
|
|
55
|
+
|
|
56
|
+
# The attribute which is used as identity for the LDAP binding, such as \"CN\" or \"SAMAccountname\"
|
|
57
|
+
attr_accessor :ldap_uid
|
|
58
|
+
|
|
59
|
+
# The DN of the user to do the search.
|
|
60
|
+
attr_accessor :ldap_search_dn
|
|
61
|
+
|
|
62
|
+
# timeout in seconds for connection to LDAP server.
|
|
63
|
+
attr_accessor :ldap_timeout
|
|
64
|
+
|
|
65
|
+
# The attribute which is used as identity of the LDAP group, default is cn.
|
|
66
|
+
attr_accessor :ldap_group_attribute_name
|
|
67
|
+
|
|
68
|
+
# The base DN to search LDAP group.
|
|
69
|
+
attr_accessor :ldap_group_base_dn
|
|
70
|
+
|
|
71
|
+
# The filter to search the ldap group.
|
|
72
|
+
attr_accessor :ldap_group_search_filter
|
|
73
|
+
|
|
74
|
+
# The scope to search ldap. '0-LDAP_SCOPE_BASE, 1-LDAP_SCOPE_ONELEVEL, 2-LDAP_SCOPE_SUBTREE'
|
|
75
|
+
attr_accessor :ldap_group_search_scope
|
|
76
|
+
|
|
77
|
+
# Specify the ldap group which have the same privilege with Harbor admin.
|
|
78
|
+
attr_accessor :ldap_group_admin_dn
|
|
79
|
+
|
|
80
|
+
# The client id of the OIDC.
|
|
81
|
+
attr_accessor :oidc_client_id
|
|
82
|
+
|
|
83
|
+
# The URL of an OIDC-complaint server, must start with 'https://'.
|
|
84
|
+
attr_accessor :oidc_endpoint
|
|
85
|
+
|
|
86
|
+
# The name of the OIDC provider.
|
|
87
|
+
attr_accessor :oidc_name
|
|
88
|
+
|
|
89
|
+
# The scope sent to OIDC server during authentication, should be separated by comma. It has to contain “openid”, and “offline_access”. If you are using google, please remove “offline_access” from this field.
|
|
90
|
+
attr_accessor :oidc_scope
|
|
91
|
+
|
|
92
|
+
# Whether verify your OIDC server certificate, disable it if your OIDC server is hosted via self-hosted certificate.
|
|
93
|
+
attr_accessor :oidc_verify_cert
|
|
94
|
+
|
|
95
|
+
# This attribute restricts what users have the permission to create project. It can be \"everyone\" or \"adminonly\".
|
|
96
|
+
attr_accessor :project_creation_restriction
|
|
97
|
+
|
|
98
|
+
# This attribute indicates whether quota per project enabled in harbor
|
|
99
|
+
attr_accessor :quota_per_project_enable
|
|
100
|
+
|
|
101
|
+
# 'docker push' is prohibited by Harbor if you set it to true.
|
|
102
|
+
attr_accessor :read_only
|
|
103
|
+
|
|
104
|
+
# Whether the Harbor instance supports self-registration. If it's set to false, admin need to add user to the instance.
|
|
105
|
+
attr_accessor :self_registration
|
|
106
|
+
|
|
107
|
+
# The default storage quota for the new created projects.
|
|
108
|
+
attr_accessor :storage_per_project
|
|
109
|
+
|
|
110
|
+
# The expiration time of the token for internal Registry, in minutes.
|
|
111
|
+
attr_accessor :token_expiration
|
|
112
|
+
|
|
113
|
+
# Whether or not the certificate will be verified when Harbor tries to access a remote Harbor instance for replication.
|
|
114
|
+
attr_accessor :verify_remote_cert
|
|
115
|
+
|
|
116
|
+
attr_accessor :scan_all_policy
|
|
117
|
+
|
|
118
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
|
119
|
+
def self.attribute_map
|
|
120
|
+
{
|
|
121
|
+
:'auth_mode' => :'auth_mode',
|
|
122
|
+
:'count_per_project' => :'count_per_project',
|
|
123
|
+
:'email_from' => :'email_from',
|
|
124
|
+
:'email_host' => :'email_host',
|
|
125
|
+
:'email_port' => :'email_port',
|
|
126
|
+
:'email_identity' => :'email_identity',
|
|
127
|
+
:'email_username' => :'email_username',
|
|
128
|
+
:'email_ssl' => :'email_ssl',
|
|
129
|
+
:'email_insecure' => :'email_insecure',
|
|
130
|
+
:'ldap_url' => :'ldap_url',
|
|
131
|
+
:'ldap_base_dn' => :'ldap_base_dn',
|
|
132
|
+
:'ldap_filter' => :'ldap_filter',
|
|
133
|
+
:'ldap_scope' => :'ldap_scope',
|
|
134
|
+
:'ldap_uid' => :'ldap_uid',
|
|
135
|
+
:'ldap_search_dn' => :'ldap_search_dn',
|
|
136
|
+
:'ldap_timeout' => :'ldap_timeout',
|
|
137
|
+
:'ldap_group_attribute_name' => :'ldap_group_attribute_name',
|
|
138
|
+
:'ldap_group_base_dn' => :'ldap_group_base_dn',
|
|
139
|
+
:'ldap_group_search_filter' => :'ldap_group_search_filter',
|
|
140
|
+
:'ldap_group_search_scope' => :'ldap_group_search_scope',
|
|
141
|
+
:'ldap_group_admin_dn' => :'ldap_group_admin_dn',
|
|
142
|
+
:'oidc_client_id' => :'oidc_client_id',
|
|
143
|
+
:'oidc_endpoint' => :'oidc_endpoint',
|
|
144
|
+
:'oidc_name' => :'oidc_name',
|
|
145
|
+
:'oidc_scope' => :'oidc_scope',
|
|
146
|
+
:'oidc_verify_cert' => :'oidc_verify_cert',
|
|
147
|
+
:'project_creation_restriction' => :'project_creation_restriction',
|
|
148
|
+
:'quota_per_project_enable' => :'quota_per_project_enable',
|
|
149
|
+
:'read_only' => :'read_only',
|
|
150
|
+
:'self_registration' => :'self_registration',
|
|
151
|
+
:'storage_per_project' => :'storage_per_project',
|
|
152
|
+
:'token_expiration' => :'token_expiration',
|
|
153
|
+
:'verify_remote_cert' => :'verify_remote_cert',
|
|
154
|
+
:'scan_all_policy' => :'scan_all_policy'
|
|
155
|
+
}
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# Attribute type mapping.
|
|
159
|
+
def self.swagger_types
|
|
160
|
+
{
|
|
161
|
+
:'auth_mode' => :'StringConfigItem',
|
|
162
|
+
:'count_per_project' => :'IntegerConfigItem',
|
|
163
|
+
:'email_from' => :'StringConfigItem',
|
|
164
|
+
:'email_host' => :'StringConfigItem',
|
|
165
|
+
:'email_port' => :'IntegerConfigItem',
|
|
166
|
+
:'email_identity' => :'StringConfigItem',
|
|
167
|
+
:'email_username' => :'StringConfigItem',
|
|
168
|
+
:'email_ssl' => :'BoolConfigItem',
|
|
169
|
+
:'email_insecure' => :'BoolConfigItem',
|
|
170
|
+
:'ldap_url' => :'StringConfigItem',
|
|
171
|
+
:'ldap_base_dn' => :'StringConfigItem',
|
|
172
|
+
:'ldap_filter' => :'StringConfigItem',
|
|
173
|
+
:'ldap_scope' => :'Integer',
|
|
174
|
+
:'ldap_uid' => :'StringConfigItem',
|
|
175
|
+
:'ldap_search_dn' => :'String',
|
|
176
|
+
:'ldap_timeout' => :'IntegerConfigItem',
|
|
177
|
+
:'ldap_group_attribute_name' => :'StringConfigItem',
|
|
178
|
+
:'ldap_group_base_dn' => :'StringConfigItem',
|
|
179
|
+
:'ldap_group_search_filter' => :'StringConfigItem',
|
|
180
|
+
:'ldap_group_search_scope' => :'IntegerConfigItem',
|
|
181
|
+
:'ldap_group_admin_dn' => :'StringConfigItem',
|
|
182
|
+
:'oidc_client_id' => :'StringConfigItem',
|
|
183
|
+
:'oidc_endpoint' => :'StringConfigItem',
|
|
184
|
+
:'oidc_name' => :'StringConfigItem',
|
|
185
|
+
:'oidc_scope' => :'StringConfigItem',
|
|
186
|
+
:'oidc_verify_cert' => :'BoolConfigItem',
|
|
187
|
+
:'project_creation_restriction' => :'StringConfigItem',
|
|
188
|
+
:'quota_per_project_enable' => :'BoolConfigItem',
|
|
189
|
+
:'read_only' => :'BoolConfigItem',
|
|
190
|
+
:'self_registration' => :'BoolConfigItem',
|
|
191
|
+
:'storage_per_project' => :'IntegerConfigItem',
|
|
192
|
+
:'token_expiration' => :'IntegerConfigItem',
|
|
193
|
+
:'verify_remote_cert' => :'BoolConfigItem',
|
|
194
|
+
:'scan_all_policy' => :'ConfigurationsScanAllPolicy'
|
|
195
|
+
}
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
# Initializes the object
|
|
199
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
200
|
+
def initialize(attributes = {})
|
|
201
|
+
return unless attributes.is_a?(Hash)
|
|
202
|
+
|
|
203
|
+
# convert string to symbol for hash key
|
|
204
|
+
attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
|
|
205
|
+
|
|
206
|
+
if attributes.has_key?(:'auth_mode')
|
|
207
|
+
self.auth_mode = attributes[:'auth_mode']
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
if attributes.has_key?(:'count_per_project')
|
|
211
|
+
self.count_per_project = attributes[:'count_per_project']
|
|
212
|
+
end
|
|
213
|
+
|
|
214
|
+
if attributes.has_key?(:'email_from')
|
|
215
|
+
self.email_from = attributes[:'email_from']
|
|
216
|
+
end
|
|
217
|
+
|
|
218
|
+
if attributes.has_key?(:'email_host')
|
|
219
|
+
self.email_host = attributes[:'email_host']
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
if attributes.has_key?(:'email_port')
|
|
223
|
+
self.email_port = attributes[:'email_port']
|
|
224
|
+
end
|
|
225
|
+
|
|
226
|
+
if attributes.has_key?(:'email_identity')
|
|
227
|
+
self.email_identity = attributes[:'email_identity']
|
|
228
|
+
end
|
|
229
|
+
|
|
230
|
+
if attributes.has_key?(:'email_username')
|
|
231
|
+
self.email_username = attributes[:'email_username']
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
if attributes.has_key?(:'email_ssl')
|
|
235
|
+
self.email_ssl = attributes[:'email_ssl']
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
if attributes.has_key?(:'email_insecure')
|
|
239
|
+
self.email_insecure = attributes[:'email_insecure']
|
|
240
|
+
end
|
|
241
|
+
|
|
242
|
+
if attributes.has_key?(:'ldap_url')
|
|
243
|
+
self.ldap_url = attributes[:'ldap_url']
|
|
244
|
+
end
|
|
245
|
+
|
|
246
|
+
if attributes.has_key?(:'ldap_base_dn')
|
|
247
|
+
self.ldap_base_dn = attributes[:'ldap_base_dn']
|
|
248
|
+
end
|
|
249
|
+
|
|
250
|
+
if attributes.has_key?(:'ldap_filter')
|
|
251
|
+
self.ldap_filter = attributes[:'ldap_filter']
|
|
252
|
+
end
|
|
253
|
+
|
|
254
|
+
if attributes.has_key?(:'ldap_scope')
|
|
255
|
+
self.ldap_scope = attributes[:'ldap_scope']
|
|
256
|
+
end
|
|
257
|
+
|
|
258
|
+
if attributes.has_key?(:'ldap_uid')
|
|
259
|
+
self.ldap_uid = attributes[:'ldap_uid']
|
|
260
|
+
end
|
|
261
|
+
|
|
262
|
+
if attributes.has_key?(:'ldap_search_dn')
|
|
263
|
+
self.ldap_search_dn = attributes[:'ldap_search_dn']
|
|
264
|
+
end
|
|
265
|
+
|
|
266
|
+
if attributes.has_key?(:'ldap_timeout')
|
|
267
|
+
self.ldap_timeout = attributes[:'ldap_timeout']
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
if attributes.has_key?(:'ldap_group_attribute_name')
|
|
271
|
+
self.ldap_group_attribute_name = attributes[:'ldap_group_attribute_name']
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
if attributes.has_key?(:'ldap_group_base_dn')
|
|
275
|
+
self.ldap_group_base_dn = attributes[:'ldap_group_base_dn']
|
|
276
|
+
end
|
|
277
|
+
|
|
278
|
+
if attributes.has_key?(:'ldap_group_search_filter')
|
|
279
|
+
self.ldap_group_search_filter = attributes[:'ldap_group_search_filter']
|
|
280
|
+
end
|
|
281
|
+
|
|
282
|
+
if attributes.has_key?(:'ldap_group_search_scope')
|
|
283
|
+
self.ldap_group_search_scope = attributes[:'ldap_group_search_scope']
|
|
284
|
+
end
|
|
285
|
+
|
|
286
|
+
if attributes.has_key?(:'ldap_group_admin_dn')
|
|
287
|
+
self.ldap_group_admin_dn = attributes[:'ldap_group_admin_dn']
|
|
288
|
+
end
|
|
289
|
+
|
|
290
|
+
if attributes.has_key?(:'oidc_client_id')
|
|
291
|
+
self.oidc_client_id = attributes[:'oidc_client_id']
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
if attributes.has_key?(:'oidc_endpoint')
|
|
295
|
+
self.oidc_endpoint = attributes[:'oidc_endpoint']
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
if attributes.has_key?(:'oidc_name')
|
|
299
|
+
self.oidc_name = attributes[:'oidc_name']
|
|
300
|
+
end
|
|
301
|
+
|
|
302
|
+
if attributes.has_key?(:'oidc_scope')
|
|
303
|
+
self.oidc_scope = attributes[:'oidc_scope']
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
if attributes.has_key?(:'oidc_verify_cert')
|
|
307
|
+
self.oidc_verify_cert = attributes[:'oidc_verify_cert']
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
if attributes.has_key?(:'project_creation_restriction')
|
|
311
|
+
self.project_creation_restriction = attributes[:'project_creation_restriction']
|
|
312
|
+
end
|
|
313
|
+
|
|
314
|
+
if attributes.has_key?(:'quota_per_project_enable')
|
|
315
|
+
self.quota_per_project_enable = attributes[:'quota_per_project_enable']
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
if attributes.has_key?(:'read_only')
|
|
319
|
+
self.read_only = attributes[:'read_only']
|
|
320
|
+
end
|
|
321
|
+
|
|
322
|
+
if attributes.has_key?(:'self_registration')
|
|
323
|
+
self.self_registration = attributes[:'self_registration']
|
|
324
|
+
end
|
|
325
|
+
|
|
326
|
+
if attributes.has_key?(:'storage_per_project')
|
|
327
|
+
self.storage_per_project = attributes[:'storage_per_project']
|
|
328
|
+
end
|
|
329
|
+
|
|
330
|
+
if attributes.has_key?(:'token_expiration')
|
|
331
|
+
self.token_expiration = attributes[:'token_expiration']
|
|
332
|
+
end
|
|
333
|
+
|
|
334
|
+
if attributes.has_key?(:'verify_remote_cert')
|
|
335
|
+
self.verify_remote_cert = attributes[:'verify_remote_cert']
|
|
336
|
+
end
|
|
337
|
+
|
|
338
|
+
if attributes.has_key?(:'scan_all_policy')
|
|
339
|
+
self.scan_all_policy = attributes[:'scan_all_policy']
|
|
340
|
+
end
|
|
341
|
+
end
|
|
342
|
+
|
|
343
|
+
# Show invalid properties with the reasons. Usually used together with valid?
|
|
344
|
+
# @return Array for valid properties with the reasons
|
|
345
|
+
def list_invalid_properties
|
|
346
|
+
invalid_properties = Array.new
|
|
347
|
+
invalid_properties
|
|
348
|
+
end
|
|
349
|
+
|
|
350
|
+
# Check to see if the all the properties in the model are valid
|
|
351
|
+
# @return true if the model is valid
|
|
352
|
+
def valid?
|
|
353
|
+
true
|
|
354
|
+
end
|
|
355
|
+
|
|
356
|
+
# Checks equality by comparing each attribute.
|
|
357
|
+
# @param [Object] Object to be compared
|
|
358
|
+
def ==(o)
|
|
359
|
+
return true if self.equal?(o)
|
|
360
|
+
self.class == o.class &&
|
|
361
|
+
auth_mode == o.auth_mode &&
|
|
362
|
+
count_per_project == o.count_per_project &&
|
|
363
|
+
email_from == o.email_from &&
|
|
364
|
+
email_host == o.email_host &&
|
|
365
|
+
email_port == o.email_port &&
|
|
366
|
+
email_identity == o.email_identity &&
|
|
367
|
+
email_username == o.email_username &&
|
|
368
|
+
email_ssl == o.email_ssl &&
|
|
369
|
+
email_insecure == o.email_insecure &&
|
|
370
|
+
ldap_url == o.ldap_url &&
|
|
371
|
+
ldap_base_dn == o.ldap_base_dn &&
|
|
372
|
+
ldap_filter == o.ldap_filter &&
|
|
373
|
+
ldap_scope == o.ldap_scope &&
|
|
374
|
+
ldap_uid == o.ldap_uid &&
|
|
375
|
+
ldap_search_dn == o.ldap_search_dn &&
|
|
376
|
+
ldap_timeout == o.ldap_timeout &&
|
|
377
|
+
ldap_group_attribute_name == o.ldap_group_attribute_name &&
|
|
378
|
+
ldap_group_base_dn == o.ldap_group_base_dn &&
|
|
379
|
+
ldap_group_search_filter == o.ldap_group_search_filter &&
|
|
380
|
+
ldap_group_search_scope == o.ldap_group_search_scope &&
|
|
381
|
+
ldap_group_admin_dn == o.ldap_group_admin_dn &&
|
|
382
|
+
oidc_client_id == o.oidc_client_id &&
|
|
383
|
+
oidc_endpoint == o.oidc_endpoint &&
|
|
384
|
+
oidc_name == o.oidc_name &&
|
|
385
|
+
oidc_scope == o.oidc_scope &&
|
|
386
|
+
oidc_verify_cert == o.oidc_verify_cert &&
|
|
387
|
+
project_creation_restriction == o.project_creation_restriction &&
|
|
388
|
+
quota_per_project_enable == o.quota_per_project_enable &&
|
|
389
|
+
read_only == o.read_only &&
|
|
390
|
+
self_registration == o.self_registration &&
|
|
391
|
+
storage_per_project == o.storage_per_project &&
|
|
392
|
+
token_expiration == o.token_expiration &&
|
|
393
|
+
verify_remote_cert == o.verify_remote_cert &&
|
|
394
|
+
scan_all_policy == o.scan_all_policy
|
|
395
|
+
end
|
|
396
|
+
|
|
397
|
+
# @see the `==` method
|
|
398
|
+
# @param [Object] Object to be compared
|
|
399
|
+
def eql?(o)
|
|
400
|
+
self == o
|
|
401
|
+
end
|
|
402
|
+
|
|
403
|
+
# Calculates hash code according to all attributes.
|
|
404
|
+
# @return [Fixnum] Hash code
|
|
405
|
+
def hash
|
|
406
|
+
[auth_mode, count_per_project, email_from, email_host, email_port, email_identity, email_username, email_ssl, email_insecure, ldap_url, ldap_base_dn, ldap_filter, ldap_scope, ldap_uid, ldap_search_dn, ldap_timeout, ldap_group_attribute_name, ldap_group_base_dn, ldap_group_search_filter, ldap_group_search_scope, ldap_group_admin_dn, oidc_client_id, oidc_endpoint, oidc_name, oidc_scope, oidc_verify_cert, project_creation_restriction, quota_per_project_enable, read_only, self_registration, storage_per_project, token_expiration, verify_remote_cert, scan_all_policy].hash
|
|
407
|
+
end
|
|
408
|
+
|
|
409
|
+
# Builds the object from hash
|
|
410
|
+
# @param [Hash] attributes Model attributes in the form of hash
|
|
411
|
+
# @return [Object] Returns the model itself
|
|
412
|
+
def build_from_hash(attributes)
|
|
413
|
+
return nil unless attributes.is_a?(Hash)
|
|
414
|
+
self.class.swagger_types.each_pair do |key, type|
|
|
415
|
+
if type =~ /\AArray<(.*)>/i
|
|
416
|
+
# check to ensure the input is an array given that the attribute
|
|
417
|
+
# is documented as an array but the input is not
|
|
418
|
+
if attributes[self.class.attribute_map[key]].is_a?(Array)
|
|
419
|
+
self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
|
|
420
|
+
end
|
|
421
|
+
elsif !attributes[self.class.attribute_map[key]].nil?
|
|
422
|
+
self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
|
|
423
|
+
end # or else data not found in attributes(hash), not an issue as the data can be optional
|
|
424
|
+
end
|
|
425
|
+
|
|
426
|
+
self
|
|
427
|
+
end
|
|
428
|
+
|
|
429
|
+
# Deserializes the data based on type
|
|
430
|
+
# @param string type Data type
|
|
431
|
+
# @param string value Value to be deserialized
|
|
432
|
+
# @return [Object] Deserialized data
|
|
433
|
+
def _deserialize(type, value)
|
|
434
|
+
case type.to_sym
|
|
435
|
+
when :DateTime
|
|
436
|
+
DateTime.parse(value)
|
|
437
|
+
when :Date
|
|
438
|
+
Date.parse(value)
|
|
439
|
+
when :String
|
|
440
|
+
value.to_s
|
|
441
|
+
when :Integer
|
|
442
|
+
value.to_i
|
|
443
|
+
when :Float
|
|
444
|
+
value.to_f
|
|
445
|
+
when :BOOLEAN
|
|
446
|
+
if value.to_s =~ /\A(true|t|yes|y|1)\z/i
|
|
447
|
+
true
|
|
448
|
+
else
|
|
449
|
+
false
|
|
450
|
+
end
|
|
451
|
+
when :Object
|
|
452
|
+
# generic object (usually a Hash), return directly
|
|
453
|
+
value
|
|
454
|
+
when /\AArray<(?<inner_type>.+)>\z/
|
|
455
|
+
inner_type = Regexp.last_match[:inner_type]
|
|
456
|
+
value.map { |v| _deserialize(inner_type, v) }
|
|
457
|
+
when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
|
|
458
|
+
k_type = Regexp.last_match[:k_type]
|
|
459
|
+
v_type = Regexp.last_match[:v_type]
|
|
460
|
+
{}.tap do |hash|
|
|
461
|
+
value.each do |k, v|
|
|
462
|
+
hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
|
|
463
|
+
end
|
|
464
|
+
end
|
|
465
|
+
else # model
|
|
466
|
+
temp_model = Harbor2LegacyClient.const_get(type).new
|
|
467
|
+
temp_model.build_from_hash(value)
|
|
468
|
+
end
|
|
469
|
+
end
|
|
470
|
+
|
|
471
|
+
# Returns the string representation of the object
|
|
472
|
+
# @return [String] String presentation of the object
|
|
473
|
+
def to_s
|
|
474
|
+
to_hash.to_s
|
|
475
|
+
end
|
|
476
|
+
|
|
477
|
+
# to_body is an alias to to_hash (backward compatibility)
|
|
478
|
+
# @return [Hash] Returns the object in the form of hash
|
|
479
|
+
def to_body
|
|
480
|
+
to_hash
|
|
481
|
+
end
|
|
482
|
+
|
|
483
|
+
# Returns the object in the form of hash
|
|
484
|
+
# @return [Hash] Returns the object in the form of hash
|
|
485
|
+
def to_hash
|
|
486
|
+
hash = {}
|
|
487
|
+
self.class.attribute_map.each_pair do |attr, param|
|
|
488
|
+
value = self.send(attr)
|
|
489
|
+
next if value.nil?
|
|
490
|
+
hash[param] = _to_hash(value)
|
|
491
|
+
end
|
|
492
|
+
hash
|
|
493
|
+
end
|
|
494
|
+
|
|
495
|
+
# Outputs non-array value in the form of hash
|
|
496
|
+
# For object, use to_hash. Otherwise, just return the value
|
|
497
|
+
# @param [Object] value Any valid value
|
|
498
|
+
# @return [Hash] Returns the value in the form of hash
|
|
499
|
+
def _to_hash(value)
|
|
500
|
+
if value.is_a?(Array)
|
|
501
|
+
value.compact.map { |v| _to_hash(v) }
|
|
502
|
+
elsif value.is_a?(Hash)
|
|
503
|
+
{}.tap do |hash|
|
|
504
|
+
value.each { |k, v| hash[k] = _to_hash(v) }
|
|
505
|
+
end
|
|
506
|
+
elsif value.respond_to? :to_hash
|
|
507
|
+
value.to_hash
|
|
508
|
+
else
|
|
509
|
+
value
|
|
510
|
+
end
|
|
511
|
+
end
|
|
512
|
+
|
|
513
|
+
end
|
|
514
|
+
end
|