diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index 9834ec958..3461bf684 100644 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -3ae6f76120079424c8654263eafbc30ec0551854 \ No newline at end of file +6701524136501ef070774942ef5d6e01cfaafb88 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes index c4d456976..9e1453351 100755 --- a/.gitattributes +++ b/.gitattributes @@ -44,6 +44,19 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppDeploymentA databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppDeploymentMode.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppDeploymentState.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppDeploymentStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpecJobPermission.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpecSecretPermission.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpecServingEndpointPermission.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpec.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurablePermission.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurableType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppPermission.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppPermissionLevel.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppPermissions.java linguist-generated=true @@ -68,23 +81,33 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ApplicationSta databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsAPI.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ComputeState.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ComputeStatus.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateAppDeploymentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateAppRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateCustomTemplateRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CustomTemplate.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/DeleteAppRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/DeleteCustomTemplateRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetAppDeploymentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetAppPermissionLevelsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetAppPermissionLevelsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetAppPermissionsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetAppRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetCustomTemplateRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListAppDeploymentsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListAppDeploymentsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListAppsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListAppsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/StartAppRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/StopAppRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/UpdateAppRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/UpdateCustomTemplateRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/ActionConfiguration.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/ActionConfigurationType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/AlertConfiguration.java linguist-generated=true @@ -157,6 +180,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/UsageDashbo databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedCreateLogDeliveryConfiguration.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedLogDeliveryConfiguration.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedLogDeliveryConfigurations.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccessRequestDestinations.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountMetastoreAssignmentsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountMetastoreAssignmentsImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountMetastoreAssignmentsService.java linguist-generated=true @@ -193,6 +217,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureManage databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureQueueStorage.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureServicePrincipal.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AzureUserDelegationSas.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CancelRefreshRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CatalogInfo.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CatalogIsolationMode.java linguist-generated=true @@ -213,9 +239,12 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Connections databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionsImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionsService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ContinuousUpdateStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequestResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateCatalog.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateConnection.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateCredentialRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateEntityTagAssignmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateExternalLineageRelationshipRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateExternalLocation.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateExternalMetadataRequest.java linguist-generated=true @@ -256,6 +285,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteAlias databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteCatalogRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteConnectionRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteCredentialRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteEntityTagAssignmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteExternalLineageRelationshipRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteExternalLocationRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteExternalMetadataRequest.java linguist-generated=true @@ -278,6 +308,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeltaRuntim databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeltaSharingScopeEnum.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Dependency.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DependencyList.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DestinationType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DisableRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePermissionsList.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePredictiveOptimizationFlag.java linguist-generated=true @@ -287,7 +318,10 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EffectivePr databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnablePredictiveOptimization.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnableRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EncryptionDetails.java linguist-generated=true -databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnvironmentSettings.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignment.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsAPI.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ExistsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ExternalLineageAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ExternalLineageExternalMetadata.java linguist-generated=true @@ -338,6 +372,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GenerateTem databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GenerateTemporaryServiceCredentialRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GenerateTemporaryTableCredentialRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GenerateTemporaryTableCredentialResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccessRequestDestinationsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountMetastoreAssignmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountMetastoreRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccountStorageCredentialRequest.java linguist-generated=true @@ -349,6 +384,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetCatalogW databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetConnectionRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetCredentialRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEffectiveRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEntityTagAssignmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetExternalLocationRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetExternalMetadataRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetFunctionRequest.java linguist-generated=true @@ -384,6 +420,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListConnect databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListConnectionsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListCredentialsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListCredentialsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListExternalLineageRelationshipsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListExternalLineageRelationshipsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListExternalLocationsRequest.java linguist-generated=true @@ -445,6 +483,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MonitorRefr databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MonitorSnapshot.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/MonitorTimeSeries.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/NamedTableConstraint.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/NotificationDestination.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/OnlineTable.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/OnlineTableSpec.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/OnlineTableSpecContinuousSchedulingPolicy.java linguist-generated=true @@ -466,6 +505,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PoliciesSer databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyInfo.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrimaryKeyConstraint.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Principal.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrincipalType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Privilege.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrivilegeAssignment.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ProvisioningInfo.java linguist-generated=true @@ -487,17 +528,23 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RegisteredM databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ResourceQuotasAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ResourceQuotasImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ResourceQuotasService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaAPI.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RowFilterOptions.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RunRefreshRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SchemaInfo.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SchemasAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SchemasImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SchemasService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Securable.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurableKind.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurableKindManifest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurablePermissions.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurableType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SetArtifactAllowlist.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SetRegisteredModelAliasRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SpecialDestination.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SseEncryptionDetails.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SseEncryptionDetailsAlgorithm.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/StorageCredentialInfo.java linguist-generated=true @@ -533,10 +580,12 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/TemporaryTa databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/TemporaryTableCredentialsService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/TriggeredUpdateStatus.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UnassignRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateAccessRequestDestinationsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateCatalog.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateCatalogWorkspaceBindingsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateConnection.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateCredentialRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateEntityTagAssignmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateExternalLineageRelationshipRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateExternalLocation.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateExternalMetadataRequest.java linguist-generated=true @@ -876,9 +925,11 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieAtt databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieConversation.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieConversationSummary.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieCreateConversationMessageRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieDeleteConversationMessageRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieDeleteConversationRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieExecuteMessageAttachmentQueryRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieExecuteMessageQueryRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieFeedbackRating.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGetConversationMessageRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGetMessageAttachmentQueryResultRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGetMessageQueryResultRequest.java linguist-generated=true @@ -886,6 +937,8 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGet databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGetQueryResultByAttachmentRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieGetSpaceRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListSpacesRequest.java linguist-generated=true @@ -893,6 +946,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieLis databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieMessage.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieQueryAttachment.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieResultMetadata.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieSendMessageFeedbackRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieSpace.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieStartConversationMessageRequest.java linguist-generated=true @@ -2391,6 +2445,41 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/settings/WorkspaceN databricks-sdk-java/src/main/java/com/databricks/sdk/service/settings/WorkspaceNetworkConfigurationImpl.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/settings/WorkspaceNetworkConfigurationService.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/settings/WorkspaceNetworkOption.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2API.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Impl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Service.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicy.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicyAccessPolicyType.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingApprovedDomains.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/BooleanMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageEnablementDetails.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindow.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowDayOfWeek.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWindowStartTime.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessageStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicAccountSettingRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicWorkspaceSettingRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/IntegerMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicAccountSettingRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicWorkspaceSettingRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessagePersonalComputeMessageEnum.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessageStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/SettingsMetadata.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/StringMessage.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2API.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Impl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Service.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/AuthenticationType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/ColumnTypeName.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/CreateFederationPolicyRequest.java linguist-generated=true @@ -2505,6 +2594,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2Notifica databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2Operand.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2OperandColumn.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2OperandValue.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2RunAs.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2Subscription.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertsImpl.java linguist-generated=true @@ -2731,6 +2821,17 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/WarehousesServi databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/Widget.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/WidgetOptions.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/WidgetPosition.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/CreateTagPolicyRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/DeleteTagPolicyRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/GetTagPolicyRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesAPI.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPolicy.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/UpdateTagPolicyRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/Value.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/ColumnInfo.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/CreateEndpoint.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/CreateVectorIndexRequest.java linguist-generated=true diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index 0e935faf2..6a17c2fc7 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -14,3 +14,23 @@ ### Internal Changes ### API Changes +* Added `com.databricks.sdk.service.settingsv2` and `com.databricks.sdk.service.tags` packages. +* Added `workspaceClient.appsSettings()` service. +* Added `workspaceClient.entityTagAssignments()` service and `workspaceClient.rfa()` service. +* Added `accountClient.accountSettingsV2()` service and `workspaceClient.workspaceSettingsV2()` service. +* Added `workspaceClient.tagPolicies()` service. +* Added `deleteConversationMessage()`, `listConversationMessages()` and `sendMessageFeedback()` methods for `workspaceClient.genie()` service. +* Added `includeAll` field for `com.databricks.sdk.service.dashboards.GenieListConversationsRequest`. +* Added `effectiveUsagePolicyId` field for `com.databricks.sdk.service.jobs.BaseJob`. +* Added `effectiveUsagePolicyId` field for `com.databricks.sdk.service.jobs.BaseRun`. +* Added `effectiveUsagePolicyId` field for `com.databricks.sdk.service.jobs.Job`. +* Added `effectiveUsagePolicyId` field for `com.databricks.sdk.service.jobs.Run`. +* Added `tokens` field for `com.databricks.sdk.service.serving.AiGatewayRateLimit`. +* Added `usagePolicyId` field for `com.databricks.sdk.service.serving.ServingEndpoint`. +* Added `effectiveRunAs` and `runAs` fields for `com.databricks.sdk.service.sql.AlertV2`. +* Added `cacheQueryId` field for `com.databricks.sdk.service.sql.QueryInfo`. +* Added `modelEndpointNameForQuery` field for `com.databricks.sdk.service.vectorsearch.EmbeddingSourceColumn`. +* [Breaking] Removed `environmentSettings` field for `com.databricks.sdk.service.catalog.ConnectionInfo`. +* [Breaking] Removed `environmentSettings` field for `com.databricks.sdk.service.catalog.CreateConnection`. +* [Breaking] Removed `environmentSettings` field for `com.databricks.sdk.service.catalog.UpdateConnection`. +* [Breaking] Removed `comment`, `displayName` and `tags` fields for `com.databricks.sdk.service.sharing.Share`. \ No newline at end of file diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/AccountClient.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/AccountClient.java index 9701ceb5c..b0c8a74fe 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/AccountClient.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/AccountClient.java @@ -69,6 +69,8 @@ import com.databricks.sdk.service.settings.NetworkPoliciesService; import com.databricks.sdk.service.settings.WorkspaceNetworkConfigurationAPI; import com.databricks.sdk.service.settings.WorkspaceNetworkConfigurationService; +import com.databricks.sdk.service.settingsv2.AccountSettingsV2API; +import com.databricks.sdk.service.settingsv2.AccountSettingsV2Service; import com.databricks.sdk.support.Generated; /** Entry point for accessing Databricks account-level APIs */ @@ -100,6 +102,7 @@ public class AccountClient { private ServicePrincipalSecretsAPI servicePrincipalSecretsAPI; private AccountServicePrincipalsAPI servicePrincipalsAPI; private AccountSettingsAPI settingsAPI; + private AccountSettingsV2API settingsV2API; private StorageAPI storageAPI; private AccountStorageCredentialsAPI storageCredentialsAPI; private UsageDashboardsAPI usageDashboardsAPI; @@ -140,6 +143,7 @@ public AccountClient(DatabricksConfig config) { servicePrincipalSecretsAPI = new ServicePrincipalSecretsAPI(apiClient); servicePrincipalsAPI = new AccountServicePrincipalsAPI(apiClient); settingsAPI = new AccountSettingsAPI(apiClient); + settingsV2API = new AccountSettingsV2API(apiClient); storageAPI = new StorageAPI(apiClient); storageCredentialsAPI = new AccountStorageCredentialsAPI(apiClient); usageDashboardsAPI = new UsageDashboardsAPI(apiClient); @@ -533,6 +537,11 @@ public AccountSettingsAPI settings() { return settingsAPI; } + /** APIs to manage account level settings */ + public AccountSettingsV2API settingsV2() { + return settingsV2API; + } + /** * These APIs manage storage configurations for this workspace. A root storage S3 bucket in your * account is required to store objects like cluster logs, notebook revisions, and job results. @@ -880,6 +889,17 @@ public AccountClient withSettingsAPI(AccountSettingsAPI accountSettings) { return this; } + /** Replace the default AccountSettingsV2Service with a custom implementation. */ + public AccountClient withSettingsV2Impl(AccountSettingsV2Service accountSettingsV2) { + return this.withSettingsV2API(new AccountSettingsV2API(accountSettingsV2)); + } + + /** Replace the default AccountSettingsV2API with a custom implementation. */ + public AccountClient withSettingsV2API(AccountSettingsV2API accountSettingsV2) { + this.settingsV2API = accountSettingsV2; + return this; + } + /** Replace the default StorageService with a custom implementation. */ public AccountClient withStorageImpl(StorageService storage) { return this.withStorageAPI(new StorageAPI(storage)); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java index 51628d922..c8c302cc8 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java @@ -12,6 +12,8 @@ import com.databricks.sdk.service.agentbricks.AgentBricksService; import com.databricks.sdk.service.apps.AppsAPI; import com.databricks.sdk.service.apps.AppsService; +import com.databricks.sdk.service.apps.AppsSettingsAPI; +import com.databricks.sdk.service.apps.AppsSettingsService; import com.databricks.sdk.service.catalog.ArtifactAllowlistsAPI; import com.databricks.sdk.service.catalog.ArtifactAllowlistsService; import com.databricks.sdk.service.catalog.CatalogsAPI; @@ -20,6 +22,8 @@ import com.databricks.sdk.service.catalog.ConnectionsService; import com.databricks.sdk.service.catalog.CredentialsAPI; import com.databricks.sdk.service.catalog.CredentialsService; +import com.databricks.sdk.service.catalog.EntityTagAssignmentsAPI; +import com.databricks.sdk.service.catalog.EntityTagAssignmentsService; import com.databricks.sdk.service.catalog.ExternalLineageAPI; import com.databricks.sdk.service.catalog.ExternalLineageService; import com.databricks.sdk.service.catalog.ExternalLocationsAPI; @@ -44,6 +48,8 @@ import com.databricks.sdk.service.catalog.RegisteredModelsService; import com.databricks.sdk.service.catalog.ResourceQuotasAPI; import com.databricks.sdk.service.catalog.ResourceQuotasService; +import com.databricks.sdk.service.catalog.RfaAPI; +import com.databricks.sdk.service.catalog.RfaService; import com.databricks.sdk.service.catalog.SchemasAPI; import com.databricks.sdk.service.catalog.SchemasService; import com.databricks.sdk.service.catalog.StorageCredentialsAPI; @@ -178,6 +184,8 @@ import com.databricks.sdk.service.settings.TokensService; import com.databricks.sdk.service.settings.WorkspaceConfAPI; import com.databricks.sdk.service.settings.WorkspaceConfService; +import com.databricks.sdk.service.settingsv2.WorkspaceSettingsV2API; +import com.databricks.sdk.service.settingsv2.WorkspaceSettingsV2Service; import com.databricks.sdk.service.sharing.ProvidersAPI; import com.databricks.sdk.service.sharing.ProvidersService; import com.databricks.sdk.service.sharing.RecipientActivationAPI; @@ -218,6 +226,8 @@ import com.databricks.sdk.service.sql.StatementExecutionService; import com.databricks.sdk.service.sql.WarehousesAPI; import com.databricks.sdk.service.sql.WarehousesService; +import com.databricks.sdk.service.tags.TagPoliciesAPI; +import com.databricks.sdk.service.tags.TagPoliciesService; import com.databricks.sdk.service.vectorsearch.VectorSearchEndpointsAPI; import com.databricks.sdk.service.vectorsearch.VectorSearchEndpointsService; import com.databricks.sdk.service.vectorsearch.VectorSearchIndexesAPI; @@ -244,6 +254,7 @@ public class WorkspaceClient { private AlertsLegacyAPI alertsLegacyAPI; private AlertsV2API alertsV2API; private AppsAPI appsAPI; + private AppsSettingsAPI appsSettingsAPI; private ArtifactAllowlistsAPI artifactAllowlistsAPI; private CatalogsAPI catalogsAPI; private CleanRoomAssetRevisionsAPI cleanRoomAssetRevisionsAPI; @@ -269,6 +280,7 @@ public class WorkspaceClient { private DatabaseAPI databaseAPI; private DbfsExt dbfsAPI; private DbsqlPermissionsAPI dbsqlPermissionsAPI; + private EntityTagAssignmentsAPI entityTagAssignmentsAPI; private ExperimentsAPI experimentsAPI; private ExternalLineageAPI externalLineageAPI; private ExternalLocationsAPI externalLocationsAPI; @@ -324,6 +336,7 @@ public class WorkspaceClient { private RegisteredModelsAPI registeredModelsAPI; private ReposAPI reposAPI; private ResourceQuotasAPI resourceQuotasAPI; + private RfaAPI rfaAPI; private SchemasAPI schemasAPI; private SecretsExt secretsAPI; private ServicePrincipalSecretsProxyAPI servicePrincipalSecretsProxyAPI; @@ -337,6 +350,7 @@ public class WorkspaceClient { private SystemSchemasAPI systemSchemasAPI; private TableConstraintsAPI tableConstraintsAPI; private TablesAPI tablesAPI; + private TagPoliciesAPI tagPoliciesAPI; private TemporaryPathCredentialsAPI temporaryPathCredentialsAPI; private TemporaryTableCredentialsAPI temporaryTableCredentialsAPI; private TokenManagementAPI tokenManagementAPI; @@ -349,6 +363,7 @@ public class WorkspaceClient { private WorkspaceAPI workspaceAPI; private WorkspaceBindingsAPI workspaceBindingsAPI; private WorkspaceConfAPI workspaceConfAPI; + private WorkspaceSettingsV2API workspaceSettingsV2API; public WorkspaceClient() { this(ConfigLoader.getDefault()); @@ -364,6 +379,7 @@ public WorkspaceClient(DatabricksConfig config) { alertsLegacyAPI = new AlertsLegacyAPI(apiClient); alertsV2API = new AlertsV2API(apiClient); appsAPI = new AppsAPI(apiClient); + appsSettingsAPI = new AppsSettingsAPI(apiClient); artifactAllowlistsAPI = new ArtifactAllowlistsAPI(apiClient); catalogsAPI = new CatalogsAPI(apiClient); cleanRoomAssetRevisionsAPI = new CleanRoomAssetRevisionsAPI(apiClient); @@ -389,6 +405,7 @@ public WorkspaceClient(DatabricksConfig config) { databaseAPI = new DatabaseAPI(apiClient); dbfsAPI = new DbfsExt(apiClient); dbsqlPermissionsAPI = new DbsqlPermissionsAPI(apiClient); + entityTagAssignmentsAPI = new EntityTagAssignmentsAPI(apiClient); experimentsAPI = new ExperimentsAPI(apiClient); externalLineageAPI = new ExternalLineageAPI(apiClient); externalLocationsAPI = new ExternalLocationsAPI(apiClient); @@ -444,6 +461,7 @@ public WorkspaceClient(DatabricksConfig config) { registeredModelsAPI = new RegisteredModelsAPI(apiClient); reposAPI = new ReposAPI(apiClient); resourceQuotasAPI = new ResourceQuotasAPI(apiClient); + rfaAPI = new RfaAPI(apiClient); schemasAPI = new SchemasAPI(apiClient); secretsAPI = new SecretsExt(apiClient); servicePrincipalSecretsProxyAPI = new ServicePrincipalSecretsProxyAPI(apiClient); @@ -458,6 +476,7 @@ public WorkspaceClient(DatabricksConfig config) { systemSchemasAPI = new SystemSchemasAPI(apiClient); tableConstraintsAPI = new TableConstraintsAPI(apiClient); tablesAPI = new TablesAPI(apiClient); + tagPoliciesAPI = new TagPoliciesAPI(apiClient); temporaryPathCredentialsAPI = new TemporaryPathCredentialsAPI(apiClient); temporaryTableCredentialsAPI = new TemporaryTableCredentialsAPI(apiClient); tokenManagementAPI = new TokenManagementAPI(apiClient); @@ -470,6 +489,7 @@ public WorkspaceClient(DatabricksConfig config) { workspaceAPI = new WorkspaceAPI(apiClient); workspaceBindingsAPI = new WorkspaceBindingsAPI(apiClient); workspaceConfAPI = new WorkspaceConfAPI(apiClient); + workspaceSettingsV2API = new WorkspaceSettingsV2API(apiClient); } /** Constructor for mocks */ @@ -541,6 +561,11 @@ public AppsAPI apps() { return appsAPI; } + /** Apps Settings manage the settings for the Apps service on a customer's Databricks instance. */ + public AppsSettingsAPI appsSettings() { + return appsSettingsAPI; + } + /** * In Databricks Runtime 13.3 and above, you can add libraries and init scripts to the `allowlist` * in UC so that users can leverage these artifacts on compute configured with shared access mode. @@ -809,6 +834,16 @@ public DbsqlPermissionsAPI dbsqlPermissions() { return dbsqlPermissionsAPI; } + /** + * Tags are attributes that include keys and optional values that you can use to organize and + * categorize entities in Unity Catalog. Entity tagging is currently supported on catalogs, + * schemas, tables (including views), columns, volumes. With these APIs, users can create, update, + * delete, and list tag assignments across Unity Catalog entities + */ + public EntityTagAssignmentsAPI entityTagAssignments() { + return entityTagAssignmentsAPI; + } + /** * Experiments are the primary unit of organization in MLflow; all MLflow runs belong to an * experiment. Each experiment lets you visualize, search, and compare runs, as well as download @@ -1532,6 +1567,18 @@ public ResourceQuotasAPI resourceQuotas() { return resourceQuotasAPI; } + /** + * Request for Access enables customers to request access to and manage access request + * destinations for Unity Catalog securables. + * + *

These APIs provide a standardized way to update, get, and request to access request + * destinations. Fine-grained authorization ensures that only users with appropriate permissions + * can manage access request destinations. + */ + public RfaAPI rfa() { + return rfaAPI; + } + /** * A schema (also called a database) is the second layer of Unity Catalog’s three-level namespace. * A schema organizes tables, views and functions. To access (or list) a table or view in a @@ -1781,6 +1828,11 @@ public TablesAPI tables() { return tablesAPI; } + /** The Tag Policy API allows you to manage tag policies in Databricks. */ + public TagPoliciesAPI tagPolicies() { + return tagPoliciesAPI; + } + /** * Temporary Path Credentials refer to short-lived, downscoped credentials used to access external * cloud storage locations registered in Databricks. These credentials are employed to provide @@ -1940,6 +1992,11 @@ public WorkspaceConfAPI workspaceConf() { return workspaceConfAPI; } + /** APIs to manage workspace level settings */ + public WorkspaceSettingsV2API workspaceSettingsV2() { + return workspaceSettingsV2API; + } + /** Replace the default AccessControlService with a custom implementation. */ public WorkspaceClient withAccessControlImpl(AccessControlService accessControl) { return this.withAccessControlAPI(new AccessControlAPI(accessControl)); @@ -2020,6 +2077,17 @@ public WorkspaceClient withAppsAPI(AppsAPI apps) { return this; } + /** Replace the default AppsSettingsService with a custom implementation. */ + public WorkspaceClient withAppsSettingsImpl(AppsSettingsService appsSettings) { + return this.withAppsSettingsAPI(new AppsSettingsAPI(appsSettings)); + } + + /** Replace the default AppsSettingsAPI with a custom implementation. */ + public WorkspaceClient withAppsSettingsAPI(AppsSettingsAPI appsSettings) { + this.appsSettingsAPI = appsSettings; + return this; + } + /** Replace the default ArtifactAllowlistsService with a custom implementation. */ public WorkspaceClient withArtifactAllowlistsImpl(ArtifactAllowlistsService artifactAllowlists) { return this.withArtifactAllowlistsAPI(new ArtifactAllowlistsAPI(artifactAllowlists)); @@ -2307,6 +2375,18 @@ public WorkspaceClient withDbsqlPermissionsAPI(DbsqlPermissionsAPI dbsqlPermissi return this; } + /** Replace the default EntityTagAssignmentsService with a custom implementation. */ + public WorkspaceClient withEntityTagAssignmentsImpl( + EntityTagAssignmentsService entityTagAssignments) { + return this.withEntityTagAssignmentsAPI(new EntityTagAssignmentsAPI(entityTagAssignments)); + } + + /** Replace the default EntityTagAssignmentsAPI with a custom implementation. */ + public WorkspaceClient withEntityTagAssignmentsAPI(EntityTagAssignmentsAPI entityTagAssignments) { + this.entityTagAssignmentsAPI = entityTagAssignments; + return this; + } + /** Replace the default ExperimentsService with a custom implementation. */ public WorkspaceClient withExperimentsImpl(ExperimentsService experiments) { return this.withExperimentsAPI(new ExperimentsAPI(experiments)); @@ -2942,6 +3022,17 @@ public WorkspaceClient withResourceQuotasAPI(ResourceQuotasAPI resourceQuotas) { return this; } + /** Replace the default RfaService with a custom implementation. */ + public WorkspaceClient withRfaImpl(RfaService rfa) { + return this.withRfaAPI(new RfaAPI(rfa)); + } + + /** Replace the default RfaAPI with a custom implementation. */ + public WorkspaceClient withRfaAPI(RfaAPI rfa) { + this.rfaAPI = rfa; + return this; + } + /** Replace the default SchemasService with a custom implementation. */ public WorkspaceClient withSchemasImpl(SchemasService schemas) { return this.withSchemasAPI(new SchemasAPI(schemas)); @@ -3091,6 +3182,17 @@ public WorkspaceClient withTablesAPI(TablesAPI tables) { return this; } + /** Replace the default TagPoliciesService with a custom implementation. */ + public WorkspaceClient withTagPoliciesImpl(TagPoliciesService tagPolicies) { + return this.withTagPoliciesAPI(new TagPoliciesAPI(tagPolicies)); + } + + /** Replace the default TagPoliciesAPI with a custom implementation. */ + public WorkspaceClient withTagPoliciesAPI(TagPoliciesAPI tagPolicies) { + this.tagPoliciesAPI = tagPolicies; + return this; + } + /** Replace the default TemporaryPathCredentialsService with a custom implementation. */ public WorkspaceClient withTemporaryPathCredentialsImpl( TemporaryPathCredentialsService temporaryPathCredentials) { @@ -3232,6 +3334,18 @@ public WorkspaceClient withWorkspaceConfAPI(WorkspaceConfAPI workspaceConf) { return this; } + /** Replace the default WorkspaceSettingsV2Service with a custom implementation. */ + public WorkspaceClient withWorkspaceSettingsV2Impl( + WorkspaceSettingsV2Service workspaceSettingsV2) { + return this.withWorkspaceSettingsV2API(new WorkspaceSettingsV2API(workspaceSettingsV2)); + } + + /** Replace the default WorkspaceSettingsV2API with a custom implementation. */ + public WorkspaceClient withWorkspaceSettingsV2API(WorkspaceSettingsV2API workspaceSettingsV2) { + this.workspaceSettingsV2API = workspaceSettingsV2; + return this; + } + public ApiClient apiClient() { return apiClient; } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/core/error/platform/InvalidParameterValue.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/core/error/platform/InvalidParameterValue.java index 43f0f9b6e..72b263862 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/core/error/platform/InvalidParameterValue.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/core/error/platform/InvalidParameterValue.java @@ -5,7 +5,7 @@ import com.databricks.sdk.core.error.details.ErrorDetails; import com.databricks.sdk.support.Generated; -/** invalid parameter value */ +/** supplied value for a parameter was invalid */ @Generated public class InvalidParameterValue extends BadRequest { public InvalidParameterValue(String message, ErrorDetails details) { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/agentbricks/CreateCustomLlmRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/agentbricks/CreateCustomLlmRequest.java index 3270fe531..c1b9d1fe4 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/agentbricks/CreateCustomLlmRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/agentbricks/CreateCustomLlmRequest.java @@ -11,9 +11,9 @@ @Generated public class CreateCustomLlmRequest { /** - * Optional: UC path for agent artifacts. If you are using a dataset that you only have read - * permissions, please provide a destination path where you have write permissions. Please provide - * this in catalog.schema format. + * This will soon be deprecated!! Optional: UC path for agent artifacts. If you are using a + * dataset that you only have read permissions, please provide a destination path where you have + * write permissions. Please provide this in catalog.schema format. */ @JsonProperty("agent_artifact_path") private String agentArtifactPath; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifest.java new file mode 100755 index 000000000..7a0750c94 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifest.java @@ -0,0 +1,91 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +/** App manifest definition */ +@Generated +public class AppManifest { + /** Description of the app defined by manifest author / publisher */ + @JsonProperty("description") + private String description; + + /** Name of the app defined by manifest author / publisher */ + @JsonProperty("name") + private String name; + + /** */ + @JsonProperty("resource_specs") + private Collection resourceSpecs; + + /** The manifest schema version, for now only 1 is allowed */ + @JsonProperty("version") + private Long version; + + public AppManifest setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public AppManifest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public AppManifest setResourceSpecs(Collection resourceSpecs) { + this.resourceSpecs = resourceSpecs; + return this; + } + + public Collection getResourceSpecs() { + return resourceSpecs; + } + + public AppManifest setVersion(Long version) { + this.version = version; + return this; + } + + public Long getVersion() { + return version; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifest that = (AppManifest) o; + return Objects.equals(description, that.description) + && Objects.equals(name, that.name) + && Objects.equals(resourceSpecs, that.resourceSpecs) + && Objects.equals(version, that.version); + } + + @Override + public int hashCode() { + return Objects.hash(description, name, resourceSpecs, version); + } + + @Override + public String toString() { + return new ToStringer(AppManifest.class) + .add("description", description) + .add("name", name) + .add("resourceSpecs", resourceSpecs) + .add("version", version) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpec.java new file mode 100755 index 000000000..3a77e0b08 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpec.java @@ -0,0 +1,48 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AppManifestAppResourceJobSpec { + /** + * Permissions to grant on the Job. Supported permissions are: "CAN_MANAGE", "IS_OWNER", + * "CAN_MANAGE_RUN", "CAN_VIEW". + */ + @JsonProperty("permission") + private AppManifestAppResourceJobSpecJobPermission permission; + + public AppManifestAppResourceJobSpec setPermission( + AppManifestAppResourceJobSpecJobPermission permission) { + this.permission = permission; + return this; + } + + public AppManifestAppResourceJobSpecJobPermission getPermission() { + return permission; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceJobSpec that = (AppManifestAppResourceJobSpec) o; + return Objects.equals(permission, that.permission); + } + + @Override + public int hashCode() { + return Objects.hash(permission); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceJobSpec.class) + .add("permission", permission) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpecJobPermission.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpecJobPermission.java new file mode 100755 index 000000000..468df5db9 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceJobSpecJobPermission.java @@ -0,0 +1,13 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AppManifestAppResourceJobSpecJobPermission { + CAN_MANAGE, + CAN_MANAGE_RUN, + CAN_VIEW, + IS_OWNER, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpec.java new file mode 100755 index 000000000..e89bc9195 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpec.java @@ -0,0 +1,48 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AppManifestAppResourceSecretSpec { + /** + * Permission to grant on the secret scope. For secrets, only one permission is allowed. + * Permission must be one of: "READ", "WRITE", "MANAGE". + */ + @JsonProperty("permission") + private AppManifestAppResourceSecretSpecSecretPermission permission; + + public AppManifestAppResourceSecretSpec setPermission( + AppManifestAppResourceSecretSpecSecretPermission permission) { + this.permission = permission; + return this; + } + + public AppManifestAppResourceSecretSpecSecretPermission getPermission() { + return permission; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceSecretSpec that = (AppManifestAppResourceSecretSpec) o; + return Objects.equals(permission, that.permission); + } + + @Override + public int hashCode() { + return Objects.hash(permission); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceSecretSpec.class) + .add("permission", permission) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpecSecretPermission.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpecSecretPermission.java new file mode 100755 index 000000000..9fc9d6bc9 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSecretSpecSecretPermission.java @@ -0,0 +1,15 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +/** + * Permission to grant on the secret scope. Supported permissions are: "READ", "WRITE", "MANAGE". + */ +@Generated +public enum AppManifestAppResourceSecretSpecSecretPermission { + MANAGE, + READ, + WRITE, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpec.java new file mode 100755 index 000000000..47143e993 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpec.java @@ -0,0 +1,48 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AppManifestAppResourceServingEndpointSpec { + /** + * Permission to grant on the serving endpoint. Supported permissions are: "CAN_MANAGE", + * "CAN_QUERY", "CAN_VIEW". + */ + @JsonProperty("permission") + private AppManifestAppResourceServingEndpointSpecServingEndpointPermission permission; + + public AppManifestAppResourceServingEndpointSpec setPermission( + AppManifestAppResourceServingEndpointSpecServingEndpointPermission permission) { + this.permission = permission; + return this; + } + + public AppManifestAppResourceServingEndpointSpecServingEndpointPermission getPermission() { + return permission; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceServingEndpointSpec that = (AppManifestAppResourceServingEndpointSpec) o; + return Objects.equals(permission, that.permission); + } + + @Override + public int hashCode() { + return Objects.hash(permission); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceServingEndpointSpec.class) + .add("permission", permission) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpecServingEndpointPermission.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpecServingEndpointPermission.java new file mode 100755 index 000000000..99c086f8f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceServingEndpointSpecServingEndpointPermission.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AppManifestAppResourceServingEndpointSpecServingEndpointPermission { + CAN_MANAGE, + CAN_QUERY, + CAN_VIEW, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSpec.java new file mode 100755 index 000000000..f4487f6e5 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSpec.java @@ -0,0 +1,148 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * AppResource related fields are copied from app.proto but excludes resource identifiers (e.g. + * name, id, key, scope, etc.) + */ +@Generated +public class AppManifestAppResourceSpec { + /** Description of the App Resource. */ + @JsonProperty("description") + private String description; + + /** */ + @JsonProperty("job_spec") + private AppManifestAppResourceJobSpec jobSpec; + + /** Name of the App Resource. */ + @JsonProperty("name") + private String name; + + /** */ + @JsonProperty("secret_spec") + private AppManifestAppResourceSecretSpec secretSpec; + + /** */ + @JsonProperty("serving_endpoint_spec") + private AppManifestAppResourceServingEndpointSpec servingEndpointSpec; + + /** */ + @JsonProperty("sql_warehouse_spec") + private AppManifestAppResourceSqlWarehouseSpec sqlWarehouseSpec; + + /** */ + @JsonProperty("uc_securable_spec") + private AppManifestAppResourceUcSecurableSpec ucSecurableSpec; + + public AppManifestAppResourceSpec setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public AppManifestAppResourceSpec setJobSpec(AppManifestAppResourceJobSpec jobSpec) { + this.jobSpec = jobSpec; + return this; + } + + public AppManifestAppResourceJobSpec getJobSpec() { + return jobSpec; + } + + public AppManifestAppResourceSpec setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public AppManifestAppResourceSpec setSecretSpec(AppManifestAppResourceSecretSpec secretSpec) { + this.secretSpec = secretSpec; + return this; + } + + public AppManifestAppResourceSecretSpec getSecretSpec() { + return secretSpec; + } + + public AppManifestAppResourceSpec setServingEndpointSpec( + AppManifestAppResourceServingEndpointSpec servingEndpointSpec) { + this.servingEndpointSpec = servingEndpointSpec; + return this; + } + + public AppManifestAppResourceServingEndpointSpec getServingEndpointSpec() { + return servingEndpointSpec; + } + + public AppManifestAppResourceSpec setSqlWarehouseSpec( + AppManifestAppResourceSqlWarehouseSpec sqlWarehouseSpec) { + this.sqlWarehouseSpec = sqlWarehouseSpec; + return this; + } + + public AppManifestAppResourceSqlWarehouseSpec getSqlWarehouseSpec() { + return sqlWarehouseSpec; + } + + public AppManifestAppResourceSpec setUcSecurableSpec( + AppManifestAppResourceUcSecurableSpec ucSecurableSpec) { + this.ucSecurableSpec = ucSecurableSpec; + return this; + } + + public AppManifestAppResourceUcSecurableSpec getUcSecurableSpec() { + return ucSecurableSpec; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceSpec that = (AppManifestAppResourceSpec) o; + return Objects.equals(description, that.description) + && Objects.equals(jobSpec, that.jobSpec) + && Objects.equals(name, that.name) + && Objects.equals(secretSpec, that.secretSpec) + && Objects.equals(servingEndpointSpec, that.servingEndpointSpec) + && Objects.equals(sqlWarehouseSpec, that.sqlWarehouseSpec) + && Objects.equals(ucSecurableSpec, that.ucSecurableSpec); + } + + @Override + public int hashCode() { + return Objects.hash( + description, + jobSpec, + name, + secretSpec, + servingEndpointSpec, + sqlWarehouseSpec, + ucSecurableSpec); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceSpec.class) + .add("description", description) + .add("jobSpec", jobSpec) + .add("name", name) + .add("secretSpec", secretSpec) + .add("servingEndpointSpec", servingEndpointSpec) + .add("sqlWarehouseSpec", sqlWarehouseSpec) + .add("ucSecurableSpec", ucSecurableSpec) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpec.java new file mode 100755 index 000000000..0962ade81 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpec.java @@ -0,0 +1,48 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AppManifestAppResourceSqlWarehouseSpec { + /** + * Permission to grant on the SQL warehouse. Supported permissions are: "CAN_MANAGE", "CAN_USE", + * "IS_OWNER". + */ + @JsonProperty("permission") + private AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission permission; + + public AppManifestAppResourceSqlWarehouseSpec setPermission( + AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission permission) { + this.permission = permission; + return this; + } + + public AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission getPermission() { + return permission; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceSqlWarehouseSpec that = (AppManifestAppResourceSqlWarehouseSpec) o; + return Objects.equals(permission, that.permission); + } + + @Override + public int hashCode() { + return Objects.hash(permission); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceSqlWarehouseSpec.class) + .add("permission", permission) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission.java new file mode 100755 index 000000000..924ea5f2f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AppManifestAppResourceSqlWarehouseSpecSqlWarehousePermission { + CAN_MANAGE, + CAN_USE, + IS_OWNER, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpec.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpec.java new file mode 100755 index 000000000..207700666 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpec.java @@ -0,0 +1,61 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AppManifestAppResourceUcSecurableSpec { + /** */ + @JsonProperty("permission") + private AppManifestAppResourceUcSecurableSpecUcSecurablePermission permission; + + /** */ + @JsonProperty("securable_type") + private AppManifestAppResourceUcSecurableSpecUcSecurableType securableType; + + public AppManifestAppResourceUcSecurableSpec setPermission( + AppManifestAppResourceUcSecurableSpecUcSecurablePermission permission) { + this.permission = permission; + return this; + } + + public AppManifestAppResourceUcSecurableSpecUcSecurablePermission getPermission() { + return permission; + } + + public AppManifestAppResourceUcSecurableSpec setSecurableType( + AppManifestAppResourceUcSecurableSpecUcSecurableType securableType) { + this.securableType = securableType; + return this; + } + + public AppManifestAppResourceUcSecurableSpecUcSecurableType getSecurableType() { + return securableType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AppManifestAppResourceUcSecurableSpec that = (AppManifestAppResourceUcSecurableSpec) o; + return Objects.equals(permission, that.permission) + && Objects.equals(securableType, that.securableType); + } + + @Override + public int hashCode() { + return Objects.hash(permission, securableType); + } + + @Override + public String toString() { + return new ToStringer(AppManifestAppResourceUcSecurableSpec.class) + .add("permission", permission) + .add("securableType", securableType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurablePermission.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurablePermission.java new file mode 100755 index 000000000..bca1f6476 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurablePermission.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AppManifestAppResourceUcSecurableSpecUcSecurablePermission { + MANAGE, + READ_VOLUME, + WRITE_VOLUME, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurableType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurableType.java new file mode 100755 index 000000000..f6a970e70 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppManifestAppResourceUcSecurableSpecUcSecurableType.java @@ -0,0 +1,10 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AppManifestAppResourceUcSecurableSpecUcSecurableType { + VOLUME, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsAPI.java new file mode 100755 index 000000000..9e24ef8fa --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsAPI.java @@ -0,0 +1,76 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** Apps Settings manage the settings for the Apps service on a customer's Databricks instance. */ +@Generated +public class AppsSettingsAPI { + private static final Logger LOG = LoggerFactory.getLogger(AppsSettingsAPI.class); + + private final AppsSettingsService impl; + + /** Regular-use constructor */ + public AppsSettingsAPI(ApiClient apiClient) { + impl = new AppsSettingsImpl(apiClient); + } + + /** Constructor for mocks */ + public AppsSettingsAPI(AppsSettingsService mock) { + impl = mock; + } + + /** Creates a custom template. */ + public CustomTemplate createCustomTemplate(CreateCustomTemplateRequest request) { + return impl.createCustomTemplate(request); + } + + public CustomTemplate deleteCustomTemplate(String name) { + return deleteCustomTemplate(new DeleteCustomTemplateRequest().setName(name)); + } + + /** Deletes the custom template with the specified name. */ + public CustomTemplate deleteCustomTemplate(DeleteCustomTemplateRequest request) { + return impl.deleteCustomTemplate(request); + } + + public CustomTemplate getCustomTemplate(String name) { + return getCustomTemplate(new GetCustomTemplateRequest().setName(name)); + } + + /** Gets the custom template with the specified name. */ + public CustomTemplate getCustomTemplate(GetCustomTemplateRequest request) { + return impl.getCustomTemplate(request); + } + + /** Lists all custom templates in the workspace. */ + public Iterable listCustomTemplates(ListCustomTemplatesRequest request) { + return new Paginator<>( + request, + impl::listCustomTemplates, + ListCustomTemplatesResponse::getTemplates, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + + /** + * Updates the custom template with the specified name. Note that the template name cannot be + * updated. + */ + public CustomTemplate updateCustomTemplate(UpdateCustomTemplateRequest request) { + return impl.updateCustomTemplate(request); + } + + public AppsSettingsService impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsImpl.java new file mode 100755 index 000000000..40e1761ee --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsImpl.java @@ -0,0 +1,85 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of AppsSettings */ +@Generated +class AppsSettingsImpl implements AppsSettingsService { + private final ApiClient apiClient; + + public AppsSettingsImpl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public CustomTemplate createCustomTemplate(CreateCustomTemplateRequest request) { + String path = "/api/2.0/apps-settings/templates"; + try { + Request req = new Request("POST", path, apiClient.serialize(request.getTemplate())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, CustomTemplate.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public CustomTemplate deleteCustomTemplate(DeleteCustomTemplateRequest request) { + String path = String.format("/api/2.0/apps-settings/templates/%s", request.getName()); + try { + Request req = new Request("DELETE", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, CustomTemplate.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public CustomTemplate getCustomTemplate(GetCustomTemplateRequest request) { + String path = String.format("/api/2.0/apps-settings/templates/%s", request.getName()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, CustomTemplate.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public ListCustomTemplatesResponse listCustomTemplates(ListCustomTemplatesRequest request) { + String path = "/api/2.0/apps-settings/templates"; + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, ListCustomTemplatesResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public CustomTemplate updateCustomTemplate(UpdateCustomTemplateRequest request) { + String path = String.format("/api/2.0/apps-settings/templates/%s", request.getName()); + try { + Request req = new Request("PUT", path, apiClient.serialize(request.getTemplate())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, CustomTemplate.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsService.java new file mode 100755 index 000000000..ab3379a60 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/AppsSettingsService.java @@ -0,0 +1,33 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; + +/** + * Apps Settings manage the settings for the Apps service on a customer's Databricks instance. + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface AppsSettingsService { + /** Creates a custom template. */ + CustomTemplate createCustomTemplate(CreateCustomTemplateRequest createCustomTemplateRequest); + + /** Deletes the custom template with the specified name. */ + CustomTemplate deleteCustomTemplate(DeleteCustomTemplateRequest deleteCustomTemplateRequest); + + /** Gets the custom template with the specified name. */ + CustomTemplate getCustomTemplate(GetCustomTemplateRequest getCustomTemplateRequest); + + /** Lists all custom templates in the workspace. */ + ListCustomTemplatesResponse listCustomTemplates( + ListCustomTemplatesRequest listCustomTemplatesRequest); + + /** + * Updates the custom template with the specified name. Note that the template name cannot be + * updated. + */ + CustomTemplate updateCustomTemplate(UpdateCustomTemplateRequest updateCustomTemplateRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateCustomTemplateRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateCustomTemplateRequest.java new file mode 100755 index 000000000..8f9209aae --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CreateCustomTemplateRequest.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CreateCustomTemplateRequest { + /** */ + @JsonProperty("template") + private CustomTemplate template; + + public CreateCustomTemplateRequest setTemplate(CustomTemplate template) { + this.template = template; + return this; + } + + public CustomTemplate getTemplate() { + return template; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CreateCustomTemplateRequest that = (CreateCustomTemplateRequest) o; + return Objects.equals(template, that.template); + } + + @Override + public int hashCode() { + return Objects.hash(template); + } + + @Override + public String toString() { + return new ToStringer(CreateCustomTemplateRequest.class).add("template", template).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CustomTemplate.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CustomTemplate.java new file mode 100755 index 000000000..2374bf827 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/CustomTemplate.java @@ -0,0 +1,140 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CustomTemplate { + /** */ + @JsonProperty("creator") + private String creator; + + /** The description of the template. */ + @JsonProperty("description") + private String description; + + /** The Git provider of the template. */ + @JsonProperty("git_provider") + private String gitProvider; + + /** The Git repository URL that the template resides in. */ + @JsonProperty("git_repo") + private String gitRepo; + + /** + * The manifest of the template. It defines fields and default values when installing the + * template. + */ + @JsonProperty("manifest") + private AppManifest manifest; + + /** + * The name of the template. It must contain only alphanumeric characters, hyphens, underscores, + * and whitespaces. It must be unique within the workspace. + */ + @JsonProperty("name") + private String name; + + /** The path to the template within the Git repository. */ + @JsonProperty("path") + private String path; + + public CustomTemplate setCreator(String creator) { + this.creator = creator; + return this; + } + + public String getCreator() { + return creator; + } + + public CustomTemplate setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public CustomTemplate setGitProvider(String gitProvider) { + this.gitProvider = gitProvider; + return this; + } + + public String getGitProvider() { + return gitProvider; + } + + public CustomTemplate setGitRepo(String gitRepo) { + this.gitRepo = gitRepo; + return this; + } + + public String getGitRepo() { + return gitRepo; + } + + public CustomTemplate setManifest(AppManifest manifest) { + this.manifest = manifest; + return this; + } + + public AppManifest getManifest() { + return manifest; + } + + public CustomTemplate setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public CustomTemplate setPath(String path) { + this.path = path; + return this; + } + + public String getPath() { + return path; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CustomTemplate that = (CustomTemplate) o; + return Objects.equals(creator, that.creator) + && Objects.equals(description, that.description) + && Objects.equals(gitProvider, that.gitProvider) + && Objects.equals(gitRepo, that.gitRepo) + && Objects.equals(manifest, that.manifest) + && Objects.equals(name, that.name) + && Objects.equals(path, that.path); + } + + @Override + public int hashCode() { + return Objects.hash(creator, description, gitProvider, gitRepo, manifest, name, path); + } + + @Override + public String toString() { + return new ToStringer(CustomTemplate.class) + .add("creator", creator) + .add("description", description) + .add("gitProvider", gitProvider) + .add("gitRepo", gitRepo) + .add("manifest", manifest) + .add("name", name) + .add("path", path) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/DeleteCustomTemplateRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/DeleteCustomTemplateRequest.java new file mode 100755 index 000000000..aab3845d6 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/DeleteCustomTemplateRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class DeleteCustomTemplateRequest { + /** The name of the custom template. */ + @JsonIgnore private String name; + + public DeleteCustomTemplateRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + DeleteCustomTemplateRequest that = (DeleteCustomTemplateRequest) o; + return Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(name); + } + + @Override + public String toString() { + return new ToStringer(DeleteCustomTemplateRequest.class).add("name", name).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetCustomTemplateRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetCustomTemplateRequest.java new file mode 100755 index 000000000..59144be47 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/GetCustomTemplateRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetCustomTemplateRequest { + /** The name of the custom template. */ + @JsonIgnore private String name; + + public GetCustomTemplateRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetCustomTemplateRequest that = (GetCustomTemplateRequest) o; + return Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(name); + } + + @Override + public String toString() { + return new ToStringer(GetCustomTemplateRequest.class).add("name", name).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesRequest.java new file mode 100755 index 000000000..60e390a4d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesRequest.java @@ -0,0 +1,61 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListCustomTemplatesRequest { + /** Upper bound for items returned. */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** Pagination token to go to the next page of custom templates. Requests first page if absent. */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + public ListCustomTemplatesRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public ListCustomTemplatesRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListCustomTemplatesRequest that = (ListCustomTemplatesRequest) o; + return Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken); + } + + @Override + public int hashCode() { + return Objects.hash(pageSize, pageToken); + } + + @Override + public String toString() { + return new ToStringer(ListCustomTemplatesRequest.class) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesResponse.java new file mode 100755 index 000000000..802eeb606 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/ListCustomTemplatesResponse.java @@ -0,0 +1,60 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListCustomTemplatesResponse { + /** Pagination token to request the next page of custom templates. */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** */ + @JsonProperty("templates") + private Collection templates; + + public ListCustomTemplatesResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListCustomTemplatesResponse setTemplates(Collection templates) { + this.templates = templates; + return this; + } + + public Collection getTemplates() { + return templates; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListCustomTemplatesResponse that = (ListCustomTemplatesResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) + && Objects.equals(templates, that.templates); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, templates); + } + + @Override + public String toString() { + return new ToStringer(ListCustomTemplatesResponse.class) + .add("nextPageToken", nextPageToken) + .add("templates", templates) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/UpdateCustomTemplateRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/UpdateCustomTemplateRequest.java new file mode 100755 index 000000000..0c1d0174f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/apps/UpdateCustomTemplateRequest.java @@ -0,0 +1,61 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.apps; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class UpdateCustomTemplateRequest { + /** + * The name of the template. It must contain only alphanumeric characters, hyphens, underscores, + * and whitespaces. It must be unique within the workspace. + */ + @JsonIgnore private String name; + + /** */ + @JsonProperty("template") + private CustomTemplate template; + + public UpdateCustomTemplateRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public UpdateCustomTemplateRequest setTemplate(CustomTemplate template) { + this.template = template; + return this; + } + + public CustomTemplate getTemplate() { + return template; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + UpdateCustomTemplateRequest that = (UpdateCustomTemplateRequest) o; + return Objects.equals(name, that.name) && Objects.equals(template, that.template); + } + + @Override + public int hashCode() { + return Objects.hash(name, template); + } + + @Override + public String toString() { + return new ToStringer(UpdateCustomTemplateRequest.class) + .add("name", name) + .add("template", template) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccessRequestDestinations.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccessRequestDestinations.java new file mode 100755 index 000000000..79eca7689 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccessRequestDestinations.java @@ -0,0 +1,79 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class AccessRequestDestinations { + /** + * Indicates whether any destinations are hidden from the caller due to a lack of permissions. + * This value is true if the caller does not have permission to see all destinations. + */ + @JsonProperty("are_any_destinations_hidden") + private Boolean areAnyDestinationsHidden; + + /** The access request destinations for the securable. */ + @JsonProperty("destinations") + private Collection destinations; + + /** The securable for which the access request destinations are being retrieved. */ + @JsonProperty("securable") + private Securable securable; + + public AccessRequestDestinations setAreAnyDestinationsHidden(Boolean areAnyDestinationsHidden) { + this.areAnyDestinationsHidden = areAnyDestinationsHidden; + return this; + } + + public Boolean getAreAnyDestinationsHidden() { + return areAnyDestinationsHidden; + } + + public AccessRequestDestinations setDestinations( + Collection destinations) { + this.destinations = destinations; + return this; + } + + public Collection getDestinations() { + return destinations; + } + + public AccessRequestDestinations setSecurable(Securable securable) { + this.securable = securable; + return this; + } + + public Securable getSecurable() { + return securable; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AccessRequestDestinations that = (AccessRequestDestinations) o; + return Objects.equals(areAnyDestinationsHidden, that.areAnyDestinationsHidden) + && Objects.equals(destinations, that.destinations) + && Objects.equals(securable, that.securable); + } + + @Override + public int hashCode() { + return Objects.hash(areAnyDestinationsHidden, destinations, securable); + } + + @Override + public String toString() { + return new ToStringer(AccessRequestDestinations.class) + .add("areAnyDestinationsHidden", areAnyDestinationsHidden) + .add("destinations", destinations) + .add("securable", securable) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsRequest.java new file mode 100755 index 000000000..ade945f68 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsRequest.java @@ -0,0 +1,50 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class BatchCreateAccessRequestsRequest { + /** + * A list of individual access requests, where each request corresponds to a set of permissions + * being requested on a list of securables for a specified principal. + * + *

At most 30 requests per API call. + */ + @JsonProperty("requests") + private Collection requests; + + public BatchCreateAccessRequestsRequest setRequests(Collection requests) { + this.requests = requests; + return this; + } + + public Collection getRequests() { + return requests; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + BatchCreateAccessRequestsRequest that = (BatchCreateAccessRequestsRequest) o; + return Objects.equals(requests, that.requests); + } + + @Override + public int hashCode() { + return Objects.hash(requests); + } + + @Override + public String toString() { + return new ToStringer(BatchCreateAccessRequestsRequest.class) + .add("requests", requests) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsResponse.java new file mode 100755 index 000000000..5f0d00228 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/BatchCreateAccessRequestsResponse.java @@ -0,0 +1,46 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class BatchCreateAccessRequestsResponse { + /** The access request destinations for each securable object the principal requested. */ + @JsonProperty("responses") + private Collection responses; + + public BatchCreateAccessRequestsResponse setResponses( + Collection responses) { + this.responses = responses; + return this; + } + + public Collection getResponses() { + return responses; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + BatchCreateAccessRequestsResponse that = (BatchCreateAccessRequestsResponse) o; + return Objects.equals(responses, that.responses); + } + + @Override + public int hashCode() { + return Objects.hash(responses); + } + + @Override + public String toString() { + return new ToStringer(BatchCreateAccessRequestsResponse.class) + .add("responses", responses) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionInfo.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionInfo.java index a60688b06..948ca6bb2 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionInfo.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionInfo.java @@ -35,10 +35,6 @@ public class ConnectionInfo { @JsonProperty("credential_type") private CredentialType credentialType; - /** [Create,Update:OPT] Connection environment settings as EnvironmentSettings object. */ - @JsonProperty("environment_settings") - private EnvironmentSettings environmentSettings; - /** Full name of connection. */ @JsonProperty("full_name") private String fullName; @@ -141,15 +137,6 @@ public CredentialType getCredentialType() { return credentialType; } - public ConnectionInfo setEnvironmentSettings(EnvironmentSettings environmentSettings) { - this.environmentSettings = environmentSettings; - return this; - } - - public EnvironmentSettings getEnvironmentSettings() { - return environmentSettings; - } - public ConnectionInfo setFullName(String fullName) { this.fullName = fullName; return this; @@ -269,7 +256,6 @@ public boolean equals(Object o) { && Objects.equals(createdAt, that.createdAt) && Objects.equals(createdBy, that.createdBy) && Objects.equals(credentialType, that.credentialType) - && Objects.equals(environmentSettings, that.environmentSettings) && Objects.equals(fullName, that.fullName) && Objects.equals(metastoreId, that.metastoreId) && Objects.equals(name, that.name) @@ -293,7 +279,6 @@ public int hashCode() { createdAt, createdBy, credentialType, - environmentSettings, fullName, metastoreId, name, @@ -317,7 +302,6 @@ public String toString() { .add("createdAt", createdAt) .add("createdBy", createdBy) .add("credentialType", credentialType) - .add("environmentSettings", environmentSettings) .add("fullName", fullName) .add("metastoreId", metastoreId) .add("name", name) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequest.java new file mode 100755 index 000000000..ad2e25601 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequest.java @@ -0,0 +1,91 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class CreateAccessRequest { + /** + * Optional. The principal this request is for. Empty `behalf_of` defaults to the requester's + * identity. + * + *

Principals must be unique across the API call. + */ + @JsonProperty("behalf_of") + private Principal behalfOf; + + /** + * Optional. Comment associated with the request. + * + *

At most 200 characters, can only contain lowercase/uppercase letters (a-z, A-Z), numbers + * (0-9), punctuation, and spaces. + */ + @JsonProperty("comment") + private String comment; + + /** + * List of securables and their corresponding requested UC privileges. + * + *

At most 30 securables can be requested for a principal per batched call. Each securable can + * only be requested once per principal. + */ + @JsonProperty("securable_permissions") + private Collection securablePermissions; + + public CreateAccessRequest setBehalfOf(Principal behalfOf) { + this.behalfOf = behalfOf; + return this; + } + + public Principal getBehalfOf() { + return behalfOf; + } + + public CreateAccessRequest setComment(String comment) { + this.comment = comment; + return this; + } + + public String getComment() { + return comment; + } + + public CreateAccessRequest setSecurablePermissions( + Collection securablePermissions) { + this.securablePermissions = securablePermissions; + return this; + } + + public Collection getSecurablePermissions() { + return securablePermissions; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CreateAccessRequest that = (CreateAccessRequest) o; + return Objects.equals(behalfOf, that.behalfOf) + && Objects.equals(comment, that.comment) + && Objects.equals(securablePermissions, that.securablePermissions); + } + + @Override + public int hashCode() { + return Objects.hash(behalfOf, comment, securablePermissions); + } + + @Override + public String toString() { + return new ToStringer(CreateAccessRequest.class) + .add("behalfOf", behalfOf) + .add("comment", comment) + .add("securablePermissions", securablePermissions) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequestResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequestResponse.java new file mode 100755 index 000000000..ec721c924 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateAccessRequestResponse.java @@ -0,0 +1,61 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class CreateAccessRequestResponse { + /** The principal the request was made on behalf of. */ + @JsonProperty("behalf_of") + private Principal behalfOf; + + /** The access request destinations for all the securables the principal requested. */ + @JsonProperty("request_destinations") + private Collection requestDestinations; + + public CreateAccessRequestResponse setBehalfOf(Principal behalfOf) { + this.behalfOf = behalfOf; + return this; + } + + public Principal getBehalfOf() { + return behalfOf; + } + + public CreateAccessRequestResponse setRequestDestinations( + Collection requestDestinations) { + this.requestDestinations = requestDestinations; + return this; + } + + public Collection getRequestDestinations() { + return requestDestinations; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CreateAccessRequestResponse that = (CreateAccessRequestResponse) o; + return Objects.equals(behalfOf, that.behalfOf) + && Objects.equals(requestDestinations, that.requestDestinations); + } + + @Override + public int hashCode() { + return Objects.hash(behalfOf, requestDestinations); + } + + @Override + public String toString() { + return new ToStringer(CreateAccessRequestResponse.class) + .add("behalfOf", behalfOf) + .add("requestDestinations", requestDestinations) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateConnection.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateConnection.java index f890b1b6e..3eea7832c 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateConnection.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateConnection.java @@ -18,10 +18,6 @@ public class CreateConnection { @JsonProperty("connection_type") private ConnectionType connectionType; - /** [Create,Update:OPT] Connection environment settings as EnvironmentSettings object. */ - @JsonProperty("environment_settings") - private EnvironmentSettings environmentSettings; - /** Name of the connection. */ @JsonProperty("name") private String name; @@ -56,15 +52,6 @@ public ConnectionType getConnectionType() { return connectionType; } - public CreateConnection setEnvironmentSettings(EnvironmentSettings environmentSettings) { - this.environmentSettings = environmentSettings; - return this; - } - - public EnvironmentSettings getEnvironmentSettings() { - return environmentSettings; - } - public CreateConnection setName(String name) { this.name = name; return this; @@ -108,7 +95,6 @@ public boolean equals(Object o) { CreateConnection that = (CreateConnection) o; return Objects.equals(comment, that.comment) && Objects.equals(connectionType, that.connectionType) - && Objects.equals(environmentSettings, that.environmentSettings) && Objects.equals(name, that.name) && Objects.equals(options, that.options) && Objects.equals(properties, that.properties) @@ -117,8 +103,7 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash( - comment, connectionType, environmentSettings, name, options, properties, readOnly); + return Objects.hash(comment, connectionType, name, options, properties, readOnly); } @Override @@ -126,7 +111,6 @@ public String toString() { return new ToStringer(CreateConnection.class) .add("comment", comment) .add("connectionType", connectionType) - .add("environmentSettings", environmentSettings) .add("name", name) .add("options", options) .add("properties", properties) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateEntityTagAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateEntityTagAssignmentRequest.java new file mode 100755 index 000000000..c6ca86bb5 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateEntityTagAssignmentRequest.java @@ -0,0 +1,44 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CreateEntityTagAssignmentRequest { + /** */ + @JsonProperty("tag_assignment") + private EntityTagAssignment tagAssignment; + + public CreateEntityTagAssignmentRequest setTagAssignment(EntityTagAssignment tagAssignment) { + this.tagAssignment = tagAssignment; + return this; + } + + public EntityTagAssignment getTagAssignment() { + return tagAssignment; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CreateEntityTagAssignmentRequest that = (CreateEntityTagAssignmentRequest) o; + return Objects.equals(tagAssignment, that.tagAssignment); + } + + @Override + public int hashCode() { + return Objects.hash(tagAssignment); + } + + @Override + public String toString() { + return new ToStringer(CreateEntityTagAssignmentRequest.class) + .add("tagAssignment", tagAssignment) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteEntityTagAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteEntityTagAssignmentRequest.java new file mode 100755 index 000000000..35871f23c --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DeleteEntityTagAssignmentRequest.java @@ -0,0 +1,74 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class DeleteEntityTagAssignmentRequest { + /** The fully qualified name of the entity to which the tag is assigned */ + @JsonIgnore private String entityName; + + /** + * The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, + * tables, columns, volumes. + */ + @JsonIgnore private String entityType; + + /** Required. The key of the tag to delete */ + @JsonIgnore private String tagKey; + + public DeleteEntityTagAssignmentRequest setEntityName(String entityName) { + this.entityName = entityName; + return this; + } + + public String getEntityName() { + return entityName; + } + + public DeleteEntityTagAssignmentRequest setEntityType(String entityType) { + this.entityType = entityType; + return this; + } + + public String getEntityType() { + return entityType; + } + + public DeleteEntityTagAssignmentRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + DeleteEntityTagAssignmentRequest that = (DeleteEntityTagAssignmentRequest) o; + return Objects.equals(entityName, that.entityName) + && Objects.equals(entityType, that.entityType) + && Objects.equals(tagKey, that.tagKey); + } + + @Override + public int hashCode() { + return Objects.hash(entityName, entityType, tagKey); + } + + @Override + public String toString() { + return new ToStringer(DeleteEntityTagAssignmentRequest.class) + .add("entityName", entityName) + .add("entityType", entityType) + .add("tagKey", tagKey) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DestinationType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DestinationType.java new file mode 100755 index 000000000..b5dc069b9 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/DestinationType.java @@ -0,0 +1,14 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum DestinationType { + EMAIL, + GENERIC_WEBHOOK, + MICROSOFT_TEAMS, + SLACK, + URL, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignment.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignment.java new file mode 100755 index 000000000..95c3c464e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignment.java @@ -0,0 +1,93 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** Represents a tag assignment to an entity */ +@Generated +public class EntityTagAssignment { + /** The fully qualified name of the entity to which the tag is assigned */ + @JsonProperty("entity_name") + private String entityName; + + /** + * The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, + * tables, columns, volumes. + */ + @JsonProperty("entity_type") + private String entityType; + + /** The key of the tag */ + @JsonProperty("tag_key") + private String tagKey; + + /** The value of the tag */ + @JsonProperty("tag_value") + private String tagValue; + + public EntityTagAssignment setEntityName(String entityName) { + this.entityName = entityName; + return this; + } + + public String getEntityName() { + return entityName; + } + + public EntityTagAssignment setEntityType(String entityType) { + this.entityType = entityType; + return this; + } + + public String getEntityType() { + return entityType; + } + + public EntityTagAssignment setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + public EntityTagAssignment setTagValue(String tagValue) { + this.tagValue = tagValue; + return this; + } + + public String getTagValue() { + return tagValue; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + EntityTagAssignment that = (EntityTagAssignment) o; + return Objects.equals(entityName, that.entityName) + && Objects.equals(entityType, that.entityType) + && Objects.equals(tagKey, that.tagKey) + && Objects.equals(tagValue, that.tagValue); + } + + @Override + public int hashCode() { + return Objects.hash(entityName, entityType, tagKey, tagValue); + } + + @Override + public String toString() { + return new ToStringer(EntityTagAssignment.class) + .add("entityName", entityName) + .add("entityType", entityType) + .add("tagKey", tagKey) + .add("tagValue", tagValue) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsAPI.java new file mode 100755 index 000000000..da9b01ba8 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsAPI.java @@ -0,0 +1,127 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Tags are attributes that include keys and optional values that you can use to organize and + * categorize entities in Unity Catalog. Entity tagging is currently supported on catalogs, schemas, + * tables (including views), columns, volumes. With these APIs, users can create, update, delete, + * and list tag assignments across Unity Catalog entities + */ +@Generated +public class EntityTagAssignmentsAPI { + private static final Logger LOG = LoggerFactory.getLogger(EntityTagAssignmentsAPI.class); + + private final EntityTagAssignmentsService impl; + + /** Regular-use constructor */ + public EntityTagAssignmentsAPI(ApiClient apiClient) { + impl = new EntityTagAssignmentsImpl(apiClient); + } + + /** Constructor for mocks */ + public EntityTagAssignmentsAPI(EntityTagAssignmentsService mock) { + impl = mock; + } + + /** + * Creates a tag assignment for an Unity Catalog entity. + * + *

To add tags to Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE SCHEMA** on the entity's parent schema - + * **USE CATALOG** on the entity's parent catalog + * + *

To add a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + public EntityTagAssignment create(CreateEntityTagAssignmentRequest request) { + return impl.create(request); + } + + public void delete(String entityType, String entityName, String tagKey) { + delete( + new DeleteEntityTagAssignmentRequest() + .setEntityType(entityType) + .setEntityName(entityName) + .setTagKey(tagKey)); + } + + /** + * Deletes a tag assignment for an Unity Catalog entity by its key. + * + *

To delete tags from Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE_SCHEMA** on the entity's parent schema - + * **USE_CATALOG** on the entity's parent catalog + * + *

To delete a governed tag from Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + public void delete(DeleteEntityTagAssignmentRequest request) { + impl.delete(request); + } + + public EntityTagAssignment get(String entityType, String entityName, String tagKey) { + return get( + new GetEntityTagAssignmentRequest() + .setEntityType(entityType) + .setEntityName(entityName) + .setTagKey(tagKey)); + } + + /** Gets a tag assignment for an Unity Catalog entity by tag key. */ + public EntityTagAssignment get(GetEntityTagAssignmentRequest request) { + return impl.get(request); + } + + public Iterable list(String entityType, String entityName) { + return list( + new ListEntityTagAssignmentsRequest().setEntityType(entityType).setEntityName(entityName)); + } + + /** List tag assignments for an Unity Catalog entity */ + public Iterable list(ListEntityTagAssignmentsRequest request) { + return new Paginator<>( + request, + impl::list, + ListEntityTagAssignmentsResponse::getTagAssignments, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + + /** + * Updates an existing tag assignment for an Unity Catalog entity. + * + *

To update tags to Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE SCHEMA** on the entity's parent schema - + * **USE CATALOG** on the entity's parent catalog + * + *

To update a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + public EntityTagAssignment update(UpdateEntityTagAssignmentRequest request) { + return impl.update(request); + } + + public EntityTagAssignmentsService impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsImpl.java new file mode 100755 index 000000000..c2c2f17b2 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsImpl.java @@ -0,0 +1,97 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of EntityTagAssignments */ +@Generated +class EntityTagAssignmentsImpl implements EntityTagAssignmentsService { + private final ApiClient apiClient; + + public EntityTagAssignmentsImpl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public EntityTagAssignment create(CreateEntityTagAssignmentRequest request) { + String path = "/api/2.1/unity-catalog/entity-tag-assignments"; + try { + Request req = new Request("POST", path, apiClient.serialize(request.getTagAssignment())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, EntityTagAssignment.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public void delete(DeleteEntityTagAssignmentRequest request) { + String path = + String.format( + "/api/2.1/unity-catalog/entity-tag-assignments/%s/%s/tags/%s", + request.getEntityType(), request.getEntityName(), request.getTagKey()); + try { + Request req = new Request("DELETE", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + apiClient.execute(req, Void.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public EntityTagAssignment get(GetEntityTagAssignmentRequest request) { + String path = + String.format( + "/api/2.1/unity-catalog/entity-tag-assignments/%s/%s/tags/%s", + request.getEntityType(), request.getEntityName(), request.getTagKey()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, EntityTagAssignment.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public ListEntityTagAssignmentsResponse list(ListEntityTagAssignmentsRequest request) { + String path = + String.format( + "/api/2.1/unity-catalog/entity-tag-assignments/%s/%s/tags", + request.getEntityType(), request.getEntityName()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, ListEntityTagAssignmentsResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public EntityTagAssignment update(UpdateEntityTagAssignmentRequest request) { + String path = + String.format( + "/api/2.1/unity-catalog/entity-tag-assignments/%s/%s/tags/%s", + request.getEntityType(), request.getEntityName(), request.getTagKey()); + try { + Request req = new Request("PATCH", path, apiClient.serialize(request.getTagAssignment())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, EntityTagAssignment.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsService.java new file mode 100755 index 000000000..b749dc050 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EntityTagAssignmentsService.java @@ -0,0 +1,69 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; + +/** + * Tags are attributes that include keys and optional values that you can use to organize and + * categorize entities in Unity Catalog. Entity tagging is currently supported on catalogs, schemas, + * tables (including views), columns, volumes. With these APIs, users can create, update, delete, + * and list tag assignments across Unity Catalog entities + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface EntityTagAssignmentsService { + /** + * Creates a tag assignment for an Unity Catalog entity. + * + *

To add tags to Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE SCHEMA** on the entity's parent schema - + * **USE CATALOG** on the entity's parent catalog + * + *

To add a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + EntityTagAssignment create(CreateEntityTagAssignmentRequest createEntityTagAssignmentRequest); + + /** + * Deletes a tag assignment for an Unity Catalog entity by its key. + * + *

To delete tags from Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE_SCHEMA** on the entity's parent schema - + * **USE_CATALOG** on the entity's parent catalog + * + *

To delete a governed tag from Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + void delete(DeleteEntityTagAssignmentRequest deleteEntityTagAssignmentRequest); + + /** Gets a tag assignment for an Unity Catalog entity by tag key. */ + EntityTagAssignment get(GetEntityTagAssignmentRequest getEntityTagAssignmentRequest); + + /** List tag assignments for an Unity Catalog entity */ + ListEntityTagAssignmentsResponse list( + ListEntityTagAssignmentsRequest listEntityTagAssignmentsRequest); + + /** + * Updates an existing tag assignment for an Unity Catalog entity. + * + *

To update tags to Unity Catalog entities, you must own the entity or have the following + * privileges: - **APPLY TAG** on the entity - **USE SCHEMA** on the entity's parent schema - + * **USE CATALOG** on the entity's parent catalog + * + *

To update a governed tag to Unity Catalog entities, you must also have the **ASSIGN** or + * **MANAGE** permission on the tag policy. See [Manage tag policy permissions]. + * + *

[Manage tag policy permissions]: + * https://docs.databricks.com/aws/en/admin/tag-policies/manage-permissions + */ + EntityTagAssignment update(UpdateEntityTagAssignmentRequest updateEntityTagAssignmentRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnvironmentSettings.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnvironmentSettings.java deleted file mode 100755 index 1e8e3a92e..000000000 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/EnvironmentSettings.java +++ /dev/null @@ -1,60 +0,0 @@ -// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. - -package com.databricks.sdk.service.catalog; - -import com.databricks.sdk.support.Generated; -import com.databricks.sdk.support.ToStringer; -import com.fasterxml.jackson.annotation.JsonProperty; -import java.util.Collection; -import java.util.Objects; - -@Generated -public class EnvironmentSettings { - /** */ - @JsonProperty("environment_version") - private String environmentVersion; - - /** */ - @JsonProperty("java_dependencies") - private Collection javaDependencies; - - public EnvironmentSettings setEnvironmentVersion(String environmentVersion) { - this.environmentVersion = environmentVersion; - return this; - } - - public String getEnvironmentVersion() { - return environmentVersion; - } - - public EnvironmentSettings setJavaDependencies(Collection javaDependencies) { - this.javaDependencies = javaDependencies; - return this; - } - - public Collection getJavaDependencies() { - return javaDependencies; - } - - @Override - public boolean equals(Object o) { - if (this == o) return true; - if (o == null || getClass() != o.getClass()) return false; - EnvironmentSettings that = (EnvironmentSettings) o; - return Objects.equals(environmentVersion, that.environmentVersion) - && Objects.equals(javaDependencies, that.javaDependencies); - } - - @Override - public int hashCode() { - return Objects.hash(environmentVersion, javaDependencies); - } - - @Override - public String toString() { - return new ToStringer(EnvironmentSettings.class) - .add("environmentVersion", environmentVersion) - .add("javaDependencies", javaDependencies) - .toString(); - } -} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccessRequestDestinationsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccessRequestDestinationsRequest.java new file mode 100755 index 000000000..31a34b389 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetAccessRequestDestinationsRequest.java @@ -0,0 +1,57 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetAccessRequestDestinationsRequest { + /** The full name of the securable. */ + @JsonIgnore private String fullName; + + /** The type of the securable. */ + @JsonIgnore private String securableType; + + public GetAccessRequestDestinationsRequest setFullName(String fullName) { + this.fullName = fullName; + return this; + } + + public String getFullName() { + return fullName; + } + + public GetAccessRequestDestinationsRequest setSecurableType(String securableType) { + this.securableType = securableType; + return this; + } + + public String getSecurableType() { + return securableType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetAccessRequestDestinationsRequest that = (GetAccessRequestDestinationsRequest) o; + return Objects.equals(fullName, that.fullName) + && Objects.equals(securableType, that.securableType); + } + + @Override + public int hashCode() { + return Objects.hash(fullName, securableType); + } + + @Override + public String toString() { + return new ToStringer(GetAccessRequestDestinationsRequest.class) + .add("fullName", fullName) + .add("securableType", securableType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEntityTagAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEntityTagAssignmentRequest.java new file mode 100755 index 000000000..166141bfe --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/GetEntityTagAssignmentRequest.java @@ -0,0 +1,74 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetEntityTagAssignmentRequest { + /** The fully qualified name of the entity to which the tag is assigned */ + @JsonIgnore private String entityName; + + /** + * The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, + * tables, columns, volumes. + */ + @JsonIgnore private String entityType; + + /** Required. The key of the tag */ + @JsonIgnore private String tagKey; + + public GetEntityTagAssignmentRequest setEntityName(String entityName) { + this.entityName = entityName; + return this; + } + + public String getEntityName() { + return entityName; + } + + public GetEntityTagAssignmentRequest setEntityType(String entityType) { + this.entityType = entityType; + return this; + } + + public String getEntityType() { + return entityType; + } + + public GetEntityTagAssignmentRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetEntityTagAssignmentRequest that = (GetEntityTagAssignmentRequest) o; + return Objects.equals(entityName, that.entityName) + && Objects.equals(entityType, that.entityType) + && Objects.equals(tagKey, that.tagKey); + } + + @Override + public int hashCode() { + return Objects.hash(entityName, entityType, tagKey); + } + + @Override + public String toString() { + return new ToStringer(GetEntityTagAssignmentRequest.class) + .add("entityName", entityName) + .add("entityType", entityType) + .add("tagKey", tagKey) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsRequest.java new file mode 100755 index 000000000..c21d87e93 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsRequest.java @@ -0,0 +1,93 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListEntityTagAssignmentsRequest { + /** The fully qualified name of the entity to which the tag is assigned */ + @JsonIgnore private String entityName; + + /** + * The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, + * tables, columns, volumes. + */ + @JsonIgnore private String entityType; + + /** Optional. Maximum number of tag assignments to return in a single page */ + @JsonIgnore + @QueryParam("max_results") + private Long maxResults; + + /** Optional. Pagination token to retrieve the next page of results */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + public ListEntityTagAssignmentsRequest setEntityName(String entityName) { + this.entityName = entityName; + return this; + } + + public String getEntityName() { + return entityName; + } + + public ListEntityTagAssignmentsRequest setEntityType(String entityType) { + this.entityType = entityType; + return this; + } + + public String getEntityType() { + return entityType; + } + + public ListEntityTagAssignmentsRequest setMaxResults(Long maxResults) { + this.maxResults = maxResults; + return this; + } + + public Long getMaxResults() { + return maxResults; + } + + public ListEntityTagAssignmentsRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListEntityTagAssignmentsRequest that = (ListEntityTagAssignmentsRequest) o; + return Objects.equals(entityName, that.entityName) + && Objects.equals(entityType, that.entityType) + && Objects.equals(maxResults, that.maxResults) + && Objects.equals(pageToken, that.pageToken); + } + + @Override + public int hashCode() { + return Objects.hash(entityName, entityType, maxResults, pageToken); + } + + @Override + public String toString() { + return new ToStringer(ListEntityTagAssignmentsRequest.class) + .add("entityName", entityName) + .add("entityType", entityType) + .add("maxResults", maxResults) + .add("pageToken", pageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsResponse.java new file mode 100755 index 000000000..cf6ae8e0e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListEntityTagAssignmentsResponse.java @@ -0,0 +1,61 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListEntityTagAssignmentsResponse { + /** Optional. Pagination token for retrieving the next page of results */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** The list of tag assignments */ + @JsonProperty("tag_assignments") + private Collection tagAssignments; + + public ListEntityTagAssignmentsResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListEntityTagAssignmentsResponse setTagAssignments( + Collection tagAssignments) { + this.tagAssignments = tagAssignments; + return this; + } + + public Collection getTagAssignments() { + return tagAssignments; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListEntityTagAssignmentsResponse that = (ListEntityTagAssignmentsResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) + && Objects.equals(tagAssignments, that.tagAssignments); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, tagAssignments); + } + + @Override + public String toString() { + return new ToStringer(ListEntityTagAssignmentsResponse.class) + .add("nextPageToken", nextPageToken) + .add("tagAssignments", tagAssignments) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/NotificationDestination.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/NotificationDestination.java new file mode 100755 index 000000000..573230127 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/NotificationDestination.java @@ -0,0 +1,84 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class NotificationDestination { + /** + * The identifier for the destination. This is the email address for EMAIL destinations, the URL + * for URL destinations, or the unique Databricks notification destination ID for all other + * external destinations. + */ + @JsonProperty("destination_id") + private String destinationId; + + /** The type of the destination. */ + @JsonProperty("destination_type") + private DestinationType destinationType; + + /** + * This field is used to denote whether the destination is the email of the owner of the securable + * object. The special destination cannot be assigned to a securable and only represents the + * default destination of the securable. The securable types that support default special + * destinations are: "catalog", "external_location", "connection", "credential", and "metastore". + * The **destination_type** of a **special_destination** is always EMAIL. + */ + @JsonProperty("special_destination") + private SpecialDestination specialDestination; + + public NotificationDestination setDestinationId(String destinationId) { + this.destinationId = destinationId; + return this; + } + + public String getDestinationId() { + return destinationId; + } + + public NotificationDestination setDestinationType(DestinationType destinationType) { + this.destinationType = destinationType; + return this; + } + + public DestinationType getDestinationType() { + return destinationType; + } + + public NotificationDestination setSpecialDestination(SpecialDestination specialDestination) { + this.specialDestination = specialDestination; + return this; + } + + public SpecialDestination getSpecialDestination() { + return specialDestination; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + NotificationDestination that = (NotificationDestination) o; + return Objects.equals(destinationId, that.destinationId) + && Objects.equals(destinationType, that.destinationType) + && Objects.equals(specialDestination, that.specialDestination); + } + + @Override + public int hashCode() { + return Objects.hash(destinationId, destinationType, specialDestination); + } + + @Override + public String toString() { + return new ToStringer(NotificationDestination.class) + .add("destinationId", destinationId) + .add("destinationType", destinationType) + .add("specialDestination", specialDestination) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyInfo.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyInfo.java index df6fd841e..d3772b1fe 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyInfo.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PolicyInfo.java @@ -35,7 +35,7 @@ public class PolicyInfo { private Collection exceptPrincipals; /** - * Type of securables that the policy should take effect on. Only `table` is supported at this + * Type of securables that the policy should take effect on. Only `TABLE` is supported at this * moment. Required on create and optional on update. */ @JsonProperty("for_securable_type") @@ -47,15 +47,15 @@ public class PolicyInfo { /** * Optional list of condition expressions used to match table columns. Only valid when - * `for_securable_type` is `table`. When specified, the policy only applies to tables whose + * `for_securable_type` is `TABLE`. When specified, the policy only applies to tables whose * columns satisfy all match conditions. */ @JsonProperty("match_columns") private Collection matchColumns; /** - * Name of the policy. Required on create and ignored on update. To update the name, use the - * `new_name` field. + * Name of the policy. Required on create and optional on update. To rename the policy, set `name` + * to a different value on update. */ @JsonProperty("name") private String name; @@ -68,7 +68,7 @@ public class PolicyInfo { private String onSecurableFullname; /** - * Type of the securable on which the policy is defined. Only `catalog`, `schema` and `table` are + * Type of the securable on which the policy is defined. Only `CATALOG`, `SCHEMA` and `TABLE` are * supported at this moment. Required on create and ignored on update. */ @JsonProperty("on_securable_type") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Principal.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Principal.java new file mode 100755 index 000000000..55ed154c7 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Principal.java @@ -0,0 +1,58 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class Principal { + /** Databricks user, group or service principal ID. */ + @JsonProperty("id") + private String id; + + /** */ + @JsonProperty("principal_type") + private PrincipalType principalType; + + public Principal setId(String id) { + this.id = id; + return this; + } + + public String getId() { + return id; + } + + public Principal setPrincipalType(PrincipalType principalType) { + this.principalType = principalType; + return this; + } + + public PrincipalType getPrincipalType() { + return principalType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + Principal that = (Principal) o; + return Objects.equals(id, that.id) && Objects.equals(principalType, that.principalType); + } + + @Override + public int hashCode() { + return Objects.hash(id, principalType); + } + + @Override + public String toString() { + return new ToStringer(Principal.class) + .add("id", id) + .add("principalType", principalType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrincipalType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrincipalType.java new file mode 100755 index 000000000..03cdcadca --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/PrincipalType.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum PrincipalType { + GROUP_PRINCIPAL, + SERVICE_PRINCIPAL, + USER_PRINCIPAL, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaAPI.java new file mode 100755 index 000000000..a37bc8093 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaAPI.java @@ -0,0 +1,88 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Request for Access enables customers to request access to and manage access request destinations + * for Unity Catalog securables. + * + *

These APIs provide a standardized way to update, get, and request to access request + * destinations. Fine-grained authorization ensures that only users with appropriate permissions can + * manage access request destinations. + */ +@Generated +public class RfaAPI { + private static final Logger LOG = LoggerFactory.getLogger(RfaAPI.class); + + private final RfaService impl; + + /** Regular-use constructor */ + public RfaAPI(ApiClient apiClient) { + impl = new RfaImpl(apiClient); + } + + /** Constructor for mocks */ + public RfaAPI(RfaService mock) { + impl = mock; + } + + /** + * Creates access requests for Unity Catalog permissions for a specified principal on a securable + * object. This Batch API can take in multiple principals, securable objects, and permissions as + * the input and returns the access request destinations for each. Principals must be unique + * across the API call. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + public BatchCreateAccessRequestsResponse batchCreateAccessRequests( + BatchCreateAccessRequestsRequest request) { + return impl.batchCreateAccessRequests(request); + } + + public AccessRequestDestinations getAccessRequestDestinations( + String securableType, String fullName) { + return getAccessRequestDestinations( + new GetAccessRequestDestinationsRequest() + .setSecurableType(securableType) + .setFullName(fullName)); + } + + /** + * Gets an array of access request destinations for the specified securable. Any caller can see + * URL destinations or the destinations on the metastore. Otherwise, only those with **BROWSE** + * permissions on the securable can see destinations. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + public AccessRequestDestinations getAccessRequestDestinations( + GetAccessRequestDestinationsRequest request) { + return impl.getAccessRequestDestinations(request); + } + + /** + * Updates the access request destinations for the given securable. The caller must be a metastore + * admin, the owner of the securable, or a user that has the **MANAGE** privilege on the securable + * in order to assign destinations. Destinations cannot be updated for securables underneath + * schemas (tables, volumes, functions, and models). For these securable types, destinations are + * inherited from the parent securable. A maximum of 5 emails and 5 external notification + * destinations (Slack, Microsoft Teams, and Generic Webhook destinations) can be assigned to a + * securable. If a URL destination is assigned, no other destinations can be set. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + public AccessRequestDestinations updateAccessRequestDestinations( + UpdateAccessRequestDestinationsRequest request) { + return impl.updateAccessRequestDestinations(request); + } + + public RfaService impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaImpl.java new file mode 100755 index 000000000..702479620 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaImpl.java @@ -0,0 +1,65 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of Rfa */ +@Generated +class RfaImpl implements RfaService { + private final ApiClient apiClient; + + public RfaImpl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public BatchCreateAccessRequestsResponse batchCreateAccessRequests( + BatchCreateAccessRequestsRequest request) { + String path = "/api/3.0/rfa/requests"; + try { + Request req = new Request("POST", path, apiClient.serialize(request)); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, BatchCreateAccessRequestsResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public AccessRequestDestinations getAccessRequestDestinations( + GetAccessRequestDestinationsRequest request) { + String path = + String.format( + "/api/3.0/rfa/destinations/%s/%s", request.getSecurableType(), request.getFullName()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, AccessRequestDestinations.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public AccessRequestDestinations updateAccessRequestDestinations( + UpdateAccessRequestDestinationsRequest request) { + String path = "/api/3.0/rfa/destinations"; + try { + Request req = + new Request("PATCH", path, apiClient.serialize(request.getAccessRequestDestinations())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, AccessRequestDestinations.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaService.java new file mode 100755 index 000000000..15b8dc7c3 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RfaService.java @@ -0,0 +1,57 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; + +/** + * Request for Access enables customers to request access to and manage access request destinations + * for Unity Catalog securables. + * + *

These APIs provide a standardized way to update, get, and request to access request + * destinations. Fine-grained authorization ensures that only users with appropriate permissions can + * manage access request destinations. + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface RfaService { + /** + * Creates access requests for Unity Catalog permissions for a specified principal on a securable + * object. This Batch API can take in multiple principals, securable objects, and permissions as + * the input and returns the access request destinations for each. Principals must be unique + * across the API call. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + BatchCreateAccessRequestsResponse batchCreateAccessRequests( + BatchCreateAccessRequestsRequest batchCreateAccessRequestsRequest); + + /** + * Gets an array of access request destinations for the specified securable. Any caller can see + * URL destinations or the destinations on the metastore. Otherwise, only those with **BROWSE** + * permissions on the securable can see destinations. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + AccessRequestDestinations getAccessRequestDestinations( + GetAccessRequestDestinationsRequest getAccessRequestDestinationsRequest); + + /** + * Updates the access request destinations for the given securable. The caller must be a metastore + * admin, the owner of the securable, or a user that has the **MANAGE** privilege on the securable + * in order to assign destinations. Destinations cannot be updated for securables underneath + * schemas (tables, volumes, functions, and models). For these securable types, destinations are + * inherited from the parent securable. A maximum of 5 emails and 5 external notification + * destinations (Slack, Microsoft Teams, and Generic Webhook destinations) can be assigned to a + * securable. If a URL destination is assigned, no other destinations can be set. + * + *

The supported securable types are: "metastore", "catalog", "schema", "table", + * "external_location", "connection", "credential", "function", "registered_model", and "volume". + */ + AccessRequestDestinations updateAccessRequestDestinations( + UpdateAccessRequestDestinationsRequest updateAccessRequestDestinationsRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Securable.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Securable.java new file mode 100755 index 000000000..b6b8a8674 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/Securable.java @@ -0,0 +1,83 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * Generic definition of a securable, which is uniquely defined in a metastore by its type and full + * name. + */ +@Generated +public class Securable { + /** Required. The full name of the catalog/schema/table. Optional if resource_name is present. */ + @JsonProperty("full_name") + private String fullName; + + /** + * Optional. The name of the Share object that contains the securable when the securable is + * getting shared in D2D Delta Sharing. + */ + @JsonProperty("provider_share") + private String providerShare; + + /** + * Required. The type of securable (catalog/schema/table). Optional if resource_name is present. + */ + @JsonProperty("type") + private SecurableType typeValue; + + public Securable setFullName(String fullName) { + this.fullName = fullName; + return this; + } + + public String getFullName() { + return fullName; + } + + public Securable setProviderShare(String providerShare) { + this.providerShare = providerShare; + return this; + } + + public String getProviderShare() { + return providerShare; + } + + public Securable setType(SecurableType typeValue) { + this.typeValue = typeValue; + return this; + } + + public SecurableType getType() { + return typeValue; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + Securable that = (Securable) o; + return Objects.equals(fullName, that.fullName) + && Objects.equals(providerShare, that.providerShare) + && Objects.equals(typeValue, that.typeValue); + } + + @Override + public int hashCode() { + return Objects.hash(fullName, providerShare, typeValue); + } + + @Override + public String toString() { + return new ToStringer(Securable.class) + .add("fullName", fullName) + .add("providerShare", providerShare) + .add("typeValue", typeValue) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurablePermissions.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurablePermissions.java new file mode 100755 index 000000000..2a5854931 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SecurablePermissions.java @@ -0,0 +1,60 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class SecurablePermissions { + /** List of requested Unity Catalog permissions. */ + @JsonProperty("permissions") + private Collection permissions; + + /** The securable for which the access request destinations are being requested. */ + @JsonProperty("securable") + private Securable securable; + + public SecurablePermissions setPermissions(Collection permissions) { + this.permissions = permissions; + return this; + } + + public Collection getPermissions() { + return permissions; + } + + public SecurablePermissions setSecurable(Securable securable) { + this.securable = securable; + return this; + } + + public Securable getSecurable() { + return securable; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + SecurablePermissions that = (SecurablePermissions) o; + return Objects.equals(permissions, that.permissions) + && Objects.equals(securable, that.securable); + } + + @Override + public int hashCode() { + return Objects.hash(permissions, securable); + } + + @Override + public String toString() { + return new ToStringer(SecurablePermissions.class) + .add("permissions", permissions) + .add("securable", securable) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SpecialDestination.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SpecialDestination.java new file mode 100755 index 000000000..105d24844 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/SpecialDestination.java @@ -0,0 +1,14 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum SpecialDestination { + SPECIAL_DESTINATION_CATALOG_OWNER, + SPECIAL_DESTINATION_CONNECTION_OWNER, + SPECIAL_DESTINATION_CREDENTIAL_OWNER, + SPECIAL_DESTINATION_EXTERNAL_LOCATION_OWNER, + SPECIAL_DESTINATION_METASTORE_OWNER, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateAccessRequestDestinationsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateAccessRequestDestinationsRequest.java new file mode 100755 index 000000000..dac6c0ae3 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateAccessRequestDestinationsRequest.java @@ -0,0 +1,76 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class UpdateAccessRequestDestinationsRequest { + /** + * The access request destinations to assign to the securable. For each destination, a + * **destination_id** and **destination_type** must be defined. + */ + @JsonProperty("access_request_destinations") + private AccessRequestDestinations accessRequestDestinations; + + /** + * The field mask must be a single string, with multiple fields separated by commas (no spaces). + * The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields + * (e.g., `author.given_name`). Specification of elements in sequence or map fields is not + * allowed, as only the entire collection field can be specified. Field names must exactly match + * the resource field names. + * + *

A field mask of `*` indicates full replacement. It’s recommended to always explicitly list + * the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if + * the API changes in the future. + */ + @JsonIgnore + @QueryParam("update_mask") + private String updateMask; + + public UpdateAccessRequestDestinationsRequest setAccessRequestDestinations( + AccessRequestDestinations accessRequestDestinations) { + this.accessRequestDestinations = accessRequestDestinations; + return this; + } + + public AccessRequestDestinations getAccessRequestDestinations() { + return accessRequestDestinations; + } + + public UpdateAccessRequestDestinationsRequest setUpdateMask(String updateMask) { + this.updateMask = updateMask; + return this; + } + + public String getUpdateMask() { + return updateMask; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + UpdateAccessRequestDestinationsRequest that = (UpdateAccessRequestDestinationsRequest) o; + return Objects.equals(accessRequestDestinations, that.accessRequestDestinations) + && Objects.equals(updateMask, that.updateMask); + } + + @Override + public int hashCode() { + return Objects.hash(accessRequestDestinations, updateMask); + } + + @Override + public String toString() { + return new ToStringer(UpdateAccessRequestDestinationsRequest.class) + .add("accessRequestDestinations", accessRequestDestinations) + .add("updateMask", updateMask) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateConnection.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateConnection.java index 5119aa1fa..d37165c3a 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateConnection.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateConnection.java @@ -11,10 +11,6 @@ @Generated public class UpdateConnection { - /** [Create,Update:OPT] Connection environment settings as EnvironmentSettings object. */ - @JsonProperty("environment_settings") - private EnvironmentSettings environmentSettings; - /** Name of the connection. */ @JsonIgnore private String name; @@ -30,15 +26,6 @@ public class UpdateConnection { @JsonProperty("owner") private String owner; - public UpdateConnection setEnvironmentSettings(EnvironmentSettings environmentSettings) { - this.environmentSettings = environmentSettings; - return this; - } - - public EnvironmentSettings getEnvironmentSettings() { - return environmentSettings; - } - public UpdateConnection setName(String name) { this.name = name; return this; @@ -80,8 +67,7 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; UpdateConnection that = (UpdateConnection) o; - return Objects.equals(environmentSettings, that.environmentSettings) - && Objects.equals(name, that.name) + return Objects.equals(name, that.name) && Objects.equals(newName, that.newName) && Objects.equals(options, that.options) && Objects.equals(owner, that.owner); @@ -89,13 +75,12 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(environmentSettings, name, newName, options, owner); + return Objects.hash(name, newName, options, owner); } @Override public String toString() { return new ToStringer(UpdateConnection.class) - .add("environmentSettings", environmentSettings) .add("name", name) .add("newName", newName) .add("options", options) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateEntityTagAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateEntityTagAssignmentRequest.java new file mode 100755 index 000000000..589c6888d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateEntityTagAssignmentRequest.java @@ -0,0 +1,117 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.catalog; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class UpdateEntityTagAssignmentRequest { + /** The fully qualified name of the entity to which the tag is assigned */ + @JsonIgnore private String entityName; + + /** + * The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, + * tables, columns, volumes. + */ + @JsonIgnore private String entityType; + + /** */ + @JsonProperty("tag_assignment") + private EntityTagAssignment tagAssignment; + + /** The key of the tag */ + @JsonIgnore private String tagKey; + + /** + * The field mask must be a single string, with multiple fields separated by commas (no spaces). + * The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields + * (e.g., `author.given_name`). Specification of elements in sequence or map fields is not + * allowed, as only the entire collection field can be specified. Field names must exactly match + * the resource field names. + * + *

A field mask of `*` indicates full replacement. It’s recommended to always explicitly list + * the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if + * the API changes in the future. + */ + @JsonIgnore + @QueryParam("update_mask") + private String updateMask; + + public UpdateEntityTagAssignmentRequest setEntityName(String entityName) { + this.entityName = entityName; + return this; + } + + public String getEntityName() { + return entityName; + } + + public UpdateEntityTagAssignmentRequest setEntityType(String entityType) { + this.entityType = entityType; + return this; + } + + public String getEntityType() { + return entityType; + } + + public UpdateEntityTagAssignmentRequest setTagAssignment(EntityTagAssignment tagAssignment) { + this.tagAssignment = tagAssignment; + return this; + } + + public EntityTagAssignment getTagAssignment() { + return tagAssignment; + } + + public UpdateEntityTagAssignmentRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + public UpdateEntityTagAssignmentRequest setUpdateMask(String updateMask) { + this.updateMask = updateMask; + return this; + } + + public String getUpdateMask() { + return updateMask; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + UpdateEntityTagAssignmentRequest that = (UpdateEntityTagAssignmentRequest) o; + return Objects.equals(entityName, that.entityName) + && Objects.equals(entityType, that.entityType) + && Objects.equals(tagAssignment, that.tagAssignment) + && Objects.equals(tagKey, that.tagKey) + && Objects.equals(updateMask, that.updateMask); + } + + @Override + public int hashCode() { + return Objects.hash(entityName, entityType, tagAssignment, tagKey, updateMask); + } + + @Override + public String toString() { + return new ToStringer(UpdateEntityTagAssignmentRequest.class) + .add("entityName", entityName) + .add("entityType", entityType) + .add("tagAssignment", tagAssignment) + .add("tagKey", tagKey) + .add("updateMask", updateMask) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoom.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoom.java index 08962f135..0372a8bd2 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoom.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoom.java @@ -46,7 +46,7 @@ public class CleanRoom { private CleanRoomOutputCatalog outputCatalog; /** - * This is Databricks username of the owner of the local clean room securable for permission + * This is the Databricks username of the owner of the local clean room securable for permission * management. */ @JsonProperty("owner") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetNotebook.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetNotebook.java index d56dd9b48..c4d6211cc 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetNotebook.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomAssetNotebook.java @@ -29,7 +29,7 @@ public class CleanRoomAssetNotebook { @JsonProperty("reviews") private Collection reviews; - /** collaborators that can run the notebook */ + /** Aliases of collaborators that can run the notebook. */ @JsonProperty("runner_collaborator_aliases") private Collection runnerCollaboratorAliases; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomCollaborator.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomCollaborator.java index 88dae5502..f757862ee 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomCollaborator.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/cleanrooms/CleanRoomCollaborator.java @@ -31,7 +31,7 @@ public class CleanRoomCollaborator { private String displayName; /** - * The global Unity Catalog metastore id of the collaborator. The identifier is of format + * The global Unity Catalog metastore ID of the collaborator. The identifier is of format * cloud:region:metastore-uuid. */ @JsonProperty("global_metastore_id") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieAPI.java index 102e09ebd..7bd915755 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieAPI.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieAPI.java @@ -120,6 +120,19 @@ public void deleteConversation(GenieDeleteConversationRequest request) { impl.deleteConversation(request); } + public void deleteConversationMessage(String spaceId, String conversationId, String messageId) { + deleteConversationMessage( + new GenieDeleteConversationMessageRequest() + .setSpaceId(spaceId) + .setConversationId(conversationId) + .setMessageId(messageId)); + } + + /** Delete a conversation message. */ + public void deleteConversationMessage(GenieDeleteConversationMessageRequest request) { + impl.deleteConversationMessage(request); + } + /** * Execute the SQL for a message query attachment. Use this API when the query attachment has * expired and needs to be re-executed. @@ -129,7 +142,10 @@ public GenieGetMessageQueryResultResponse executeMessageAttachmentQuery( return impl.executeMessageAttachmentQuery(request); } - /** Execute the SQL query in the message. */ + /** + * DEPRECATED: Use [Execute Message Attachment Query](:method:genie/executemessageattachmentquery) + * instead. + */ public GenieGetMessageQueryResultResponse executeMessageQuery( GenieExecuteMessageQueryRequest request) { return impl.executeMessageQuery(request); @@ -177,8 +193,8 @@ public GenieGetMessageQueryResultResponse getMessageQueryResult( } /** - * Get the result of SQL query if the message has a query attachment. This is only available if a - * message has a query attachment and the message status is `EXECUTING_QUERY`. + * DEPRECATED: Use [Get Message Attachment Query + * Result](:method:genie/getmessageattachmentqueryresult) instead. */ public GenieGetMessageQueryResultResponse getMessageQueryResult( GenieGetMessageQueryResultRequest request) { @@ -196,8 +212,8 @@ public GenieGetMessageQueryResultResponse getMessageQueryResultByAttachment( } /** - * Get the result of SQL query if the message has a query attachment. This is only available if a - * message has a query attachment and the message status is `EXECUTING_QUERY` OR `COMPLETED`. + * DEPRECATED: Use [Get Message Attachment Query + * Result](:method:genie/getmessageattachmentqueryresult) instead. */ public GenieGetMessageQueryResultResponse getMessageQueryResultByAttachment( GenieGetQueryResultByAttachmentRequest request) { @@ -213,6 +229,20 @@ public GenieSpace getSpace(GenieGetSpaceRequest request) { return impl.getSpace(request); } + public GenieListConversationMessagesResponse listConversationMessages( + String spaceId, String conversationId) { + return listConversationMessages( + new GenieListConversationMessagesRequest() + .setSpaceId(spaceId) + .setConversationId(conversationId)); + } + + /** List messages in a conversation */ + public GenieListConversationMessagesResponse listConversationMessages( + GenieListConversationMessagesRequest request) { + return impl.listConversationMessages(request); + } + public GenieListConversationsResponse listConversations(String spaceId) { return listConversations(new GenieListConversationsRequest().setSpaceId(spaceId)); } @@ -227,6 +257,11 @@ public GenieListSpacesResponse listSpaces(GenieListSpacesRequest request) { return impl.listSpaces(request); } + /** Send feedback for a message. */ + public void sendMessageFeedback(GenieSendMessageFeedbackRequest request) { + impl.sendMessageFeedback(request); + } + /** Start a new conversation. */ public Wait startConversation( GenieStartConversationMessageRequest request) { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieDeleteConversationMessageRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieDeleteConversationMessageRequest.java new file mode 100755 index 000000000..ff7a2fd5f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieDeleteConversationMessageRequest.java @@ -0,0 +1,71 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.dashboards; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GenieDeleteConversationMessageRequest { + /** The ID associated with the conversation. */ + @JsonIgnore private String conversationId; + + /** The ID associated with the message to delete. */ + @JsonIgnore private String messageId; + + /** The ID associated with the Genie space where the message is located. */ + @JsonIgnore private String spaceId; + + public GenieDeleteConversationMessageRequest setConversationId(String conversationId) { + this.conversationId = conversationId; + return this; + } + + public String getConversationId() { + return conversationId; + } + + public GenieDeleteConversationMessageRequest setMessageId(String messageId) { + this.messageId = messageId; + return this; + } + + public String getMessageId() { + return messageId; + } + + public GenieDeleteConversationMessageRequest setSpaceId(String spaceId) { + this.spaceId = spaceId; + return this; + } + + public String getSpaceId() { + return spaceId; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GenieDeleteConversationMessageRequest that = (GenieDeleteConversationMessageRequest) o; + return Objects.equals(conversationId, that.conversationId) + && Objects.equals(messageId, that.messageId) + && Objects.equals(spaceId, that.spaceId); + } + + @Override + public int hashCode() { + return Objects.hash(conversationId, messageId, spaceId); + } + + @Override + public String toString() { + return new ToStringer(GenieDeleteConversationMessageRequest.class) + .add("conversationId", conversationId) + .add("messageId", messageId) + .add("spaceId", spaceId) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieFeedbackRating.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieFeedbackRating.java new file mode 100755 index 000000000..5f9c5aee2 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieFeedbackRating.java @@ -0,0 +1,13 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.dashboards; + +import com.databricks.sdk.support.Generated; + +/** Feedback rating for Genie messages */ +@Generated +public enum GenieFeedbackRating { + NEGATIVE, + NONE, + POSITIVE, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieImpl.java index d055781dc..432a981a9 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieImpl.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieImpl.java @@ -49,6 +49,22 @@ public void deleteConversation(GenieDeleteConversationRequest request) { } } + @Override + public void deleteConversationMessage(GenieDeleteConversationMessageRequest request) { + String path = + String.format( + "/api/2.0/genie/spaces/%s/conversations/%s/messages/%s", + request.getSpaceId(), request.getConversationId(), request.getMessageId()); + try { + Request req = new Request("DELETE", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + apiClient.execute(req, Void.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + @Override public GenieGetMessageQueryResultResponse executeMessageAttachmentQuery( GenieExecuteMessageAttachmentQueryRequest request) { @@ -172,6 +188,23 @@ public GenieSpace getSpace(GenieGetSpaceRequest request) { } } + @Override + public GenieListConversationMessagesResponse listConversationMessages( + GenieListConversationMessagesRequest request) { + String path = + String.format( + "/api/2.0/genie/spaces/%s/conversations/%s/messages", + request.getSpaceId(), request.getConversationId()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, GenieListConversationMessagesResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + @Override public GenieListConversationsResponse listConversations(GenieListConversationsRequest request) { String path = String.format("/api/2.0/genie/spaces/%s/conversations", request.getSpaceId()); @@ -198,6 +231,23 @@ public GenieListSpacesResponse listSpaces(GenieListSpacesRequest request) { } } + @Override + public void sendMessageFeedback(GenieSendMessageFeedbackRequest request) { + String path = + String.format( + "/api/2.0/genie/spaces/%s/conversations/%s/messages/%s/feedback", + request.getSpaceId(), request.getConversationId(), request.getMessageId()); + try { + Request req = new Request("POST", path, apiClient.serialize(request)); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + apiClient.execute(req, Void.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + @Override public GenieStartConversationResponse startConversation( GenieStartConversationMessageRequest request) { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesRequest.java new file mode 100755 index 000000000..8a7ea7b2f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesRequest.java @@ -0,0 +1,90 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.dashboards; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GenieListConversationMessagesRequest { + /** The ID of the conversation to list messages from */ + @JsonIgnore private String conversationId; + + /** Maximum number of messages to return per page */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** Token to get the next page of results */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + /** The ID associated with the Genie space where the conversation is located */ + @JsonIgnore private String spaceId; + + public GenieListConversationMessagesRequest setConversationId(String conversationId) { + this.conversationId = conversationId; + return this; + } + + public String getConversationId() { + return conversationId; + } + + public GenieListConversationMessagesRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public GenieListConversationMessagesRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + public GenieListConversationMessagesRequest setSpaceId(String spaceId) { + this.spaceId = spaceId; + return this; + } + + public String getSpaceId() { + return spaceId; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GenieListConversationMessagesRequest that = (GenieListConversationMessagesRequest) o; + return Objects.equals(conversationId, that.conversationId) + && Objects.equals(pageSize, that.pageSize) + && Objects.equals(pageToken, that.pageToken) + && Objects.equals(spaceId, that.spaceId); + } + + @Override + public int hashCode() { + return Objects.hash(conversationId, pageSize, pageToken, spaceId); + } + + @Override + public String toString() { + return new ToStringer(GenieListConversationMessagesRequest.class) + .add("conversationId", conversationId) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .add("spaceId", spaceId) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesResponse.java new file mode 100755 index 000000000..818e27f9c --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationMessagesResponse.java @@ -0,0 +1,60 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.dashboards; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class GenieListConversationMessagesResponse { + /** List of messages in the conversation. */ + @JsonProperty("messages") + private Collection messages; + + /** The token to use for retrieving the next page of results. */ + @JsonProperty("next_page_token") + private String nextPageToken; + + public GenieListConversationMessagesResponse setMessages(Collection messages) { + this.messages = messages; + return this; + } + + public Collection getMessages() { + return messages; + } + + public GenieListConversationMessagesResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GenieListConversationMessagesResponse that = (GenieListConversationMessagesResponse) o; + return Objects.equals(messages, that.messages) + && Objects.equals(nextPageToken, that.nextPageToken); + } + + @Override + public int hashCode() { + return Objects.hash(messages, nextPageToken); + } + + @Override + public String toString() { + return new ToStringer(GenieListConversationMessagesResponse.class) + .add("messages", messages) + .add("nextPageToken", nextPageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsRequest.java index 7be6e4bea..b3091c97c 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieListConversationsRequest.java @@ -10,6 +10,14 @@ @Generated public class GenieListConversationsRequest { + /** + * Include all conversations in the space across all users. Requires "Can Manage" permission on + * the space. + */ + @JsonIgnore + @QueryParam("include_all") + private Boolean includeAll; + /** Maximum number of conversations to return per page */ @JsonIgnore @QueryParam("page_size") @@ -23,6 +31,15 @@ public class GenieListConversationsRequest { /** The ID of the Genie space to retrieve conversations from. */ @JsonIgnore private String spaceId; + public GenieListConversationsRequest setIncludeAll(Boolean includeAll) { + this.includeAll = includeAll; + return this; + } + + public Boolean getIncludeAll() { + return includeAll; + } + public GenieListConversationsRequest setPageSize(Long pageSize) { this.pageSize = pageSize; return this; @@ -55,19 +72,21 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; GenieListConversationsRequest that = (GenieListConversationsRequest) o; - return Objects.equals(pageSize, that.pageSize) + return Objects.equals(includeAll, that.includeAll) + && Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken) && Objects.equals(spaceId, that.spaceId); } @Override public int hashCode() { - return Objects.hash(pageSize, pageToken, spaceId); + return Objects.hash(includeAll, pageSize, pageToken, spaceId); } @Override public String toString() { return new ToStringer(GenieListConversationsRequest.class) + .add("includeAll", includeAll) .add("pageSize", pageSize) .add("pageToken", pageToken) .add("spaceId", spaceId) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieSendMessageFeedbackRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieSendMessageFeedbackRequest.java new file mode 100755 index 000000000..905392e5d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieSendMessageFeedbackRequest.java @@ -0,0 +1,102 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.dashboards; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class GenieSendMessageFeedbackRequest { + /** The ID associated with the conversation. */ + @JsonIgnore private String conversationId; + + /** The rating (POSITIVE, NEGATIVE, or NONE). */ + @JsonProperty("feedback_rating") + private GenieFeedbackRating feedbackRating; + + /** Optional text feedback that will be stored as a comment. */ + @JsonProperty("feedback_text") + private String feedbackText; + + /** The ID associated with the message to provide feedback for. */ + @JsonIgnore private String messageId; + + /** The ID associated with the Genie space where the message is located. */ + @JsonIgnore private String spaceId; + + public GenieSendMessageFeedbackRequest setConversationId(String conversationId) { + this.conversationId = conversationId; + return this; + } + + public String getConversationId() { + return conversationId; + } + + public GenieSendMessageFeedbackRequest setFeedbackRating(GenieFeedbackRating feedbackRating) { + this.feedbackRating = feedbackRating; + return this; + } + + public GenieFeedbackRating getFeedbackRating() { + return feedbackRating; + } + + public GenieSendMessageFeedbackRequest setFeedbackText(String feedbackText) { + this.feedbackText = feedbackText; + return this; + } + + public String getFeedbackText() { + return feedbackText; + } + + public GenieSendMessageFeedbackRequest setMessageId(String messageId) { + this.messageId = messageId; + return this; + } + + public String getMessageId() { + return messageId; + } + + public GenieSendMessageFeedbackRequest setSpaceId(String spaceId) { + this.spaceId = spaceId; + return this; + } + + public String getSpaceId() { + return spaceId; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GenieSendMessageFeedbackRequest that = (GenieSendMessageFeedbackRequest) o; + return Objects.equals(conversationId, that.conversationId) + && Objects.equals(feedbackRating, that.feedbackRating) + && Objects.equals(feedbackText, that.feedbackText) + && Objects.equals(messageId, that.messageId) + && Objects.equals(spaceId, that.spaceId); + } + + @Override + public int hashCode() { + return Objects.hash(conversationId, feedbackRating, feedbackText, messageId, spaceId); + } + + @Override + public String toString() { + return new ToStringer(GenieSendMessageFeedbackRequest.class) + .add("conversationId", conversationId) + .add("feedbackRating", feedbackRating) + .add("feedbackText", feedbackText) + .add("messageId", messageId) + .add("spaceId", spaceId) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieService.java index f0ac59161..d12aa918c 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/GenieService.java @@ -25,6 +25,10 @@ GenieMessage createMessage( /** Delete a conversation. */ void deleteConversation(GenieDeleteConversationRequest genieDeleteConversationRequest); + /** Delete a conversation message. */ + void deleteConversationMessage( + GenieDeleteConversationMessageRequest genieDeleteConversationMessageRequest); + /** * Execute the SQL for a message query attachment. Use this API when the query attachment has * expired and needs to be re-executed. @@ -32,7 +36,10 @@ GenieMessage createMessage( GenieGetMessageQueryResultResponse executeMessageAttachmentQuery( GenieExecuteMessageAttachmentQueryRequest genieExecuteMessageAttachmentQueryRequest); - /** Execute the SQL query in the message. */ + /** + * DEPRECATED: Use [Execute Message Attachment Query](:method:genie/executemessageattachmentquery) + * instead. + */ GenieGetMessageQueryResultResponse executeMessageQuery( GenieExecuteMessageQueryRequest genieExecuteMessageQueryRequest); @@ -47,15 +54,15 @@ GenieGetMessageQueryResultResponse getMessageAttachmentQueryResult( GenieGetMessageAttachmentQueryResultRequest genieGetMessageAttachmentQueryResultRequest); /** - * Get the result of SQL query if the message has a query attachment. This is only available if a - * message has a query attachment and the message status is `EXECUTING_QUERY`. + * DEPRECATED: Use [Get Message Attachment Query + * Result](:method:genie/getmessageattachmentqueryresult) instead. */ GenieGetMessageQueryResultResponse getMessageQueryResult( GenieGetMessageQueryResultRequest genieGetMessageQueryResultRequest); /** - * Get the result of SQL query if the message has a query attachment. This is only available if a - * message has a query attachment and the message status is `EXECUTING_QUERY` OR `COMPLETED`. + * DEPRECATED: Use [Get Message Attachment Query + * Result](:method:genie/getmessageattachmentqueryresult) instead. */ GenieGetMessageQueryResultResponse getMessageQueryResultByAttachment( GenieGetQueryResultByAttachmentRequest genieGetQueryResultByAttachmentRequest); @@ -63,6 +70,10 @@ GenieGetMessageQueryResultResponse getMessageQueryResultByAttachment( /** Get details of a Genie Space. */ GenieSpace getSpace(GenieGetSpaceRequest genieGetSpaceRequest); + /** List messages in a conversation */ + GenieListConversationMessagesResponse listConversationMessages( + GenieListConversationMessagesRequest genieListConversationMessagesRequest); + /** Get a list of conversations in a Genie Space. */ GenieListConversationsResponse listConversations( GenieListConversationsRequest genieListConversationsRequest); @@ -70,6 +81,9 @@ GenieListConversationsResponse listConversations( /** Get list of Genie Spaces. */ GenieListSpacesResponse listSpaces(GenieListSpacesRequest genieListSpacesRequest); + /** Send feedback for a message. */ + void sendMessageFeedback(GenieSendMessageFeedbackRequest genieSendMessageFeedbackRequest); + /** Start a new conversation. */ GenieStartConversationResponse startConversation( GenieStartConversationMessageRequest genieStartConversationMessageRequest); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseJob.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseJob.java index f772fc643..a78f27377 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseJob.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseJob.java @@ -31,6 +31,10 @@ public class BaseJob { @JsonProperty("effective_budget_policy_id") private String effectiveBudgetPolicyId; + /** The id of the usage policy used by this job for cost attribution purposes. */ + @JsonProperty("effective_usage_policy_id") + private String effectiveUsagePolicyId; + /** * Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. * They can be accessed via :method:jobs/get endpoint. It is only relevant for API 2.2 @@ -81,6 +85,15 @@ public String getEffectiveBudgetPolicyId() { return effectiveBudgetPolicyId; } + public BaseJob setEffectiveUsagePolicyId(String effectiveUsagePolicyId) { + this.effectiveUsagePolicyId = effectiveUsagePolicyId; + return this; + } + + public String getEffectiveUsagePolicyId() { + return effectiveUsagePolicyId; + } + public BaseJob setHasMore(Boolean hasMore) { this.hasMore = hasMore; return this; @@ -125,6 +138,7 @@ public boolean equals(Object o) { return Objects.equals(createdTime, that.createdTime) && Objects.equals(creatorUserName, that.creatorUserName) && Objects.equals(effectiveBudgetPolicyId, that.effectiveBudgetPolicyId) + && Objects.equals(effectiveUsagePolicyId, that.effectiveUsagePolicyId) && Objects.equals(hasMore, that.hasMore) && Objects.equals(jobId, that.jobId) && Objects.equals(settings, that.settings) @@ -137,6 +151,7 @@ public int hashCode() { createdTime, creatorUserName, effectiveBudgetPolicyId, + effectiveUsagePolicyId, hasMore, jobId, settings, @@ -149,6 +164,7 @@ public String toString() { .add("createdTime", createdTime) .add("creatorUserName", creatorUserName) .add("effectiveBudgetPolicyId", effectiveBudgetPolicyId) + .add("effectiveUsagePolicyId", effectiveUsagePolicyId) .add("hasMore", hasMore) .add("jobId", jobId) .add("settings", settings) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseRun.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseRun.java index 147838c6d..3b1b2da28 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseRun.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/BaseRun.java @@ -63,6 +63,10 @@ public class BaseRun { @JsonProperty("effective_performance_target") private PerformanceTarget effectivePerformanceTarget; + /** The id of the usage policy used by this run for cost attribution purposes. */ + @JsonProperty("effective_usage_policy_id") + private String effectiveUsagePolicyId; + /** * The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This * field is set to 0 if the job is still running. @@ -280,6 +284,15 @@ public PerformanceTarget getEffectivePerformanceTarget() { return effectivePerformanceTarget; } + public BaseRun setEffectiveUsagePolicyId(String effectiveUsagePolicyId) { + this.effectiveUsagePolicyId = effectiveUsagePolicyId; + return this; + } + + public String getEffectiveUsagePolicyId() { + return effectiveUsagePolicyId; + } + public BaseRun setEndTime(Long endTime) { this.endTime = endTime; return this; @@ -526,6 +539,7 @@ public boolean equals(Object o) { && Objects.equals(creatorUserName, that.creatorUserName) && Objects.equals(description, that.description) && Objects.equals(effectivePerformanceTarget, that.effectivePerformanceTarget) + && Objects.equals(effectiveUsagePolicyId, that.effectiveUsagePolicyId) && Objects.equals(endTime, that.endTime) && Objects.equals(executionDuration, that.executionDuration) && Objects.equals(gitSource, that.gitSource) @@ -564,6 +578,7 @@ public int hashCode() { creatorUserName, description, effectivePerformanceTarget, + effectiveUsagePolicyId, endTime, executionDuration, gitSource, @@ -602,6 +617,7 @@ public String toString() { .add("creatorUserName", creatorUserName) .add("description", description) .add("effectivePerformanceTarget", effectivePerformanceTarget) + .add("effectiveUsagePolicyId", effectiveUsagePolicyId) .add("endTime", endTime) .add("executionDuration", executionDuration) .add("gitSource", gitSource) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/CreateJob.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/CreateJob.java index 2ecd577cc..c38a239bd 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/CreateJob.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/CreateJob.java @@ -189,8 +189,8 @@ public class CreateJob { /** * The id of the user specified usage policy to use for this job. If not specified, a default - * usage policy may be applied when creating or modifying the job. See - * `effective_budget_policy_id` for the budget policy used by this workload. + * usage policy may be applied when creating or modifying the job. See `effective_usage_policy_id` + * for the usage policy used by this workload. */ @JsonProperty("usage_policy_id") private String usagePolicyId; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Job.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Job.java index 94e5f7d60..3b2a3d50b 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Job.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Job.java @@ -32,6 +32,10 @@ public class Job { @JsonProperty("effective_budget_policy_id") private String effectiveBudgetPolicyId; + /** The id of the usage policy used by this job for cost attribution purposes. */ + @JsonProperty("effective_usage_policy_id") + private String effectiveUsagePolicyId; + /** * Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. * They can be accessed via :method:jobs/get endpoint. It is only relevant for API 2.2 @@ -98,6 +102,15 @@ public String getEffectiveBudgetPolicyId() { return effectiveBudgetPolicyId; } + public Job setEffectiveUsagePolicyId(String effectiveUsagePolicyId) { + this.effectiveUsagePolicyId = effectiveUsagePolicyId; + return this; + } + + public String getEffectiveUsagePolicyId() { + return effectiveUsagePolicyId; + } + public Job setHasMore(Boolean hasMore) { this.hasMore = hasMore; return this; @@ -160,6 +173,7 @@ public boolean equals(Object o) { return Objects.equals(createdTime, that.createdTime) && Objects.equals(creatorUserName, that.creatorUserName) && Objects.equals(effectiveBudgetPolicyId, that.effectiveBudgetPolicyId) + && Objects.equals(effectiveUsagePolicyId, that.effectiveUsagePolicyId) && Objects.equals(hasMore, that.hasMore) && Objects.equals(jobId, that.jobId) && Objects.equals(nextPageToken, that.nextPageToken) @@ -174,6 +188,7 @@ public int hashCode() { createdTime, creatorUserName, effectiveBudgetPolicyId, + effectiveUsagePolicyId, hasMore, jobId, nextPageToken, @@ -188,6 +203,7 @@ public String toString() { .add("createdTime", createdTime) .add("creatorUserName", creatorUserName) .add("effectiveBudgetPolicyId", effectiveBudgetPolicyId) + .add("effectiveUsagePolicyId", effectiveUsagePolicyId) .add("hasMore", hasMore) .add("jobId", jobId) .add("nextPageToken", nextPageToken) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/JobSettings.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/JobSettings.java index 6c3b6dca5..d0d2ad7ee 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/JobSettings.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/JobSettings.java @@ -185,8 +185,8 @@ public class JobSettings { /** * The id of the user specified usage policy to use for this job. If not specified, a default - * usage policy may be applied when creating or modifying the job. See - * `effective_budget_policy_id` for the budget policy used by this workload. + * usage policy may be applied when creating or modifying the job. See `effective_usage_policy_id` + * for the usage policy used by this workload. */ @JsonProperty("usage_policy_id") private String usagePolicyId; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Run.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Run.java index 70bb1e68c..f46de2d24 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Run.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/Run.java @@ -64,6 +64,10 @@ public class Run { @JsonProperty("effective_performance_target") private PerformanceTarget effectivePerformanceTarget; + /** The id of the usage policy used by this run for cost attribution purposes. */ + @JsonProperty("effective_usage_policy_id") + private String effectiveUsagePolicyId; + /** * The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This * field is set to 0 if the job is still running. @@ -289,6 +293,15 @@ public PerformanceTarget getEffectivePerformanceTarget() { return effectivePerformanceTarget; } + public Run setEffectiveUsagePolicyId(String effectiveUsagePolicyId) { + this.effectiveUsagePolicyId = effectiveUsagePolicyId; + return this; + } + + public String getEffectiveUsagePolicyId() { + return effectiveUsagePolicyId; + } + public Run setEndTime(Long endTime) { this.endTime = endTime; return this; @@ -553,6 +566,7 @@ public boolean equals(Object o) { && Objects.equals(creatorUserName, that.creatorUserName) && Objects.equals(description, that.description) && Objects.equals(effectivePerformanceTarget, that.effectivePerformanceTarget) + && Objects.equals(effectiveUsagePolicyId, that.effectiveUsagePolicyId) && Objects.equals(endTime, that.endTime) && Objects.equals(executionDuration, that.executionDuration) && Objects.equals(gitSource, that.gitSource) @@ -593,6 +607,7 @@ public int hashCode() { creatorUserName, description, effectivePerformanceTarget, + effectiveUsagePolicyId, endTime, executionDuration, gitSource, @@ -633,6 +648,7 @@ public String toString() { .add("creatorUserName", creatorUserName) .add("description", description) .add("effectivePerformanceTarget", effectivePerformanceTarget) + .add("effectiveUsagePolicyId", effectiveUsagePolicyId) .add("endTime", endTime) .add("executionDuration", executionDuration) .add("gitSource", gitSource) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/AiGatewayRateLimit.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/AiGatewayRateLimit.java index c39679117..81ca442ba 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/AiGatewayRateLimit.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/AiGatewayRateLimit.java @@ -31,6 +31,10 @@ public class AiGatewayRateLimit { @JsonProperty("renewal_period") private AiGatewayRateLimitRenewalPeriod renewalPeriod; + /** Used to specify how many tokens are allowed for a key within the renewal_period. */ + @JsonProperty("tokens") + private Long tokens; + public AiGatewayRateLimit setCalls(Long calls) { this.calls = calls; return this; @@ -67,6 +71,15 @@ public AiGatewayRateLimitRenewalPeriod getRenewalPeriod() { return renewalPeriod; } + public AiGatewayRateLimit setTokens(Long tokens) { + this.tokens = tokens; + return this; + } + + public Long getTokens() { + return tokens; + } + @Override public boolean equals(Object o) { if (this == o) return true; @@ -75,12 +88,13 @@ public boolean equals(Object o) { return Objects.equals(calls, that.calls) && Objects.equals(key, that.key) && Objects.equals(principal, that.principal) - && Objects.equals(renewalPeriod, that.renewalPeriod); + && Objects.equals(renewalPeriod, that.renewalPeriod) + && Objects.equals(tokens, that.tokens); } @Override public int hashCode() { - return Objects.hash(calls, key, principal, renewalPeriod); + return Objects.hash(calls, key, principal, renewalPeriod, tokens); } @Override @@ -90,6 +104,7 @@ public String toString() { .add("key", key) .add("principal", principal) .add("renewalPeriod", renewalPeriod) + .add("tokens", tokens) .toString(); } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/ServingEndpoint.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/ServingEndpoint.java index e6f955427..81434ae44 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/ServingEndpoint.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/serving/ServingEndpoint.java @@ -62,6 +62,10 @@ public class ServingEndpoint { @JsonProperty("task") private String task; + /** The usage policy associated with serving endpoint. */ + @JsonProperty("usage_policy_id") + private String usagePolicyId; + public ServingEndpoint setAiGateway(AiGatewayConfig aiGateway) { this.aiGateway = aiGateway; return this; @@ -170,6 +174,15 @@ public String getTask() { return task; } + public ServingEndpoint setUsagePolicyId(String usagePolicyId) { + this.usagePolicyId = usagePolicyId; + return this; + } + + public String getUsagePolicyId() { + return usagePolicyId; + } + @Override public boolean equals(Object o) { if (this == o) return true; @@ -186,7 +199,8 @@ public boolean equals(Object o) { && Objects.equals(name, that.name) && Objects.equals(state, that.state) && Objects.equals(tags, that.tags) - && Objects.equals(task, that.task); + && Objects.equals(task, that.task) + && Objects.equals(usagePolicyId, that.usagePolicyId); } @Override @@ -203,7 +217,8 @@ public int hashCode() { name, state, tags, - task); + task, + usagePolicyId); } @Override @@ -221,6 +236,7 @@ public String toString() { .add("state", state) .add("tags", tags) .add("task", task) + .add("usagePolicyId", usagePolicyId) .toString(); } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2API.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2API.java new file mode 100755 index 000000000..6f8e1345c --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2API.java @@ -0,0 +1,64 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** APIs to manage account level settings */ +@Generated +public class AccountSettingsV2API { + private static final Logger LOG = LoggerFactory.getLogger(AccountSettingsV2API.class); + + private final AccountSettingsV2Service impl; + + /** Regular-use constructor */ + public AccountSettingsV2API(ApiClient apiClient) { + impl = new AccountSettingsV2Impl(apiClient); + } + + /** Constructor for mocks */ + public AccountSettingsV2API(AccountSettingsV2Service mock) { + impl = mock; + } + + public Setting getPublicAccountSetting(String name) { + return getPublicAccountSetting(new GetPublicAccountSettingRequest().setName(name)); + } + + /** Get a setting value at account level */ + public Setting getPublicAccountSetting(GetPublicAccountSettingRequest request) { + return impl.getPublicAccountSetting(request); + } + + /** + * List valid setting keys and metadata. These settings are available to referenced via [GET + * /api/2.1/settings/{name}](#~1api~1account~1settingsv2~1getpublicaccountsetting) and [PATCH + * /api/2.1/settings/{name}](#~1api~1account~1settingsv2~patchpublicaccountsetting) APIs + */ + public Iterable listAccountSettingsMetadata( + ListAccountSettingsMetadataRequest request) { + return new Paginator<>( + request, + impl::listAccountSettingsMetadata, + ListAccountSettingsMetadataResponse::getSettingsMetadata, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + + /** Patch a setting value at account level */ + public Setting patchPublicAccountSetting(PatchPublicAccountSettingRequest request) { + return impl.patchPublicAccountSetting(request); + } + + public AccountSettingsV2Service impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Impl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Impl.java new file mode 100755 index 000000000..eafce18d9 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Impl.java @@ -0,0 +1,64 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of AccountSettingsV2 */ +@Generated +class AccountSettingsV2Impl implements AccountSettingsV2Service { + private final ApiClient apiClient; + + public AccountSettingsV2Impl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public Setting getPublicAccountSetting(GetPublicAccountSettingRequest request) { + String path = + String.format( + "/api/2.1/accounts/%s/settings/%s", apiClient.configuredAccountID(), request.getName()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, Setting.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public ListAccountSettingsMetadataResponse listAccountSettingsMetadata( + ListAccountSettingsMetadataRequest request) { + String path = + String.format("/api/2.1/accounts/%s/settings-metadata", apiClient.configuredAccountID()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, ListAccountSettingsMetadataResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public Setting patchPublicAccountSetting(PatchPublicAccountSettingRequest request) { + String path = + String.format( + "/api/2.1/accounts/%s/settings/%s", apiClient.configuredAccountID(), request.getName()); + try { + Request req = new Request("PATCH", path, apiClient.serialize(request.getSetting())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, Setting.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Service.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Service.java new file mode 100755 index 000000000..9517677b1 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AccountSettingsV2Service.java @@ -0,0 +1,29 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +/** + * APIs to manage account level settings + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface AccountSettingsV2Service { + /** Get a setting value at account level */ + Setting getPublicAccountSetting(GetPublicAccountSettingRequest getPublicAccountSettingRequest); + + /** + * List valid setting keys and metadata. These settings are available to referenced via [GET + * /api/2.1/settings/{name}](#~1api~1account~1settingsv2~1getpublicaccountsetting) and [PATCH + * /api/2.1/settings/{name}](#~1api~1account~1settingsv2~patchpublicaccountsetting) APIs + */ + ListAccountSettingsMetadataResponse listAccountSettingsMetadata( + ListAccountSettingsMetadataRequest listAccountSettingsMetadataRequest); + + /** Patch a setting value at account level */ + Setting patchPublicAccountSetting( + PatchPublicAccountSettingRequest patchPublicAccountSettingRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicy.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicy.java new file mode 100755 index 000000000..130433c6c --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicy.java @@ -0,0 +1,45 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AibiDashboardEmbeddingAccessPolicy { + /** */ + @JsonProperty("access_policy_type") + private AibiDashboardEmbeddingAccessPolicyAccessPolicyType accessPolicyType; + + public AibiDashboardEmbeddingAccessPolicy setAccessPolicyType( + AibiDashboardEmbeddingAccessPolicyAccessPolicyType accessPolicyType) { + this.accessPolicyType = accessPolicyType; + return this; + } + + public AibiDashboardEmbeddingAccessPolicyAccessPolicyType getAccessPolicyType() { + return accessPolicyType; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AibiDashboardEmbeddingAccessPolicy that = (AibiDashboardEmbeddingAccessPolicy) o; + return Objects.equals(accessPolicyType, that.accessPolicyType); + } + + @Override + public int hashCode() { + return Objects.hash(accessPolicyType); + } + + @Override + public String toString() { + return new ToStringer(AibiDashboardEmbeddingAccessPolicy.class) + .add("accessPolicyType", accessPolicyType) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicyAccessPolicyType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicyAccessPolicyType.java new file mode 100755 index 000000000..e565cb825 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingAccessPolicyAccessPolicyType.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum AibiDashboardEmbeddingAccessPolicyAccessPolicyType { + ALLOW_ALL_DOMAINS, + ALLOW_APPROVED_DOMAINS, + DENY_ALL_DOMAINS, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingApprovedDomains.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingApprovedDomains.java new file mode 100755 index 000000000..1124e20e2 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/AibiDashboardEmbeddingApprovedDomains.java @@ -0,0 +1,46 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class AibiDashboardEmbeddingApprovedDomains { + /** */ + @JsonProperty("approved_domains") + private Collection approvedDomains; + + public AibiDashboardEmbeddingApprovedDomains setApprovedDomains( + Collection approvedDomains) { + this.approvedDomains = approvedDomains; + return this; + } + + public Collection getApprovedDomains() { + return approvedDomains; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AibiDashboardEmbeddingApprovedDomains that = (AibiDashboardEmbeddingApprovedDomains) o; + return Objects.equals(approvedDomains, that.approvedDomains); + } + + @Override + public int hashCode() { + return Objects.hash(approvedDomains); + } + + @Override + public String toString() { + return new ToStringer(AibiDashboardEmbeddingApprovedDomains.class) + .add("approvedDomains", approvedDomains) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/BooleanMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/BooleanMessage.java new file mode 100755 index 000000000..7e387bc54 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/BooleanMessage.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class BooleanMessage { + /** */ + @JsonProperty("value") + private Boolean value; + + public BooleanMessage setValue(Boolean value) { + this.value = value; + return this; + } + + public Boolean getValue() { + return value; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + BooleanMessage that = (BooleanMessage) o; + return Objects.equals(value, that.value); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public String toString() { + return new ToStringer(BooleanMessage.class).add("value", value).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessage.java new file mode 100755 index 000000000..c3be977f1 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessage.java @@ -0,0 +1,108 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class ClusterAutoRestartMessage { + /** */ + @JsonProperty("can_toggle") + private Boolean canToggle; + + /** */ + @JsonProperty("enabled") + private Boolean enabled; + + /** */ + @JsonProperty("enablement_details") + private ClusterAutoRestartMessageEnablementDetails enablementDetails; + + /** */ + @JsonProperty("maintenance_window") + private ClusterAutoRestartMessageMaintenanceWindow maintenanceWindow; + + /** */ + @JsonProperty("restart_even_if_no_updates_available") + private Boolean restartEvenIfNoUpdatesAvailable; + + public ClusterAutoRestartMessage setCanToggle(Boolean canToggle) { + this.canToggle = canToggle; + return this; + } + + public Boolean getCanToggle() { + return canToggle; + } + + public ClusterAutoRestartMessage setEnabled(Boolean enabled) { + this.enabled = enabled; + return this; + } + + public Boolean getEnabled() { + return enabled; + } + + public ClusterAutoRestartMessage setEnablementDetails( + ClusterAutoRestartMessageEnablementDetails enablementDetails) { + this.enablementDetails = enablementDetails; + return this; + } + + public ClusterAutoRestartMessageEnablementDetails getEnablementDetails() { + return enablementDetails; + } + + public ClusterAutoRestartMessage setMaintenanceWindow( + ClusterAutoRestartMessageMaintenanceWindow maintenanceWindow) { + this.maintenanceWindow = maintenanceWindow; + return this; + } + + public ClusterAutoRestartMessageMaintenanceWindow getMaintenanceWindow() { + return maintenanceWindow; + } + + public ClusterAutoRestartMessage setRestartEvenIfNoUpdatesAvailable( + Boolean restartEvenIfNoUpdatesAvailable) { + this.restartEvenIfNoUpdatesAvailable = restartEvenIfNoUpdatesAvailable; + return this; + } + + public Boolean getRestartEvenIfNoUpdatesAvailable() { + return restartEvenIfNoUpdatesAvailable; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ClusterAutoRestartMessage that = (ClusterAutoRestartMessage) o; + return Objects.equals(canToggle, that.canToggle) + && Objects.equals(enabled, that.enabled) + && Objects.equals(enablementDetails, that.enablementDetails) + && Objects.equals(maintenanceWindow, that.maintenanceWindow) + && Objects.equals(restartEvenIfNoUpdatesAvailable, that.restartEvenIfNoUpdatesAvailable); + } + + @Override + public int hashCode() { + return Objects.hash( + canToggle, enabled, enablementDetails, maintenanceWindow, restartEvenIfNoUpdatesAvailable); + } + + @Override + public String toString() { + return new ToStringer(ClusterAutoRestartMessage.class) + .add("canToggle", canToggle) + .add("enabled", enabled) + .add("enablementDetails", enablementDetails) + .add("maintenanceWindow", maintenanceWindow) + .add("restartEvenIfNoUpdatesAvailable", restartEvenIfNoUpdatesAvailable) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageEnablementDetails.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageEnablementDetails.java new file mode 100755 index 000000000..8ad4dbbd4 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageEnablementDetails.java @@ -0,0 +1,91 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * Contains an information about the enablement status judging (e.g. whether the enterprise tier is + * enabled) This is only additional information that MUST NOT be used to decide whether the setting + * is enabled or not. This is intended to use only for purposes like showing an error message to the + * customer with the additional details. For example, using these details we can check why exactly + * the feature is disabled for this customer. + */ +@Generated +public class ClusterAutoRestartMessageEnablementDetails { + /** The feature is force enabled if compliance mode is active */ + @JsonProperty("forced_for_compliance_mode") + private Boolean forcedForComplianceMode; + + /** + * The feature is unavailable if the corresponding entitlement disabled (see + * getShieldEntitlementEnable) + */ + @JsonProperty("unavailable_for_disabled_entitlement") + private Boolean unavailableForDisabledEntitlement; + + /** The feature is unavailable if the customer doesn't have enterprise tier */ + @JsonProperty("unavailable_for_non_enterprise_tier") + private Boolean unavailableForNonEnterpriseTier; + + public ClusterAutoRestartMessageEnablementDetails setForcedForComplianceMode( + Boolean forcedForComplianceMode) { + this.forcedForComplianceMode = forcedForComplianceMode; + return this; + } + + public Boolean getForcedForComplianceMode() { + return forcedForComplianceMode; + } + + public ClusterAutoRestartMessageEnablementDetails setUnavailableForDisabledEntitlement( + Boolean unavailableForDisabledEntitlement) { + this.unavailableForDisabledEntitlement = unavailableForDisabledEntitlement; + return this; + } + + public Boolean getUnavailableForDisabledEntitlement() { + return unavailableForDisabledEntitlement; + } + + public ClusterAutoRestartMessageEnablementDetails setUnavailableForNonEnterpriseTier( + Boolean unavailableForNonEnterpriseTier) { + this.unavailableForNonEnterpriseTier = unavailableForNonEnterpriseTier; + return this; + } + + public Boolean getUnavailableForNonEnterpriseTier() { + return unavailableForNonEnterpriseTier; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ClusterAutoRestartMessageEnablementDetails that = + (ClusterAutoRestartMessageEnablementDetails) o; + return Objects.equals(forcedForComplianceMode, that.forcedForComplianceMode) + && Objects.equals(unavailableForDisabledEntitlement, that.unavailableForDisabledEntitlement) + && Objects.equals(unavailableForNonEnterpriseTier, that.unavailableForNonEnterpriseTier); + } + + @Override + public int hashCode() { + return Objects.hash( + forcedForComplianceMode, + unavailableForDisabledEntitlement, + unavailableForNonEnterpriseTier); + } + + @Override + public String toString() { + return new ToStringer(ClusterAutoRestartMessageEnablementDetails.class) + .add("forcedForComplianceMode", forcedForComplianceMode) + .add("unavailableForDisabledEntitlement", unavailableForDisabledEntitlement) + .add("unavailableForNonEnterpriseTier", unavailableForNonEnterpriseTier) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindow.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindow.java new file mode 100755 index 000000000..2f21126b1 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindow.java @@ -0,0 +1,46 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class ClusterAutoRestartMessageMaintenanceWindow { + /** */ + @JsonProperty("week_day_based_schedule") + private ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule weekDayBasedSchedule; + + public ClusterAutoRestartMessageMaintenanceWindow setWeekDayBasedSchedule( + ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule weekDayBasedSchedule) { + this.weekDayBasedSchedule = weekDayBasedSchedule; + return this; + } + + public ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule getWeekDayBasedSchedule() { + return weekDayBasedSchedule; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ClusterAutoRestartMessageMaintenanceWindow that = + (ClusterAutoRestartMessageMaintenanceWindow) o; + return Objects.equals(weekDayBasedSchedule, that.weekDayBasedSchedule); + } + + @Override + public int hashCode() { + return Objects.hash(weekDayBasedSchedule); + } + + @Override + public String toString() { + return new ToStringer(ClusterAutoRestartMessageMaintenanceWindow.class) + .add("weekDayBasedSchedule", weekDayBasedSchedule) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowDayOfWeek.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowDayOfWeek.java new file mode 100755 index 000000000..089d778ff --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowDayOfWeek.java @@ -0,0 +1,16 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum ClusterAutoRestartMessageMaintenanceWindowDayOfWeek { + FRIDAY, + MONDAY, + SATURDAY, + SUNDAY, + THURSDAY, + TUESDAY, + WEDNESDAY, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule.java new file mode 100755 index 000000000..852f03f1d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule.java @@ -0,0 +1,78 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule { + /** */ + @JsonProperty("day_of_week") + private ClusterAutoRestartMessageMaintenanceWindowDayOfWeek dayOfWeek; + + /** */ + @JsonProperty("frequency") + private ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency frequency; + + /** */ + @JsonProperty("window_start_time") + private ClusterAutoRestartMessageMaintenanceWindowWindowStartTime windowStartTime; + + public ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule setDayOfWeek( + ClusterAutoRestartMessageMaintenanceWindowDayOfWeek dayOfWeek) { + this.dayOfWeek = dayOfWeek; + return this; + } + + public ClusterAutoRestartMessageMaintenanceWindowDayOfWeek getDayOfWeek() { + return dayOfWeek; + } + + public ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule setFrequency( + ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency frequency) { + this.frequency = frequency; + return this; + } + + public ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency getFrequency() { + return frequency; + } + + public ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule setWindowStartTime( + ClusterAutoRestartMessageMaintenanceWindowWindowStartTime windowStartTime) { + this.windowStartTime = windowStartTime; + return this; + } + + public ClusterAutoRestartMessageMaintenanceWindowWindowStartTime getWindowStartTime() { + return windowStartTime; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule that = + (ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule) o; + return Objects.equals(dayOfWeek, that.dayOfWeek) + && Objects.equals(frequency, that.frequency) + && Objects.equals(windowStartTime, that.windowStartTime); + } + + @Override + public int hashCode() { + return Objects.hash(dayOfWeek, frequency, windowStartTime); + } + + @Override + public String toString() { + return new ToStringer(ClusterAutoRestartMessageMaintenanceWindowWeekDayBasedSchedule.class) + .add("dayOfWeek", dayOfWeek) + .add("frequency", frequency) + .add("windowStartTime", windowStartTime) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency.java new file mode 100755 index 000000000..f457decf0 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency.java @@ -0,0 +1,16 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum ClusterAutoRestartMessageMaintenanceWindowWeekDayFrequency { + EVERY_WEEK, + FIRST_AND_THIRD_OF_MONTH, + FIRST_OF_MONTH, + FOURTH_OF_MONTH, + SECOND_AND_FOURTH_OF_MONTH, + SECOND_OF_MONTH, + THIRD_OF_MONTH, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWindowStartTime.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWindowStartTime.java new file mode 100755 index 000000000..c74aca76d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ClusterAutoRestartMessageMaintenanceWindowWindowStartTime.java @@ -0,0 +1,59 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class ClusterAutoRestartMessageMaintenanceWindowWindowStartTime { + /** */ + @JsonProperty("hours") + private Long hours; + + /** */ + @JsonProperty("minutes") + private Long minutes; + + public ClusterAutoRestartMessageMaintenanceWindowWindowStartTime setHours(Long hours) { + this.hours = hours; + return this; + } + + public Long getHours() { + return hours; + } + + public ClusterAutoRestartMessageMaintenanceWindowWindowStartTime setMinutes(Long minutes) { + this.minutes = minutes; + return this; + } + + public Long getMinutes() { + return minutes; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ClusterAutoRestartMessageMaintenanceWindowWindowStartTime that = + (ClusterAutoRestartMessageMaintenanceWindowWindowStartTime) o; + return Objects.equals(hours, that.hours) && Objects.equals(minutes, that.minutes); + } + + @Override + public int hashCode() { + return Objects.hash(hours, minutes); + } + + @Override + public String toString() { + return new ToStringer(ClusterAutoRestartMessageMaintenanceWindowWindowStartTime.class) + .add("hours", hours) + .add("minutes", minutes) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessage.java new file mode 100755 index 000000000..f171630c8 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessage.java @@ -0,0 +1,50 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * Changes the behaviour of Jobs service when creating job clusters. + * + *

Before this setting is introduced, all workspaces with metastore attached had behaviour + * matching SINGLE_USER setting. + * + *

See: - go/defaultdatasecuritymode - go/defaultdatasecuritymode/setting - go/datasecuritymode + */ +@Generated +public class DefaultDataSecurityModeMessage { + /** */ + @JsonProperty("status") + private DefaultDataSecurityModeMessageStatus status; + + public DefaultDataSecurityModeMessage setStatus(DefaultDataSecurityModeMessageStatus status) { + this.status = status; + return this; + } + + public DefaultDataSecurityModeMessageStatus getStatus() { + return status; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + DefaultDataSecurityModeMessage that = (DefaultDataSecurityModeMessage) o; + return Objects.equals(status, that.status); + } + + @Override + public int hashCode() { + return Objects.hash(status); + } + + @Override + public String toString() { + return new ToStringer(DefaultDataSecurityModeMessage.class).add("status", status).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessageStatus.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessageStatus.java new file mode 100755 index 000000000..3a4e89924 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DefaultDataSecurityModeMessageStatus.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum DefaultDataSecurityModeMessageStatus { + NOT_SET, + SINGLE_USER, + USER_ISOLATION, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicAccountSettingRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicAccountSettingRequest.java new file mode 100755 index 000000000..aeb8ae373 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicAccountSettingRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetPublicAccountSettingRequest { + /** */ + @JsonIgnore private String name; + + public GetPublicAccountSettingRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetPublicAccountSettingRequest that = (GetPublicAccountSettingRequest) o; + return Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(name); + } + + @Override + public String toString() { + return new ToStringer(GetPublicAccountSettingRequest.class).add("name", name).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicWorkspaceSettingRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicWorkspaceSettingRequest.java new file mode 100755 index 000000000..928c553e6 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/GetPublicWorkspaceSettingRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetPublicWorkspaceSettingRequest { + /** */ + @JsonIgnore private String name; + + public GetPublicWorkspaceSettingRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetPublicWorkspaceSettingRequest that = (GetPublicWorkspaceSettingRequest) o; + return Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(name); + } + + @Override + public String toString() { + return new ToStringer(GetPublicWorkspaceSettingRequest.class).add("name", name).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/IntegerMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/IntegerMessage.java new file mode 100755 index 000000000..007047d0e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/IntegerMessage.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class IntegerMessage { + /** */ + @JsonProperty("value") + private Long value; + + public IntegerMessage setValue(Long value) { + this.value = value; + return this; + } + + public Long getValue() { + return value; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + IntegerMessage that = (IntegerMessage) o; + return Objects.equals(value, that.value); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public String toString() { + return new ToStringer(IntegerMessage.class).add("value", value).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataRequest.java new file mode 100755 index 000000000..35c3db356 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataRequest.java @@ -0,0 +1,71 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListAccountSettingsMetadataRequest { + /** + * The maximum number of settings to return. The service may return fewer than this value. If + * unspecified, at most 200 settings will be returned. The maximum value is 1000; values above + * 1000 will be coerced to 1000. + */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** + * A page token, received from a previous `ListAccountSettingsMetadataRequest` call. Provide this + * to retrieve the subsequent page. + * + *

When paginating, all other parameters provided to `ListAccountSettingsMetadataRequest` must + * match the call that provided the page token. + */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + public ListAccountSettingsMetadataRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public ListAccountSettingsMetadataRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListAccountSettingsMetadataRequest that = (ListAccountSettingsMetadataRequest) o; + return Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken); + } + + @Override + public int hashCode() { + return Objects.hash(pageSize, pageToken); + } + + @Override + public String toString() { + return new ToStringer(ListAccountSettingsMetadataRequest.class) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataResponse.java new file mode 100755 index 000000000..8694206cc --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListAccountSettingsMetadataResponse.java @@ -0,0 +1,64 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListAccountSettingsMetadataResponse { + /** + * A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, + * there are no subsequent pages. + */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** List of all settings available via public APIs and their metadata */ + @JsonProperty("settings_metadata") + private Collection settingsMetadata; + + public ListAccountSettingsMetadataResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListAccountSettingsMetadataResponse setSettingsMetadata( + Collection settingsMetadata) { + this.settingsMetadata = settingsMetadata; + return this; + } + + public Collection getSettingsMetadata() { + return settingsMetadata; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListAccountSettingsMetadataResponse that = (ListAccountSettingsMetadataResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) + && Objects.equals(settingsMetadata, that.settingsMetadata); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, settingsMetadata); + } + + @Override + public String toString() { + return new ToStringer(ListAccountSettingsMetadataResponse.class) + .add("nextPageToken", nextPageToken) + .add("settingsMetadata", settingsMetadata) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataRequest.java new file mode 100755 index 000000000..c397e93fd --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataRequest.java @@ -0,0 +1,71 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListWorkspaceSettingsMetadataRequest { + /** + * The maximum number of settings to return. The service may return fewer than this value. If + * unspecified, at most 200 settings will be returned. The maximum value is 1000; values above + * 1000 will be coerced to 1000. + */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** + * A page token, received from a previous `ListWorkspaceSettingsMetadataRequest` call. Provide + * this to retrieve the subsequent page. + * + *

When paginating, all other parameters provided to `ListWorkspaceSettingsMetadataRequest` + * must match the call that provided the page token. + */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + public ListWorkspaceSettingsMetadataRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public ListWorkspaceSettingsMetadataRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListWorkspaceSettingsMetadataRequest that = (ListWorkspaceSettingsMetadataRequest) o; + return Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken); + } + + @Override + public int hashCode() { + return Objects.hash(pageSize, pageToken); + } + + @Override + public String toString() { + return new ToStringer(ListWorkspaceSettingsMetadataRequest.class) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataResponse.java new file mode 100755 index 000000000..4fe7fc1d5 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/ListWorkspaceSettingsMetadataResponse.java @@ -0,0 +1,64 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListWorkspaceSettingsMetadataResponse { + /** + * A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, + * there are no subsequent pages. + */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** List of all settings available via public APIs and their metadata */ + @JsonProperty("settings_metadata") + private Collection settingsMetadata; + + public ListWorkspaceSettingsMetadataResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListWorkspaceSettingsMetadataResponse setSettingsMetadata( + Collection settingsMetadata) { + this.settingsMetadata = settingsMetadata; + return this; + } + + public Collection getSettingsMetadata() { + return settingsMetadata; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListWorkspaceSettingsMetadataResponse that = (ListWorkspaceSettingsMetadataResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) + && Objects.equals(settingsMetadata, that.settingsMetadata); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, settingsMetadata); + } + + @Override + public String toString() { + return new ToStringer(ListWorkspaceSettingsMetadataResponse.class) + .add("nextPageToken", nextPageToken) + .add("settingsMetadata", settingsMetadata) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicAccountSettingRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicAccountSettingRequest.java new file mode 100755 index 000000000..3a0a7aa63 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicAccountSettingRequest.java @@ -0,0 +1,58 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class PatchPublicAccountSettingRequest { + /** */ + @JsonIgnore private String name; + + /** */ + @JsonProperty("setting") + private Setting setting; + + public PatchPublicAccountSettingRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public PatchPublicAccountSettingRequest setSetting(Setting setting) { + this.setting = setting; + return this; + } + + public Setting getSetting() { + return setting; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PatchPublicAccountSettingRequest that = (PatchPublicAccountSettingRequest) o; + return Objects.equals(name, that.name) && Objects.equals(setting, that.setting); + } + + @Override + public int hashCode() { + return Objects.hash(name, setting); + } + + @Override + public String toString() { + return new ToStringer(PatchPublicAccountSettingRequest.class) + .add("name", name) + .add("setting", setting) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicWorkspaceSettingRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicWorkspaceSettingRequest.java new file mode 100755 index 000000000..595a9704b --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PatchPublicWorkspaceSettingRequest.java @@ -0,0 +1,58 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class PatchPublicWorkspaceSettingRequest { + /** */ + @JsonIgnore private String name; + + /** */ + @JsonProperty("setting") + private Setting setting; + + public PatchPublicWorkspaceSettingRequest setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public PatchPublicWorkspaceSettingRequest setSetting(Setting setting) { + this.setting = setting; + return this; + } + + public Setting getSetting() { + return setting; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PatchPublicWorkspaceSettingRequest that = (PatchPublicWorkspaceSettingRequest) o; + return Objects.equals(name, that.name) && Objects.equals(setting, that.setting); + } + + @Override + public int hashCode() { + return Objects.hash(name, setting); + } + + @Override + public String toString() { + return new ToStringer(PatchPublicWorkspaceSettingRequest.class) + .add("name", name) + .add("setting", setting) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessage.java new file mode 100755 index 000000000..1b0248ac5 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessage.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class PersonalComputeMessage { + /** */ + @JsonProperty("value") + private PersonalComputeMessagePersonalComputeMessageEnum value; + + public PersonalComputeMessage setValue(PersonalComputeMessagePersonalComputeMessageEnum value) { + this.value = value; + return this; + } + + public PersonalComputeMessagePersonalComputeMessageEnum getValue() { + return value; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + PersonalComputeMessage that = (PersonalComputeMessage) o; + return Objects.equals(value, that.value); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public String toString() { + return new ToStringer(PersonalComputeMessage.class).add("value", value).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessagePersonalComputeMessageEnum.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessagePersonalComputeMessageEnum.java new file mode 100755 index 000000000..631555582 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/PersonalComputeMessagePersonalComputeMessageEnum.java @@ -0,0 +1,18 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +/** + * ON: Grants all users in all workspaces access to the Personal Compute default policy, allowing + * all users to create single-machine compute resources. DELEGATE: Moves access control for the + * Personal Compute default policy to individual workspaces and requires a workspace’s users or + * groups to be added to the ACLs of that workspace’s Personal Compute default policy before they + * will be able to create compute resources through that policy. + */ +@Generated +public enum PersonalComputeMessagePersonalComputeMessageEnum { + DELEGATE, + ON, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessage.java new file mode 100755 index 000000000..f60339f68 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessage.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class RestrictWorkspaceAdminsMessage { + /** */ + @JsonProperty("status") + private RestrictWorkspaceAdminsMessageStatus status; + + public RestrictWorkspaceAdminsMessage setStatus(RestrictWorkspaceAdminsMessageStatus status) { + this.status = status; + return this; + } + + public RestrictWorkspaceAdminsMessageStatus getStatus() { + return status; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + RestrictWorkspaceAdminsMessage that = (RestrictWorkspaceAdminsMessage) o; + return Objects.equals(status, that.status); + } + + @Override + public int hashCode() { + return Objects.hash(status); + } + + @Override + public String toString() { + return new ToStringer(RestrictWorkspaceAdminsMessage.class).add("status", status).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessageStatus.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessageStatus.java new file mode 100755 index 000000000..d690b3513 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/RestrictWorkspaceAdminsMessageStatus.java @@ -0,0 +1,11 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +@Generated +public enum RestrictWorkspaceAdminsMessageStatus { + ALLOW_ALL, + RESTRICT_TOKENS_AND_JOB_RUN_AS, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java new file mode 100755 index 000000000..81f50aaf4 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java @@ -0,0 +1,355 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class Setting { + /** */ + @JsonProperty("aibi_dashboard_embedding_access_policy") + private AibiDashboardEmbeddingAccessPolicy aibiDashboardEmbeddingAccessPolicy; + + /** */ + @JsonProperty("aibi_dashboard_embedding_approved_domains") + private AibiDashboardEmbeddingApprovedDomains aibiDashboardEmbeddingApprovedDomains; + + /** todo: Mark these Public after onboarded to DSL */ + @JsonProperty("automatic_cluster_update_workspace") + private ClusterAutoRestartMessage automaticClusterUpdateWorkspace; + + /** */ + @JsonProperty("boolean_val") + private BooleanMessage booleanVal; + + /** */ + @JsonProperty("default_data_security_mode") + private DefaultDataSecurityModeMessage defaultDataSecurityMode; + + /** */ + @JsonProperty("effective_aibi_dashboard_embedding_access_policy") + private AibiDashboardEmbeddingAccessPolicy effectiveAibiDashboardEmbeddingAccessPolicy; + + /** */ + @JsonProperty("effective_aibi_dashboard_embedding_approved_domains") + private AibiDashboardEmbeddingApprovedDomains effectiveAibiDashboardEmbeddingApprovedDomains; + + /** */ + @JsonProperty("effective_automatic_cluster_update_workspace") + private ClusterAutoRestartMessage effectiveAutomaticClusterUpdateWorkspace; + + /** */ + @JsonProperty("effective_boolean_val") + private BooleanMessage effectiveBooleanVal; + + /** */ + @JsonProperty("effective_default_data_security_mode") + private DefaultDataSecurityModeMessage effectiveDefaultDataSecurityMode; + + /** */ + @JsonProperty("effective_integer_val") + private IntegerMessage effectiveIntegerVal; + + /** */ + @JsonProperty("effective_personal_compute") + private PersonalComputeMessage effectivePersonalCompute; + + /** */ + @JsonProperty("effective_restrict_workspace_admins") + private RestrictWorkspaceAdminsMessage effectiveRestrictWorkspaceAdmins; + + /** */ + @JsonProperty("effective_string_val") + private StringMessage effectiveStringVal; + + /** */ + @JsonProperty("integer_val") + private IntegerMessage integerVal; + + /** Name of the setting. */ + @JsonProperty("name") + private String name; + + /** */ + @JsonProperty("personal_compute") + private PersonalComputeMessage personalCompute; + + /** */ + @JsonProperty("restrict_workspace_admins") + private RestrictWorkspaceAdminsMessage restrictWorkspaceAdmins; + + /** */ + @JsonProperty("string_val") + private StringMessage stringVal; + + public Setting setAibiDashboardEmbeddingAccessPolicy( + AibiDashboardEmbeddingAccessPolicy aibiDashboardEmbeddingAccessPolicy) { + this.aibiDashboardEmbeddingAccessPolicy = aibiDashboardEmbeddingAccessPolicy; + return this; + } + + public AibiDashboardEmbeddingAccessPolicy getAibiDashboardEmbeddingAccessPolicy() { + return aibiDashboardEmbeddingAccessPolicy; + } + + public Setting setAibiDashboardEmbeddingApprovedDomains( + AibiDashboardEmbeddingApprovedDomains aibiDashboardEmbeddingApprovedDomains) { + this.aibiDashboardEmbeddingApprovedDomains = aibiDashboardEmbeddingApprovedDomains; + return this; + } + + public AibiDashboardEmbeddingApprovedDomains getAibiDashboardEmbeddingApprovedDomains() { + return aibiDashboardEmbeddingApprovedDomains; + } + + public Setting setAutomaticClusterUpdateWorkspace( + ClusterAutoRestartMessage automaticClusterUpdateWorkspace) { + this.automaticClusterUpdateWorkspace = automaticClusterUpdateWorkspace; + return this; + } + + public ClusterAutoRestartMessage getAutomaticClusterUpdateWorkspace() { + return automaticClusterUpdateWorkspace; + } + + public Setting setBooleanVal(BooleanMessage booleanVal) { + this.booleanVal = booleanVal; + return this; + } + + public BooleanMessage getBooleanVal() { + return booleanVal; + } + + public Setting setDefaultDataSecurityMode( + DefaultDataSecurityModeMessage defaultDataSecurityMode) { + this.defaultDataSecurityMode = defaultDataSecurityMode; + return this; + } + + public DefaultDataSecurityModeMessage getDefaultDataSecurityMode() { + return defaultDataSecurityMode; + } + + public Setting setEffectiveAibiDashboardEmbeddingAccessPolicy( + AibiDashboardEmbeddingAccessPolicy effectiveAibiDashboardEmbeddingAccessPolicy) { + this.effectiveAibiDashboardEmbeddingAccessPolicy = effectiveAibiDashboardEmbeddingAccessPolicy; + return this; + } + + public AibiDashboardEmbeddingAccessPolicy getEffectiveAibiDashboardEmbeddingAccessPolicy() { + return effectiveAibiDashboardEmbeddingAccessPolicy; + } + + public Setting setEffectiveAibiDashboardEmbeddingApprovedDomains( + AibiDashboardEmbeddingApprovedDomains effectiveAibiDashboardEmbeddingApprovedDomains) { + this.effectiveAibiDashboardEmbeddingApprovedDomains = + effectiveAibiDashboardEmbeddingApprovedDomains; + return this; + } + + public AibiDashboardEmbeddingApprovedDomains getEffectiveAibiDashboardEmbeddingApprovedDomains() { + return effectiveAibiDashboardEmbeddingApprovedDomains; + } + + public Setting setEffectiveAutomaticClusterUpdateWorkspace( + ClusterAutoRestartMessage effectiveAutomaticClusterUpdateWorkspace) { + this.effectiveAutomaticClusterUpdateWorkspace = effectiveAutomaticClusterUpdateWorkspace; + return this; + } + + public ClusterAutoRestartMessage getEffectiveAutomaticClusterUpdateWorkspace() { + return effectiveAutomaticClusterUpdateWorkspace; + } + + public Setting setEffectiveBooleanVal(BooleanMessage effectiveBooleanVal) { + this.effectiveBooleanVal = effectiveBooleanVal; + return this; + } + + public BooleanMessage getEffectiveBooleanVal() { + return effectiveBooleanVal; + } + + public Setting setEffectiveDefaultDataSecurityMode( + DefaultDataSecurityModeMessage effectiveDefaultDataSecurityMode) { + this.effectiveDefaultDataSecurityMode = effectiveDefaultDataSecurityMode; + return this; + } + + public DefaultDataSecurityModeMessage getEffectiveDefaultDataSecurityMode() { + return effectiveDefaultDataSecurityMode; + } + + public Setting setEffectiveIntegerVal(IntegerMessage effectiveIntegerVal) { + this.effectiveIntegerVal = effectiveIntegerVal; + return this; + } + + public IntegerMessage getEffectiveIntegerVal() { + return effectiveIntegerVal; + } + + public Setting setEffectivePersonalCompute(PersonalComputeMessage effectivePersonalCompute) { + this.effectivePersonalCompute = effectivePersonalCompute; + return this; + } + + public PersonalComputeMessage getEffectivePersonalCompute() { + return effectivePersonalCompute; + } + + public Setting setEffectiveRestrictWorkspaceAdmins( + RestrictWorkspaceAdminsMessage effectiveRestrictWorkspaceAdmins) { + this.effectiveRestrictWorkspaceAdmins = effectiveRestrictWorkspaceAdmins; + return this; + } + + public RestrictWorkspaceAdminsMessage getEffectiveRestrictWorkspaceAdmins() { + return effectiveRestrictWorkspaceAdmins; + } + + public Setting setEffectiveStringVal(StringMessage effectiveStringVal) { + this.effectiveStringVal = effectiveStringVal; + return this; + } + + public StringMessage getEffectiveStringVal() { + return effectiveStringVal; + } + + public Setting setIntegerVal(IntegerMessage integerVal) { + this.integerVal = integerVal; + return this; + } + + public IntegerMessage getIntegerVal() { + return integerVal; + } + + public Setting setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public Setting setPersonalCompute(PersonalComputeMessage personalCompute) { + this.personalCompute = personalCompute; + return this; + } + + public PersonalComputeMessage getPersonalCompute() { + return personalCompute; + } + + public Setting setRestrictWorkspaceAdmins( + RestrictWorkspaceAdminsMessage restrictWorkspaceAdmins) { + this.restrictWorkspaceAdmins = restrictWorkspaceAdmins; + return this; + } + + public RestrictWorkspaceAdminsMessage getRestrictWorkspaceAdmins() { + return restrictWorkspaceAdmins; + } + + public Setting setStringVal(StringMessage stringVal) { + this.stringVal = stringVal; + return this; + } + + public StringMessage getStringVal() { + return stringVal; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + Setting that = (Setting) o; + return Objects.equals( + aibiDashboardEmbeddingAccessPolicy, that.aibiDashboardEmbeddingAccessPolicy) + && Objects.equals( + aibiDashboardEmbeddingApprovedDomains, that.aibiDashboardEmbeddingApprovedDomains) + && Objects.equals(automaticClusterUpdateWorkspace, that.automaticClusterUpdateWorkspace) + && Objects.equals(booleanVal, that.booleanVal) + && Objects.equals(defaultDataSecurityMode, that.defaultDataSecurityMode) + && Objects.equals( + effectiveAibiDashboardEmbeddingAccessPolicy, + that.effectiveAibiDashboardEmbeddingAccessPolicy) + && Objects.equals( + effectiveAibiDashboardEmbeddingApprovedDomains, + that.effectiveAibiDashboardEmbeddingApprovedDomains) + && Objects.equals( + effectiveAutomaticClusterUpdateWorkspace, that.effectiveAutomaticClusterUpdateWorkspace) + && Objects.equals(effectiveBooleanVal, that.effectiveBooleanVal) + && Objects.equals(effectiveDefaultDataSecurityMode, that.effectiveDefaultDataSecurityMode) + && Objects.equals(effectiveIntegerVal, that.effectiveIntegerVal) + && Objects.equals(effectivePersonalCompute, that.effectivePersonalCompute) + && Objects.equals(effectiveRestrictWorkspaceAdmins, that.effectiveRestrictWorkspaceAdmins) + && Objects.equals(effectiveStringVal, that.effectiveStringVal) + && Objects.equals(integerVal, that.integerVal) + && Objects.equals(name, that.name) + && Objects.equals(personalCompute, that.personalCompute) + && Objects.equals(restrictWorkspaceAdmins, that.restrictWorkspaceAdmins) + && Objects.equals(stringVal, that.stringVal); + } + + @Override + public int hashCode() { + return Objects.hash( + aibiDashboardEmbeddingAccessPolicy, + aibiDashboardEmbeddingApprovedDomains, + automaticClusterUpdateWorkspace, + booleanVal, + defaultDataSecurityMode, + effectiveAibiDashboardEmbeddingAccessPolicy, + effectiveAibiDashboardEmbeddingApprovedDomains, + effectiveAutomaticClusterUpdateWorkspace, + effectiveBooleanVal, + effectiveDefaultDataSecurityMode, + effectiveIntegerVal, + effectivePersonalCompute, + effectiveRestrictWorkspaceAdmins, + effectiveStringVal, + integerVal, + name, + personalCompute, + restrictWorkspaceAdmins, + stringVal); + } + + @Override + public String toString() { + return new ToStringer(Setting.class) + .add("aibiDashboardEmbeddingAccessPolicy", aibiDashboardEmbeddingAccessPolicy) + .add("aibiDashboardEmbeddingApprovedDomains", aibiDashboardEmbeddingApprovedDomains) + .add("automaticClusterUpdateWorkspace", automaticClusterUpdateWorkspace) + .add("booleanVal", booleanVal) + .add("defaultDataSecurityMode", defaultDataSecurityMode) + .add( + "effectiveAibiDashboardEmbeddingAccessPolicy", + effectiveAibiDashboardEmbeddingAccessPolicy) + .add( + "effectiveAibiDashboardEmbeddingApprovedDomains", + effectiveAibiDashboardEmbeddingApprovedDomains) + .add("effectiveAutomaticClusterUpdateWorkspace", effectiveAutomaticClusterUpdateWorkspace) + .add("effectiveBooleanVal", effectiveBooleanVal) + .add("effectiveDefaultDataSecurityMode", effectiveDefaultDataSecurityMode) + .add("effectiveIntegerVal", effectiveIntegerVal) + .add("effectivePersonalCompute", effectivePersonalCompute) + .add("effectiveRestrictWorkspaceAdmins", effectiveRestrictWorkspaceAdmins) + .add("effectiveStringVal", effectiveStringVal) + .add("integerVal", integerVal) + .add("name", name) + .add("personalCompute", personalCompute) + .add("restrictWorkspaceAdmins", restrictWorkspaceAdmins) + .add("stringVal", stringVal) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/SettingsMetadata.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/SettingsMetadata.java new file mode 100755 index 000000000..3708c5e3d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/SettingsMetadata.java @@ -0,0 +1,89 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class SettingsMetadata { + /** Setting description for what this setting controls */ + @JsonProperty("description") + private String description; + + /** Link to databricks documentation for the setting */ + @JsonProperty("docs_link") + private String docsLink; + + /** Name of the setting. */ + @JsonProperty("name") + private String name; + + /** Type of the setting. To set this setting, the value sent must match this type. */ + @JsonProperty("type") + private String typeValue; + + public SettingsMetadata setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public SettingsMetadata setDocsLink(String docsLink) { + this.docsLink = docsLink; + return this; + } + + public String getDocsLink() { + return docsLink; + } + + public SettingsMetadata setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + public SettingsMetadata setType(String typeValue) { + this.typeValue = typeValue; + return this; + } + + public String getType() { + return typeValue; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + SettingsMetadata that = (SettingsMetadata) o; + return Objects.equals(description, that.description) + && Objects.equals(docsLink, that.docsLink) + && Objects.equals(name, that.name) + && Objects.equals(typeValue, that.typeValue); + } + + @Override + public int hashCode() { + return Objects.hash(description, docsLink, name, typeValue); + } + + @Override + public String toString() { + return new ToStringer(SettingsMetadata.class) + .add("description", description) + .add("docsLink", docsLink) + .add("name", name) + .add("typeValue", typeValue) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/StringMessage.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/StringMessage.java new file mode 100755 index 000000000..09db23e57 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/StringMessage.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class StringMessage { + /** Represents a generic string value. */ + @JsonProperty("value") + private String value; + + public StringMessage setValue(String value) { + this.value = value; + return this; + } + + public String getValue() { + return value; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + StringMessage that = (StringMessage) o; + return Objects.equals(value, that.value); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public String toString() { + return new ToStringer(StringMessage.class).add("value", value).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2API.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2API.java new file mode 100755 index 000000000..9d1bcb099 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2API.java @@ -0,0 +1,64 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** APIs to manage workspace level settings */ +@Generated +public class WorkspaceSettingsV2API { + private static final Logger LOG = LoggerFactory.getLogger(WorkspaceSettingsV2API.class); + + private final WorkspaceSettingsV2Service impl; + + /** Regular-use constructor */ + public WorkspaceSettingsV2API(ApiClient apiClient) { + impl = new WorkspaceSettingsV2Impl(apiClient); + } + + /** Constructor for mocks */ + public WorkspaceSettingsV2API(WorkspaceSettingsV2Service mock) { + impl = mock; + } + + public Setting getPublicWorkspaceSetting(String name) { + return getPublicWorkspaceSetting(new GetPublicWorkspaceSettingRequest().setName(name)); + } + + /** Get a setting value at workspace level */ + public Setting getPublicWorkspaceSetting(GetPublicWorkspaceSettingRequest request) { + return impl.getPublicWorkspaceSetting(request); + } + + /** + * List valid setting keys and metadata. These settings are available to referenced via [GET + * /api/2.1/settings/{name}](#~1api~1workspace~1settingsv2~1getpublicworkspacesetting) and [PATCH + * /api/2.1/settings/{name}](#~1api~1workspace~1settingsv2~patchpublicworkspacesetting) APIs + */ + public Iterable listWorkspaceSettingsMetadata( + ListWorkspaceSettingsMetadataRequest request) { + return new Paginator<>( + request, + impl::listWorkspaceSettingsMetadata, + ListWorkspaceSettingsMetadataResponse::getSettingsMetadata, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + + /** Patch a setting value at workspace level */ + public Setting patchPublicWorkspaceSetting(PatchPublicWorkspaceSettingRequest request) { + return impl.patchPublicWorkspaceSetting(request); + } + + public WorkspaceSettingsV2Service impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Impl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Impl.java new file mode 100755 index 000000000..891c3dd3a --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Impl.java @@ -0,0 +1,59 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of WorkspaceSettingsV2 */ +@Generated +class WorkspaceSettingsV2Impl implements WorkspaceSettingsV2Service { + private final ApiClient apiClient; + + public WorkspaceSettingsV2Impl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public Setting getPublicWorkspaceSetting(GetPublicWorkspaceSettingRequest request) { + String path = String.format("/api/2.1/settings/%s", request.getName()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, Setting.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public ListWorkspaceSettingsMetadataResponse listWorkspaceSettingsMetadata( + ListWorkspaceSettingsMetadataRequest request) { + String path = "/api/2.1/settings-metadata"; + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, ListWorkspaceSettingsMetadataResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public Setting patchPublicWorkspaceSetting(PatchPublicWorkspaceSettingRequest request) { + String path = String.format("/api/2.1/settings/%s", request.getName()); + try { + Request req = new Request("PATCH", path, apiClient.serialize(request.getSetting())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, Setting.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Service.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Service.java new file mode 100755 index 000000000..baa1eff39 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/WorkspaceSettingsV2Service.java @@ -0,0 +1,30 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.settingsv2; + +import com.databricks.sdk.support.Generated; + +/** + * APIs to manage workspace level settings + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface WorkspaceSettingsV2Service { + /** Get a setting value at workspace level */ + Setting getPublicWorkspaceSetting( + GetPublicWorkspaceSettingRequest getPublicWorkspaceSettingRequest); + + /** + * List valid setting keys and metadata. These settings are available to referenced via [GET + * /api/2.1/settings/{name}](#~1api~1workspace~1settingsv2~1getpublicworkspacesetting) and [PATCH + * /api/2.1/settings/{name}](#~1api~1workspace~1settingsv2~patchpublicworkspacesetting) APIs + */ + ListWorkspaceSettingsMetadataResponse listWorkspaceSettingsMetadata( + ListWorkspaceSettingsMetadataRequest listWorkspaceSettingsMetadataRequest); + + /** Patch a setting value at workspace level */ + Setting patchPublicWorkspaceSetting( + PatchPublicWorkspaceSettingRequest patchPublicWorkspaceSettingRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/Share.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/Share.java index 517e5634a..dbc6f59f3 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/Share.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sharing/Share.java @@ -5,19 +5,10 @@ import com.databricks.sdk.support.Generated; import com.databricks.sdk.support.ToStringer; import com.fasterxml.jackson.annotation.JsonProperty; -import java.util.Collection; import java.util.Objects; @Generated public class Share { - /** The comment of the share. */ - @JsonProperty("comment") - private String comment; - - /** The display name of the share. If defined, it will be shown in the UI. */ - @JsonProperty("display_name") - private String displayName; - /** */ @JsonProperty("id") private String id; @@ -26,28 +17,6 @@ public class Share { @JsonProperty("name") private String name; - /** The tags of the share. */ - @JsonProperty("tags") - private Collection tags; - - public Share setComment(String comment) { - this.comment = comment; - return this; - } - - public String getComment() { - return comment; - } - - public Share setDisplayName(String displayName) { - this.displayName = displayName; - return this; - } - - public String getDisplayName() { - return displayName; - } - public Share setId(String id) { this.id = id; return this; @@ -66,40 +35,21 @@ public String getName() { return name; } - public Share setTags(Collection tags) { - this.tags = tags; - return this; - } - - public Collection getTags() { - return tags; - } - @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Share that = (Share) o; - return Objects.equals(comment, that.comment) - && Objects.equals(displayName, that.displayName) - && Objects.equals(id, that.id) - && Objects.equals(name, that.name) - && Objects.equals(tags, that.tags); + return Objects.equals(id, that.id) && Objects.equals(name, that.name); } @Override public int hashCode() { - return Objects.hash(comment, displayName, id, name, tags); + return Objects.hash(id, name); } @Override public String toString() { - return new ToStringer(Share.class) - .add("comment", comment) - .add("displayName", displayName) - .add("id", id) - .add("name", name) - .add("tags", tags) - .toString(); + return new ToStringer(Share.class).add("id", id).add("name", name).toString(); } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2.java index 52a1b589d..38cf96892 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2.java @@ -25,6 +25,13 @@ public class AlertV2 { @JsonProperty("display_name") private String displayName; + /** + * The actual identity that will be used to execute the alert. This is an output-only field that + * shows the resolved run-as identity after applying permissions and defaults. + */ + @JsonProperty("effective_run_as") + private AlertV2RunAs effectiveRunAs; + /** */ @JsonProperty("evaluation") private AlertV2Evaluation evaluation; @@ -52,10 +59,21 @@ public class AlertV2 { @JsonProperty("query_text") private String queryText; + /** + * Specifies the identity that will be used to run the alert. This field allows you to configure + * alerts to run as a specific user or service principal. - For user identity: Set `user_name` to + * the email of an active workspace user. Users can only set this to their own email. - For + * service principal: Set `service_principal_name` to the application ID. Requires the + * `servicePrincipal/user` role. If not specified, the alert will run as the request user. + */ + @JsonProperty("run_as") + private AlertV2RunAs runAs; + /** * The run as username or application ID of service principal. On Create and Update, this field * can be set to application ID of an active service principal. Setting this field requires the - * servicePrincipal/user role. + * servicePrincipal/user role. Deprecated: Use `run_as` field instead. This field will be removed + * in a future release. */ @JsonProperty("run_as_user_name") private String runAsUserName; @@ -108,6 +126,15 @@ public String getDisplayName() { return displayName; } + public AlertV2 setEffectiveRunAs(AlertV2RunAs effectiveRunAs) { + this.effectiveRunAs = effectiveRunAs; + return this; + } + + public AlertV2RunAs getEffectiveRunAs() { + return effectiveRunAs; + } + public AlertV2 setEvaluation(AlertV2Evaluation evaluation) { this.evaluation = evaluation; return this; @@ -162,6 +189,15 @@ public String getQueryText() { return queryText; } + public AlertV2 setRunAs(AlertV2RunAs runAs) { + this.runAs = runAs; + return this; + } + + public AlertV2RunAs getRunAs() { + return runAs; + } + public AlertV2 setRunAsUserName(String runAsUserName) { this.runAsUserName = runAsUserName; return this; @@ -207,12 +243,14 @@ public boolean equals(Object o) { && Objects.equals(customDescription, that.customDescription) && Objects.equals(customSummary, that.customSummary) && Objects.equals(displayName, that.displayName) + && Objects.equals(effectiveRunAs, that.effectiveRunAs) && Objects.equals(evaluation, that.evaluation) && Objects.equals(id, that.id) && Objects.equals(lifecycleState, that.lifecycleState) && Objects.equals(ownerUserName, that.ownerUserName) && Objects.equals(parentPath, that.parentPath) && Objects.equals(queryText, that.queryText) + && Objects.equals(runAs, that.runAs) && Objects.equals(runAsUserName, that.runAsUserName) && Objects.equals(schedule, that.schedule) && Objects.equals(updateTime, that.updateTime) @@ -226,12 +264,14 @@ public int hashCode() { customDescription, customSummary, displayName, + effectiveRunAs, evaluation, id, lifecycleState, ownerUserName, parentPath, queryText, + runAs, runAsUserName, schedule, updateTime, @@ -245,12 +285,14 @@ public String toString() { .add("customDescription", customDescription) .add("customSummary", customSummary) .add("displayName", displayName) + .add("effectiveRunAs", effectiveRunAs) .add("evaluation", evaluation) .add("id", id) .add("lifecycleState", lifecycleState) .add("ownerUserName", ownerUserName) .add("parentPath", parentPath) .add("queryText", queryText) + .add("runAs", runAs) .add("runAsUserName", runAsUserName) .add("schedule", schedule) .add("updateTime", updateTime) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2RunAs.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2RunAs.java new file mode 100755 index 000000000..968f4abee --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/AlertV2RunAs.java @@ -0,0 +1,62 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.sql; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class AlertV2RunAs { + /** + * Application ID of an active service principal. Setting this field requires the + * `servicePrincipal/user` role. + */ + @JsonProperty("service_principal_name") + private String servicePrincipalName; + + /** The email of an active workspace user. Can only set this field to their own email. */ + @JsonProperty("user_name") + private String userName; + + public AlertV2RunAs setServicePrincipalName(String servicePrincipalName) { + this.servicePrincipalName = servicePrincipalName; + return this; + } + + public String getServicePrincipalName() { + return servicePrincipalName; + } + + public AlertV2RunAs setUserName(String userName) { + this.userName = userName; + return this; + } + + public String getUserName() { + return userName; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + AlertV2RunAs that = (AlertV2RunAs) o; + return Objects.equals(servicePrincipalName, that.servicePrincipalName) + && Objects.equals(userName, that.userName); + } + + @Override + public int hashCode() { + return Objects.hash(servicePrincipalName, userName); + } + + @Override + public String toString() { + return new ToStringer(AlertV2RunAs.class) + .add("servicePrincipalName", servicePrincipalName) + .add("userName", userName) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/QueryInfo.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/QueryInfo.java index 2d4d351bc..b9af6b0f9 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/QueryInfo.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sql/QueryInfo.java @@ -9,6 +9,10 @@ @Generated public class QueryInfo { + /** The ID of the cached query if this result retrieved from cache */ + @JsonProperty("cache_query_id") + private String cacheQueryId; + /** SQL Warehouse channel information at the time of query execution */ @JsonProperty("channel_used") private ChannelInfo channelUsed; @@ -123,6 +127,15 @@ public class QueryInfo { @JsonProperty("warehouse_id") private String warehouseId; + public QueryInfo setCacheQueryId(String cacheQueryId) { + this.cacheQueryId = cacheQueryId; + return this; + } + + public String getCacheQueryId() { + return cacheQueryId; + } + public QueryInfo setChannelUsed(ChannelInfo channelUsed) { this.channelUsed = channelUsed; return this; @@ -344,7 +357,8 @@ public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; QueryInfo that = (QueryInfo) o; - return Objects.equals(channelUsed, that.channelUsed) + return Objects.equals(cacheQueryId, that.cacheQueryId) + && Objects.equals(channelUsed, that.channelUsed) && Objects.equals(clientApplication, that.clientApplication) && Objects.equals(duration, that.duration) && Objects.equals(endpointId, that.endpointId) @@ -373,6 +387,7 @@ public boolean equals(Object o) { @Override public int hashCode() { return Objects.hash( + cacheQueryId, channelUsed, clientApplication, duration, @@ -402,6 +417,7 @@ public int hashCode() { @Override public String toString() { return new ToStringer(QueryInfo.class) + .add("cacheQueryId", cacheQueryId) .add("channelUsed", channelUsed) .add("clientApplication", clientApplication) .add("duration", duration) diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/CreateTagPolicyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/CreateTagPolicyRequest.java new file mode 100755 index 000000000..16aab80d4 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/CreateTagPolicyRequest.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class CreateTagPolicyRequest { + /** */ + @JsonProperty("tag_policy") + private TagPolicy tagPolicy; + + public CreateTagPolicyRequest setTagPolicy(TagPolicy tagPolicy) { + this.tagPolicy = tagPolicy; + return this; + } + + public TagPolicy getTagPolicy() { + return tagPolicy; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + CreateTagPolicyRequest that = (CreateTagPolicyRequest) o; + return Objects.equals(tagPolicy, that.tagPolicy); + } + + @Override + public int hashCode() { + return Objects.hash(tagPolicy); + } + + @Override + public String toString() { + return new ToStringer(CreateTagPolicyRequest.class).add("tagPolicy", tagPolicy).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/DeleteTagPolicyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/DeleteTagPolicyRequest.java new file mode 100755 index 000000000..b06742357 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/DeleteTagPolicyRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class DeleteTagPolicyRequest { + /** */ + @JsonIgnore private String tagKey; + + public DeleteTagPolicyRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + DeleteTagPolicyRequest that = (DeleteTagPolicyRequest) o; + return Objects.equals(tagKey, that.tagKey); + } + + @Override + public int hashCode() { + return Objects.hash(tagKey); + } + + @Override + public String toString() { + return new ToStringer(DeleteTagPolicyRequest.class).add("tagKey", tagKey).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/GetTagPolicyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/GetTagPolicyRequest.java new file mode 100755 index 000000000..3c9942615 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/GetTagPolicyRequest.java @@ -0,0 +1,41 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class GetTagPolicyRequest { + /** */ + @JsonIgnore private String tagKey; + + public GetTagPolicyRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + GetTagPolicyRequest that = (GetTagPolicyRequest) o; + return Objects.equals(tagKey, that.tagKey); + } + + @Override + public int hashCode() { + return Objects.hash(tagKey); + } + + @Override + public String toString() { + return new ToStringer(GetTagPolicyRequest.class).add("tagKey", tagKey).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesRequest.java new file mode 100755 index 000000000..8f8a71e98 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesRequest.java @@ -0,0 +1,65 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import java.util.Objects; + +@Generated +public class ListTagPoliciesRequest { + /** + * The maximum number of results to return in this request. Fewer results may be returned than + * requested. If unspecified or set to 0, this defaults to 1000. The maximum value is 1000; values + * above 1000 will be coerced down to 1000. + */ + @JsonIgnore + @QueryParam("page_size") + private Long pageSize; + + /** An optional page token received from a previous list tag policies call. */ + @JsonIgnore + @QueryParam("page_token") + private String pageToken; + + public ListTagPoliciesRequest setPageSize(Long pageSize) { + this.pageSize = pageSize; + return this; + } + + public Long getPageSize() { + return pageSize; + } + + public ListTagPoliciesRequest setPageToken(String pageToken) { + this.pageToken = pageToken; + return this; + } + + public String getPageToken() { + return pageToken; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListTagPoliciesRequest that = (ListTagPoliciesRequest) o; + return Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken); + } + + @Override + public int hashCode() { + return Objects.hash(pageSize, pageToken); + } + + @Override + public String toString() { + return new ToStringer(ListTagPoliciesRequest.class) + .add("pageSize", pageSize) + .add("pageToken", pageToken) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesResponse.java new file mode 100755 index 000000000..a5c012096 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/ListTagPoliciesResponse.java @@ -0,0 +1,60 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class ListTagPoliciesResponse { + /** */ + @JsonProperty("next_page_token") + private String nextPageToken; + + /** */ + @JsonProperty("tag_policies") + private Collection tagPolicies; + + public ListTagPoliciesResponse setNextPageToken(String nextPageToken) { + this.nextPageToken = nextPageToken; + return this; + } + + public String getNextPageToken() { + return nextPageToken; + } + + public ListTagPoliciesResponse setTagPolicies(Collection tagPolicies) { + this.tagPolicies = tagPolicies; + return this; + } + + public Collection getTagPolicies() { + return tagPolicies; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ListTagPoliciesResponse that = (ListTagPoliciesResponse) o; + return Objects.equals(nextPageToken, that.nextPageToken) + && Objects.equals(tagPolicies, that.tagPolicies); + } + + @Override + public int hashCode() { + return Objects.hash(nextPageToken, tagPolicies); + } + + @Override + public String toString() { + return new ToStringer(ListTagPoliciesResponse.class) + .add("nextPageToken", nextPageToken) + .add("tagPolicies", tagPolicies) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesAPI.java new file mode 100755 index 000000000..689dfa1ac --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesAPI.java @@ -0,0 +1,73 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** The Tag Policy API allows you to manage tag policies in Databricks. */ +@Generated +public class TagPoliciesAPI { + private static final Logger LOG = LoggerFactory.getLogger(TagPoliciesAPI.class); + + private final TagPoliciesService impl; + + /** Regular-use constructor */ + public TagPoliciesAPI(ApiClient apiClient) { + impl = new TagPoliciesImpl(apiClient); + } + + /** Constructor for mocks */ + public TagPoliciesAPI(TagPoliciesService mock) { + impl = mock; + } + + /** Creates a new tag policy. */ + public TagPolicy createTagPolicy(CreateTagPolicyRequest request) { + return impl.createTagPolicy(request); + } + + public void deleteTagPolicy(String tagKey) { + deleteTagPolicy(new DeleteTagPolicyRequest().setTagKey(tagKey)); + } + + /** Deletes a tag policy by its key. */ + public void deleteTagPolicy(DeleteTagPolicyRequest request) { + impl.deleteTagPolicy(request); + } + + public TagPolicy getTagPolicy(String tagKey) { + return getTagPolicy(new GetTagPolicyRequest().setTagKey(tagKey)); + } + + /** Gets a single tag policy by its key. */ + public TagPolicy getTagPolicy(GetTagPolicyRequest request) { + return impl.getTagPolicy(request); + } + + /** Lists all tag policies in the account. */ + public Iterable listTagPolicies(ListTagPoliciesRequest request) { + return new Paginator<>( + request, + impl::listTagPolicies, + ListTagPoliciesResponse::getTagPolicies, + response -> { + String token = response.getNextPageToken(); + if (token == null || token.isEmpty()) { + return null; + } + return request.setPageToken(token); + }); + } + + /** Updates an existing tag policy. */ + public TagPolicy updateTagPolicy(UpdateTagPolicyRequest request) { + return impl.updateTagPolicy(request); + } + + public TagPoliciesService impl() { + return impl; + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesImpl.java new file mode 100755 index 000000000..218041812 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesImpl.java @@ -0,0 +1,85 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.DatabricksException; +import com.databricks.sdk.core.http.Request; +import com.databricks.sdk.support.Generated; +import java.io.IOException; + +/** Package-local implementation of TagPolicies */ +@Generated +class TagPoliciesImpl implements TagPoliciesService { + private final ApiClient apiClient; + + public TagPoliciesImpl(ApiClient apiClient) { + this.apiClient = apiClient; + } + + @Override + public TagPolicy createTagPolicy(CreateTagPolicyRequest request) { + String path = "/api/2.1/tag-policies"; + try { + Request req = new Request("POST", path, apiClient.serialize(request.getTagPolicy())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, TagPolicy.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public void deleteTagPolicy(DeleteTagPolicyRequest request) { + String path = String.format("/api/2.1/tag-policies/%s", request.getTagKey()); + try { + Request req = new Request("DELETE", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + apiClient.execute(req, Void.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public TagPolicy getTagPolicy(GetTagPolicyRequest request) { + String path = String.format("/api/2.1/tag-policies/%s", request.getTagKey()); + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, TagPolicy.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public ListTagPoliciesResponse listTagPolicies(ListTagPoliciesRequest request) { + String path = "/api/2.1/tag-policies"; + try { + Request req = new Request("GET", path); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + return apiClient.execute(req, ListTagPoliciesResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + + @Override + public TagPolicy updateTagPolicy(UpdateTagPolicyRequest request) { + String path = String.format("/api/2.1/tag-policies/%s", request.getTagKey()); + try { + Request req = new Request("PATCH", path, apiClient.serialize(request.getTagPolicy())); + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + return apiClient.execute(req, TagPolicy.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesService.java new file mode 100755 index 000000000..0076236f7 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPoliciesService.java @@ -0,0 +1,29 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; + +/** + * The Tag Policy API allows you to manage tag policies in Databricks. + * + *

This is the high-level interface, that contains generated methods. + * + *

Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface TagPoliciesService { + /** Creates a new tag policy. */ + TagPolicy createTagPolicy(CreateTagPolicyRequest createTagPolicyRequest); + + /** Deletes a tag policy by its key. */ + void deleteTagPolicy(DeleteTagPolicyRequest deleteTagPolicyRequest); + + /** Gets a single tag policy by its key. */ + TagPolicy getTagPolicy(GetTagPolicyRequest getTagPolicyRequest); + + /** Lists all tag policies in the account. */ + ListTagPoliciesResponse listTagPolicies(ListTagPoliciesRequest listTagPoliciesRequest); + + /** Updates an existing tag policy. */ + TagPolicy updateTagPolicy(UpdateTagPolicyRequest updateTagPolicyRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPolicy.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPolicy.java new file mode 100755 index 000000000..56eecd9ca --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/TagPolicy.java @@ -0,0 +1,90 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Collection; +import java.util.Objects; + +@Generated +public class TagPolicy { + /** */ + @JsonProperty("description") + private String description; + + /** */ + @JsonProperty("id") + private String id; + + /** */ + @JsonProperty("tag_key") + private String tagKey; + + /** */ + @JsonProperty("values") + private Collection values; + + public TagPolicy setDescription(String description) { + this.description = description; + return this; + } + + public String getDescription() { + return description; + } + + public TagPolicy setId(String id) { + this.id = id; + return this; + } + + public String getId() { + return id; + } + + public TagPolicy setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + public TagPolicy setValues(Collection values) { + this.values = values; + return this; + } + + public Collection getValues() { + return values; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + TagPolicy that = (TagPolicy) o; + return Objects.equals(description, that.description) + && Objects.equals(id, that.id) + && Objects.equals(tagKey, that.tagKey) + && Objects.equals(values, that.values); + } + + @Override + public int hashCode() { + return Objects.hash(description, id, tagKey, values); + } + + @Override + public String toString() { + return new ToStringer(TagPolicy.class) + .add("description", description) + .add("id", id) + .add("tagKey", tagKey) + .add("values", values) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/UpdateTagPolicyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/UpdateTagPolicyRequest.java new file mode 100755 index 000000000..7991f1854 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/UpdateTagPolicyRequest.java @@ -0,0 +1,86 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.QueryParam; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class UpdateTagPolicyRequest { + /** */ + @JsonIgnore private String tagKey; + + /** */ + @JsonProperty("tag_policy") + private TagPolicy tagPolicy; + + /** + * The field mask must be a single string, with multiple fields separated by commas (no spaces). + * The field path is relative to the resource object, using a dot (`.`) to navigate sub-fields + * (e.g., `author.given_name`). Specification of elements in sequence or map fields is not + * allowed, as only the entire collection field can be specified. Field names must exactly match + * the resource field names. + * + *

A field mask of `*` indicates full replacement. It’s recommended to always explicitly list + * the fields being updated and avoid using `*` wildcards, as it can lead to unintended results if + * the API changes in the future. + */ + @JsonIgnore + @QueryParam("update_mask") + private String updateMask; + + public UpdateTagPolicyRequest setTagKey(String tagKey) { + this.tagKey = tagKey; + return this; + } + + public String getTagKey() { + return tagKey; + } + + public UpdateTagPolicyRequest setTagPolicy(TagPolicy tagPolicy) { + this.tagPolicy = tagPolicy; + return this; + } + + public TagPolicy getTagPolicy() { + return tagPolicy; + } + + public UpdateTagPolicyRequest setUpdateMask(String updateMask) { + this.updateMask = updateMask; + return this; + } + + public String getUpdateMask() { + return updateMask; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + UpdateTagPolicyRequest that = (UpdateTagPolicyRequest) o; + return Objects.equals(tagKey, that.tagKey) + && Objects.equals(tagPolicy, that.tagPolicy) + && Objects.equals(updateMask, that.updateMask); + } + + @Override + public int hashCode() { + return Objects.hash(tagKey, tagPolicy, updateMask); + } + + @Override + public String toString() { + return new ToStringer(UpdateTagPolicyRequest.class) + .add("tagKey", tagKey) + .add("tagPolicy", tagPolicy) + .add("updateMask", updateMask) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/Value.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/Value.java new file mode 100755 index 000000000..4ccab0c84 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/tags/Value.java @@ -0,0 +1,42 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.tags; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +@Generated +public class Value { + /** */ + @JsonProperty("name") + private String name; + + public Value setName(String name) { + this.name = name; + return this; + } + + public String getName() { + return name; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + Value that = (Value) o; + return Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(name); + } + + @Override + public String toString() { + return new ToStringer(Value.class).add("name", name).toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EmbeddingSourceColumn.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EmbeddingSourceColumn.java index 3ef8c00ec..d60226508 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EmbeddingSourceColumn.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EmbeddingSourceColumn.java @@ -9,10 +9,16 @@ @Generated public class EmbeddingSourceColumn { - /** Name of the embedding model endpoint */ + /** Name of the embedding model endpoint, used by default for both ingestion and querying. */ @JsonProperty("embedding_model_endpoint_name") private String embeddingModelEndpointName; + /** + * Name of the embedding model endpoint which, if specified, is used for querying (not ingestion). + */ + @JsonProperty("model_endpoint_name_for_query") + private String modelEndpointNameForQuery; + /** Name of the column */ @JsonProperty("name") private String name; @@ -26,6 +32,15 @@ public String getEmbeddingModelEndpointName() { return embeddingModelEndpointName; } + public EmbeddingSourceColumn setModelEndpointNameForQuery(String modelEndpointNameForQuery) { + this.modelEndpointNameForQuery = modelEndpointNameForQuery; + return this; + } + + public String getModelEndpointNameForQuery() { + return modelEndpointNameForQuery; + } + public EmbeddingSourceColumn setName(String name) { this.name = name; return this; @@ -41,18 +56,20 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) return false; EmbeddingSourceColumn that = (EmbeddingSourceColumn) o; return Objects.equals(embeddingModelEndpointName, that.embeddingModelEndpointName) + && Objects.equals(modelEndpointNameForQuery, that.modelEndpointNameForQuery) && Objects.equals(name, that.name); } @Override public int hashCode() { - return Objects.hash(embeddingModelEndpointName, name); + return Objects.hash(embeddingModelEndpointName, modelEndpointNameForQuery, name); } @Override public String toString() { return new ToStringer(EmbeddingSourceColumn.class) .add("embeddingModelEndpointName", embeddingModelEndpointName) + .add("modelEndpointNameForQuery", modelEndpointNameForQuery) .add("name", name) .toString(); }