1#![allow(unused_imports)]
3use crate::codegen::agent_skills::*;
4use crate::codegen::agents::*;
5use crate::codegen::catalogs::*;
6use crate::codegen::credentials::*;
7use crate::codegen::entity_tag_assignments::*;
8use crate::codegen::external_locations::*;
9use crate::codegen::functions::*;
10use crate::codegen::model_versions::*;
11use crate::codegen::policies::*;
12use crate::codegen::providers::*;
13use crate::codegen::recipients::*;
14use crate::codegen::registered_models::*;
15use crate::codegen::schemas::*;
16use crate::codegen::shares::*;
17use crate::codegen::staging_tables::*;
18use crate::codegen::tables::*;
19use crate::codegen::tag_policies::*;
20use crate::codegen::temporary_credentials::*;
21use crate::codegen::volumes::*;
22#[cfg(not(target_arch = "wasm32"))]
23use ::olai_http::CloudClient as Transport;
24#[cfg(target_arch = "wasm32")]
25use ::olai_http_wasm::WasmClient as Transport;
26use unitycatalog_common::models::agent_skills::v0alpha1::*;
27use unitycatalog_common::models::agents::v0alpha1::*;
28use unitycatalog_common::models::catalogs::v1::*;
29use unitycatalog_common::models::credentials::v1::*;
30use unitycatalog_common::models::external_locations::v1::*;
31use unitycatalog_common::models::functions::v1::*;
32use unitycatalog_common::models::model_versions::v1::*;
33use unitycatalog_common::models::policies::v1::*;
34use unitycatalog_common::models::providers::v1::*;
35use unitycatalog_common::models::recipients::v1::*;
36use unitycatalog_common::models::registered_models::v1::*;
37use unitycatalog_common::models::schemas::v1::*;
38use unitycatalog_common::models::shares::v1::*;
39use unitycatalog_common::models::staging_tables::v1::*;
40use unitycatalog_common::models::tables::v1::*;
41use unitycatalog_common::models::tags::v1::*;
42use unitycatalog_common::models::temporary_credentials::v1::*;
43use unitycatalog_common::models::volumes::v1::*;
44use url::Url;
45#[derive(Clone)]
46pub struct UnityCatalogClient {
47 client: Transport,
48 base_url: Url,
49}
50impl UnityCatalogClient {
51 pub fn new(client: Transport, mut base_url: Url) -> Self {
56 if !base_url.path().ends_with('/') {
57 base_url.set_path(&format!("{}/", base_url.path()));
58 }
59 Self { client, base_url }
60 }
61 #[cfg(not(target_arch = "wasm32"))]
62 pub fn new_unauthenticated(base_url: Url) -> Self {
64 Self::new(Transport::new_unauthenticated(), base_url)
65 }
66 #[cfg(not(target_arch = "wasm32"))]
67 pub fn new_with_token(base_url: Url, token: impl ToString) -> Self {
69 Self::new(Transport::new_with_token(token), base_url)
70 }
71 #[cfg(target_arch = "wasm32")]
72 pub fn new_in_browser(base_url: Url) -> Self {
75 Self::new(Transport::new(), base_url)
76 }
77 pub fn agent_skills_client(&self) -> crate::codegen::agent_skills::AgentSkillServiceClient {
79 crate::codegen::agent_skills::AgentSkillServiceClient::new(
80 self.client.clone(),
81 self.base_url.clone(),
82 )
83 }
84 pub fn agents_client(&self) -> crate::codegen::agents::AgentServiceClient {
86 crate::codegen::agents::AgentServiceClient::new(self.client.clone(), self.base_url.clone())
87 }
88 pub fn catalogs_client(&self) -> crate::codegen::catalogs::CatalogServiceClient {
90 crate::codegen::catalogs::CatalogServiceClient::new(
91 self.client.clone(),
92 self.base_url.clone(),
93 )
94 }
95 pub fn credentials_client(&self) -> crate::codegen::credentials::CredentialServiceClient {
97 crate::codegen::credentials::CredentialServiceClient::new(
98 self.client.clone(),
99 self.base_url.clone(),
100 )
101 }
102 pub fn entity_tag_assignments_client(
104 &self,
105 ) -> crate::codegen::entity_tag_assignments::EntityTagAssignmentClient {
106 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
107 self.client.clone(),
108 self.base_url.clone(),
109 )
110 }
111 pub fn external_locations_client(
113 &self,
114 ) -> crate::codegen::external_locations::ExternalLocationServiceClient {
115 crate::codegen::external_locations::ExternalLocationServiceClient::new(
116 self.client.clone(),
117 self.base_url.clone(),
118 )
119 }
120 pub fn functions_client(&self) -> crate::codegen::functions::FunctionServiceClient {
122 crate::codegen::functions::FunctionServiceClient::new(
123 self.client.clone(),
124 self.base_url.clone(),
125 )
126 }
127 pub fn model_versions_client(
129 &self,
130 ) -> crate::codegen::model_versions::ModelVersionServiceClient {
131 crate::codegen::model_versions::ModelVersionServiceClient::new(
132 self.client.clone(),
133 self.base_url.clone(),
134 )
135 }
136 pub fn policies_client(&self) -> crate::codegen::policies::PolicyServiceClient {
138 crate::codegen::policies::PolicyServiceClient::new(
139 self.client.clone(),
140 self.base_url.clone(),
141 )
142 }
143 pub fn providers_client(&self) -> crate::codegen::providers::ProviderServiceClient {
145 crate::codegen::providers::ProviderServiceClient::new(
146 self.client.clone(),
147 self.base_url.clone(),
148 )
149 }
150 pub fn recipients_client(&self) -> crate::codegen::recipients::RecipientServiceClient {
152 crate::codegen::recipients::RecipientServiceClient::new(
153 self.client.clone(),
154 self.base_url.clone(),
155 )
156 }
157 pub fn registered_models_client(
159 &self,
160 ) -> crate::codegen::registered_models::RegisteredModelServiceClient {
161 crate::codegen::registered_models::RegisteredModelServiceClient::new(
162 self.client.clone(),
163 self.base_url.clone(),
164 )
165 }
166 pub fn schemas_client(&self) -> crate::codegen::schemas::SchemaServiceClient {
168 crate::codegen::schemas::SchemaServiceClient::new(
169 self.client.clone(),
170 self.base_url.clone(),
171 )
172 }
173 pub fn shares_client(&self) -> crate::codegen::shares::ShareServiceClient {
175 crate::codegen::shares::ShareServiceClient::new(self.client.clone(), self.base_url.clone())
176 }
177 pub fn staging_tables_client(
179 &self,
180 ) -> crate::codegen::staging_tables::StagingTableServiceClient {
181 crate::codegen::staging_tables::StagingTableServiceClient::new(
182 self.client.clone(),
183 self.base_url.clone(),
184 )
185 }
186 pub fn tables_client(&self) -> crate::codegen::tables::TableServiceClient {
188 crate::codegen::tables::TableServiceClient::new(self.client.clone(), self.base_url.clone())
189 }
190 pub fn tag_policies_client(&self) -> crate::codegen::tag_policies::TagPolicyServiceClient {
192 crate::codegen::tag_policies::TagPolicyServiceClient::new(
193 self.client.clone(),
194 self.base_url.clone(),
195 )
196 }
197 pub fn temporary_credentials_client(
199 &self,
200 ) -> crate::codegen::temporary_credentials::TemporaryCredentialClient {
201 crate::codegen::temporary_credentials::TemporaryCredentialClient::new(
202 self.client.clone(),
203 self.base_url.clone(),
204 )
205 }
206 pub fn volumes_client(&self) -> crate::codegen::volumes::VolumeServiceClient {
208 crate::codegen::volumes::VolumeServiceClient::new(
209 self.client.clone(),
210 self.base_url.clone(),
211 )
212 }
213 pub fn list_agent_skills(
220 &self,
221 catalog_name: impl Into<String>,
222 schema_name: impl Into<String>,
223 ) -> ListAgentSkillsBuilder {
224 ListAgentSkillsBuilder::new(
225 crate::codegen::agent_skills::AgentSkillServiceClient::new(
226 self.client.clone(),
227 self.base_url.clone(),
228 ),
229 catalog_name,
230 schema_name,
231 )
232 }
233 pub fn create_agent_skill(
240 &self,
241 catalog_name: impl Into<String>,
242 schema_name: impl Into<String>,
243 name: impl Into<String>,
244 agent_skill_type: AgentSkillType,
245 ) -> CreateAgentSkillBuilder {
246 CreateAgentSkillBuilder::new(
247 crate::codegen::agent_skills::AgentSkillServiceClient::new(
248 self.client.clone(),
249 self.base_url.clone(),
250 ),
251 catalog_name,
252 schema_name,
253 name,
254 agent_skill_type,
255 )
256 }
257 pub fn agent_skill(
259 &self,
260 catalog_name: impl Into<String>,
261 schema_name: impl Into<String>,
262 agent_skill_name: impl Into<String>,
263 ) -> AgentSkillClient {
264 AgentSkillClient::new(
265 catalog_name,
266 schema_name,
267 agent_skill_name,
268 crate::codegen::agent_skills::AgentSkillServiceClient::new(
269 self.client.clone(),
270 self.base_url.clone(),
271 ),
272 )
273 }
274 pub fn agent_skill_from_full_name(&self, full_name: impl Into<String>) -> AgentSkillClient {
276 AgentSkillClient::from_full_name(
277 full_name,
278 crate::codegen::agent_skills::AgentSkillServiceClient::new(
279 self.client.clone(),
280 self.base_url.clone(),
281 ),
282 )
283 }
284 pub fn list_agents(
291 &self,
292 catalog_name: impl Into<String>,
293 schema_name: impl Into<String>,
294 ) -> ListAgentsBuilder {
295 ListAgentsBuilder::new(
296 crate::codegen::agents::AgentServiceClient::new(
297 self.client.clone(),
298 self.base_url.clone(),
299 ),
300 catalog_name,
301 schema_name,
302 )
303 }
304 pub fn create_agent(
312 &self,
313 catalog_name: impl Into<String>,
314 schema_name: impl Into<String>,
315 name: impl Into<String>,
316 invocation_protocol: InvocationProtocol,
317 endpoint: impl Into<String>,
318 ) -> CreateAgentBuilder {
319 CreateAgentBuilder::new(
320 crate::codegen::agents::AgentServiceClient::new(
321 self.client.clone(),
322 self.base_url.clone(),
323 ),
324 catalog_name,
325 schema_name,
326 name,
327 invocation_protocol,
328 endpoint,
329 )
330 }
331 pub fn agent(
333 &self,
334 catalog_name: impl Into<String>,
335 schema_name: impl Into<String>,
336 agent_name: impl Into<String>,
337 ) -> AgentClient {
338 AgentClient::new(
339 catalog_name,
340 schema_name,
341 agent_name,
342 crate::codegen::agents::AgentServiceClient::new(
343 self.client.clone(),
344 self.base_url.clone(),
345 ),
346 )
347 }
348 pub fn agent_from_full_name(&self, full_name: impl Into<String>) -> AgentClient {
350 AgentClient::from_full_name(
351 full_name,
352 crate::codegen::agents::AgentServiceClient::new(
353 self.client.clone(),
354 self.base_url.clone(),
355 ),
356 )
357 }
358 pub fn list_catalogs(&self) -> ListCatalogsBuilder {
365 ListCatalogsBuilder::new(crate::codegen::catalogs::CatalogServiceClient::new(
366 self.client.clone(),
367 self.base_url.clone(),
368 ))
369 }
370 pub fn create_catalog(&self, name: impl Into<String>) -> CreateCatalogBuilder {
379 CreateCatalogBuilder::new(
380 crate::codegen::catalogs::CatalogServiceClient::new(
381 self.client.clone(),
382 self.base_url.clone(),
383 ),
384 name,
385 )
386 }
387 pub fn catalog(&self, catalog_name: impl Into<String>) -> CatalogClient {
389 CatalogClient::new(
390 catalog_name,
391 crate::codegen::catalogs::CatalogServiceClient::new(
392 self.client.clone(),
393 self.base_url.clone(),
394 ),
395 )
396 }
397 pub fn list_credentials(&self) -> ListCredentialsBuilder {
398 ListCredentialsBuilder::new(crate::codegen::credentials::CredentialServiceClient::new(
399 self.client.clone(),
400 self.base_url.clone(),
401 ))
402 }
403 pub fn create_credential(
408 &self,
409 name: impl Into<String>,
410 purpose: Purpose,
411 ) -> CreateCredentialBuilder {
412 CreateCredentialBuilder::new(
413 crate::codegen::credentials::CredentialServiceClient::new(
414 self.client.clone(),
415 self.base_url.clone(),
416 ),
417 name,
418 purpose,
419 )
420 }
421 pub fn credential(&self, credential_name: impl Into<String>) -> CredentialClient {
423 CredentialClient::new(
424 credential_name,
425 crate::codegen::credentials::CredentialServiceClient::new(
426 self.client.clone(),
427 self.base_url.clone(),
428 ),
429 )
430 }
431 pub fn list_entity_tag_assignments(
440 &self,
441 entity_type: impl Into<String>,
442 entity_name: impl Into<String>,
443 ) -> ListEntityTagAssignmentsBuilder {
444 ListEntityTagAssignmentsBuilder::new(
445 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
446 self.client.clone(),
447 self.base_url.clone(),
448 ),
449 entity_type,
450 entity_name,
451 )
452 }
453 pub fn create_entity_tag_assignment(
461 &self,
462 tag_assignment: EntityTagAssignment,
463 ) -> CreateEntityTagAssignmentBuilder {
464 CreateEntityTagAssignmentBuilder::new(
465 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
466 self.client.clone(),
467 self.base_url.clone(),
468 ),
469 tag_assignment,
470 )
471 }
472 pub fn get_entity_tag_assignment(
482 &self,
483 entity_type: impl Into<String>,
484 entity_name: impl Into<String>,
485 tag_key: impl Into<String>,
486 ) -> GetEntityTagAssignmentBuilder {
487 GetEntityTagAssignmentBuilder::new(
488 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
489 self.client.clone(),
490 self.base_url.clone(),
491 ),
492 entity_type,
493 entity_name,
494 tag_key,
495 )
496 }
497 pub fn update_entity_tag_assignment(
508 &self,
509 entity_type: impl Into<String>,
510 entity_name: impl Into<String>,
511 tag_key: impl Into<String>,
512 tag_assignment: EntityTagAssignment,
513 ) -> UpdateEntityTagAssignmentBuilder {
514 UpdateEntityTagAssignmentBuilder::new(
515 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
516 self.client.clone(),
517 self.base_url.clone(),
518 ),
519 entity_type,
520 entity_name,
521 tag_key,
522 tag_assignment,
523 )
524 }
525 pub fn delete_entity_tag_assignment(
535 &self,
536 entity_type: impl Into<String>,
537 entity_name: impl Into<String>,
538 tag_key: impl Into<String>,
539 ) -> DeleteEntityTagAssignmentBuilder {
540 DeleteEntityTagAssignmentBuilder::new(
541 crate::codegen::entity_tag_assignments::EntityTagAssignmentClient::new(
542 self.client.clone(),
543 self.base_url.clone(),
544 ),
545 entity_type,
546 entity_name,
547 tag_key,
548 )
549 }
550 pub fn list_external_locations(&self) -> ListExternalLocationsBuilder {
552 ListExternalLocationsBuilder::new(
553 crate::codegen::external_locations::ExternalLocationServiceClient::new(
554 self.client.clone(),
555 self.base_url.clone(),
556 ),
557 )
558 }
559 pub fn create_external_location(
567 &self,
568 name: impl Into<String>,
569 url: impl Into<String>,
570 credential_name: impl Into<String>,
571 ) -> CreateExternalLocationBuilder {
572 CreateExternalLocationBuilder::new(
573 crate::codegen::external_locations::ExternalLocationServiceClient::new(
574 self.client.clone(),
575 self.base_url.clone(),
576 ),
577 name,
578 url,
579 credential_name,
580 )
581 }
582 pub fn external_location(
584 &self,
585 external_location_name: impl Into<String>,
586 ) -> ExternalLocationClient {
587 ExternalLocationClient::new(
588 external_location_name,
589 crate::codegen::external_locations::ExternalLocationServiceClient::new(
590 self.client.clone(),
591 self.base_url.clone(),
592 ),
593 )
594 }
595 pub fn list_functions(
607 &self,
608 catalog_name: impl Into<String>,
609 schema_name: impl Into<String>,
610 ) -> ListFunctionsBuilder {
611 ListFunctionsBuilder::new(
612 crate::codegen::functions::FunctionServiceClient::new(
613 self.client.clone(),
614 self.base_url.clone(),
615 ),
616 catalog_name,
617 schema_name,
618 )
619 }
620 pub fn create_function(&self, function_info: CreateFunction) -> CreateFunctionBuilder {
629 CreateFunctionBuilder::new(
630 crate::codegen::functions::FunctionServiceClient::new(
631 self.client.clone(),
632 self.base_url.clone(),
633 ),
634 function_info,
635 )
636 }
637 pub fn function(
639 &self,
640 catalog_name: impl Into<String>,
641 schema_name: impl Into<String>,
642 function_name: impl Into<String>,
643 ) -> FunctionClient {
644 FunctionClient::new(
645 catalog_name,
646 schema_name,
647 function_name,
648 crate::codegen::functions::FunctionServiceClient::new(
649 self.client.clone(),
650 self.base_url.clone(),
651 ),
652 )
653 }
654 pub fn function_from_full_name(&self, full_name: impl Into<String>) -> FunctionClient {
656 FunctionClient::from_full_name(
657 full_name,
658 crate::codegen::functions::FunctionServiceClient::new(
659 self.client.clone(),
660 self.base_url.clone(),
661 ),
662 )
663 }
664 pub fn list_model_versions(&self, full_name: impl Into<String>) -> ListModelVersionsBuilder {
675 ListModelVersionsBuilder::new(
676 crate::codegen::model_versions::ModelVersionServiceClient::new(
677 self.client.clone(),
678 self.base_url.clone(),
679 ),
680 full_name,
681 )
682 }
683 pub fn create_model_version(
697 &self,
698 model_name: impl Into<String>,
699 catalog_name: impl Into<String>,
700 schema_name: impl Into<String>,
701 source: impl Into<String>,
702 ) -> CreateModelVersionBuilder {
703 CreateModelVersionBuilder::new(
704 crate::codegen::model_versions::ModelVersionServiceClient::new(
705 self.client.clone(),
706 self.base_url.clone(),
707 ),
708 model_name,
709 catalog_name,
710 schema_name,
711 source,
712 )
713 }
714 pub fn get_model_version(
724 &self,
725 full_name: impl Into<String>,
726 version: i64,
727 ) -> GetModelVersionBuilder {
728 GetModelVersionBuilder::new(
729 crate::codegen::model_versions::ModelVersionServiceClient::new(
730 self.client.clone(),
731 self.base_url.clone(),
732 ),
733 full_name,
734 version,
735 )
736 }
737 pub fn update_model_version(
747 &self,
748 full_name: impl Into<String>,
749 version: i64,
750 ) -> UpdateModelVersionBuilder {
751 UpdateModelVersionBuilder::new(
752 crate::codegen::model_versions::ModelVersionServiceClient::new(
753 self.client.clone(),
754 self.base_url.clone(),
755 ),
756 full_name,
757 version,
758 )
759 }
760 pub fn delete_model_version(
772 &self,
773 full_name: impl Into<String>,
774 version: i64,
775 ) -> DeleteModelVersionBuilder {
776 DeleteModelVersionBuilder::new(
777 crate::codegen::model_versions::ModelVersionServiceClient::new(
778 self.client.clone(),
779 self.base_url.clone(),
780 ),
781 full_name,
782 version,
783 )
784 }
785 pub fn finalize_model_version(
796 &self,
797 full_name: impl Into<String>,
798 version: i64,
799 ) -> FinalizeModelVersionBuilder {
800 FinalizeModelVersionBuilder::new(
801 crate::codegen::model_versions::ModelVersionServiceClient::new(
802 self.client.clone(),
803 self.base_url.clone(),
804 ),
805 full_name,
806 version,
807 )
808 }
809 pub fn list_policies(
821 &self,
822 on_securable_type: impl Into<String>,
823 on_securable_fullname: impl Into<String>,
824 ) -> ListPoliciesBuilder {
825 ListPoliciesBuilder::new(
826 crate::codegen::policies::PolicyServiceClient::new(
827 self.client.clone(),
828 self.base_url.clone(),
829 ),
830 on_securable_type,
831 on_securable_fullname,
832 )
833 }
834 pub fn policy(&self, policy_name: impl Into<String>) -> PolicyClient {
836 PolicyClient::new(
837 policy_name,
838 crate::codegen::policies::PolicyServiceClient::new(
839 self.client.clone(),
840 self.base_url.clone(),
841 ),
842 )
843 }
844 pub fn list_providers(&self) -> ListProvidersBuilder {
846 ListProvidersBuilder::new(crate::codegen::providers::ProviderServiceClient::new(
847 self.client.clone(),
848 self.base_url.clone(),
849 ))
850 }
851 pub fn create_provider(
858 &self,
859 name: impl Into<String>,
860 authentication_type: ProviderAuthenticationType,
861 ) -> CreateProviderBuilder {
862 CreateProviderBuilder::new(
863 crate::codegen::providers::ProviderServiceClient::new(
864 self.client.clone(),
865 self.base_url.clone(),
866 ),
867 name,
868 authentication_type,
869 )
870 }
871 pub fn provider(&self, provider_name: impl Into<String>) -> ProviderClient {
873 ProviderClient::new(
874 provider_name,
875 crate::codegen::providers::ProviderServiceClient::new(
876 self.client.clone(),
877 self.base_url.clone(),
878 ),
879 )
880 }
881 pub fn list_recipients(&self) -> ListRecipientsBuilder {
883 ListRecipientsBuilder::new(crate::codegen::recipients::RecipientServiceClient::new(
884 self.client.clone(),
885 self.base_url.clone(),
886 ))
887 }
888 pub fn create_recipient(
896 &self,
897 name: impl Into<String>,
898 authentication_type: AuthenticationType,
899 owner: impl Into<String>,
900 ) -> CreateRecipientBuilder {
901 CreateRecipientBuilder::new(
902 crate::codegen::recipients::RecipientServiceClient::new(
903 self.client.clone(),
904 self.base_url.clone(),
905 ),
906 name,
907 authentication_type,
908 owner,
909 )
910 }
911 pub fn recipient(&self, recipient_name: impl Into<String>) -> RecipientClient {
913 RecipientClient::new(
914 recipient_name,
915 crate::codegen::recipients::RecipientServiceClient::new(
916 self.client.clone(),
917 self.base_url.clone(),
918 ),
919 )
920 }
921 pub fn list_registered_models(&self) -> ListRegisteredModelsBuilder {
929 ListRegisteredModelsBuilder::new(
930 crate::codegen::registered_models::RegisteredModelServiceClient::new(
931 self.client.clone(),
932 self.base_url.clone(),
933 ),
934 )
935 }
936 pub fn create_registered_model(
947 &self,
948 name: impl Into<String>,
949 catalog_name: impl Into<String>,
950 schema_name: impl Into<String>,
951 ) -> CreateRegisteredModelBuilder {
952 CreateRegisteredModelBuilder::new(
953 crate::codegen::registered_models::RegisteredModelServiceClient::new(
954 self.client.clone(),
955 self.base_url.clone(),
956 ),
957 name,
958 catalog_name,
959 schema_name,
960 )
961 }
962 pub fn registered_model(
964 &self,
965 catalog_name: impl Into<String>,
966 schema_name: impl Into<String>,
967 registered_model_name: impl Into<String>,
968 ) -> RegisteredModelClient {
969 RegisteredModelClient::new(
970 catalog_name,
971 schema_name,
972 registered_model_name,
973 crate::codegen::registered_models::RegisteredModelServiceClient::new(
974 self.client.clone(),
975 self.base_url.clone(),
976 ),
977 )
978 }
979 pub fn registered_model_from_full_name(
981 &self,
982 full_name: impl Into<String>,
983 ) -> RegisteredModelClient {
984 RegisteredModelClient::from_full_name(
985 full_name,
986 crate::codegen::registered_models::RegisteredModelServiceClient::new(
987 self.client.clone(),
988 self.base_url.clone(),
989 ),
990 )
991 }
992 pub fn list_schemas(&self, catalog_name: impl Into<String>) -> ListSchemasBuilder {
1001 ListSchemasBuilder::new(
1002 crate::codegen::schemas::SchemaServiceClient::new(
1003 self.client.clone(),
1004 self.base_url.clone(),
1005 ),
1006 catalog_name,
1007 )
1008 }
1009 pub fn create_schema(
1017 &self,
1018 name: impl Into<String>,
1019 catalog_name: impl Into<String>,
1020 ) -> CreateSchemaBuilder {
1021 CreateSchemaBuilder::new(
1022 crate::codegen::schemas::SchemaServiceClient::new(
1023 self.client.clone(),
1024 self.base_url.clone(),
1025 ),
1026 name,
1027 catalog_name,
1028 )
1029 }
1030 pub fn schema(
1032 &self,
1033 catalog_name: impl Into<String>,
1034 schema_name: impl Into<String>,
1035 ) -> SchemaClient {
1036 SchemaClient::new(
1037 catalog_name,
1038 schema_name,
1039 crate::codegen::schemas::SchemaServiceClient::new(
1040 self.client.clone(),
1041 self.base_url.clone(),
1042 ),
1043 )
1044 }
1045 pub fn schema_from_full_name(&self, full_name: impl Into<String>) -> SchemaClient {
1047 SchemaClient::from_full_name(
1048 full_name,
1049 crate::codegen::schemas::SchemaServiceClient::new(
1050 self.client.clone(),
1051 self.base_url.clone(),
1052 ),
1053 )
1054 }
1055 pub fn list_shares(&self) -> ListSharesBuilder {
1057 ListSharesBuilder::new(crate::codegen::shares::ShareServiceClient::new(
1058 self.client.clone(),
1059 self.base_url.clone(),
1060 ))
1061 }
1062 pub fn create_share(&self, name: impl Into<String>) -> CreateShareBuilder {
1068 CreateShareBuilder::new(
1069 crate::codegen::shares::ShareServiceClient::new(
1070 self.client.clone(),
1071 self.base_url.clone(),
1072 ),
1073 name,
1074 )
1075 }
1076 pub fn share(&self, share_name: impl Into<String>) -> ShareClient {
1078 ShareClient::new(
1079 share_name,
1080 crate::codegen::shares::ShareServiceClient::new(
1081 self.client.clone(),
1082 self.base_url.clone(),
1083 ),
1084 )
1085 }
1086 pub fn create_staging_table(
1096 &self,
1097 name: impl Into<String>,
1098 catalog_name: impl Into<String>,
1099 schema_name: impl Into<String>,
1100 ) -> CreateStagingTableBuilder {
1101 CreateStagingTableBuilder::new(
1102 crate::codegen::staging_tables::StagingTableServiceClient::new(
1103 self.client.clone(),
1104 self.base_url.clone(),
1105 ),
1106 name,
1107 catalog_name,
1108 schema_name,
1109 )
1110 }
1111 pub fn staging_table(&self, staging_table_name: impl Into<String>) -> StagingTableClient {
1113 StagingTableClient::new(
1114 staging_table_name,
1115 crate::codegen::staging_tables::StagingTableServiceClient::new(
1116 self.client.clone(),
1117 self.base_url.clone(),
1118 ),
1119 )
1120 }
1121 pub fn list_table_summaries(
1133 &self,
1134 catalog_name: impl Into<String>,
1135 ) -> ListTableSummariesBuilder {
1136 ListTableSummariesBuilder::new(
1137 crate::codegen::tables::TableServiceClient::new(
1138 self.client.clone(),
1139 self.base_url.clone(),
1140 ),
1141 catalog_name,
1142 )
1143 }
1144 pub fn list_tables(
1156 &self,
1157 catalog_name: impl Into<String>,
1158 schema_name: impl Into<String>,
1159 ) -> ListTablesBuilder {
1160 ListTablesBuilder::new(
1161 crate::codegen::tables::TableServiceClient::new(
1162 self.client.clone(),
1163 self.base_url.clone(),
1164 ),
1165 catalog_name,
1166 schema_name,
1167 )
1168 }
1169 pub fn create_table(
1177 &self,
1178 name: impl Into<String>,
1179 schema_name: impl Into<String>,
1180 catalog_name: impl Into<String>,
1181 table_type: TableType,
1182 data_source_format: DataSourceFormat,
1183 ) -> CreateTableBuilder {
1184 CreateTableBuilder::new(
1185 crate::codegen::tables::TableServiceClient::new(
1186 self.client.clone(),
1187 self.base_url.clone(),
1188 ),
1189 name,
1190 schema_name,
1191 catalog_name,
1192 table_type,
1193 data_source_format,
1194 )
1195 }
1196 pub fn table(
1198 &self,
1199 catalog_name: impl Into<String>,
1200 schema_name: impl Into<String>,
1201 table_name: impl Into<String>,
1202 ) -> TableClient {
1203 TableClient::new(
1204 catalog_name,
1205 schema_name,
1206 table_name,
1207 crate::codegen::tables::TableServiceClient::new(
1208 self.client.clone(),
1209 self.base_url.clone(),
1210 ),
1211 )
1212 }
1213 pub fn table_from_full_name(&self, full_name: impl Into<String>) -> TableClient {
1215 TableClient::from_full_name(
1216 full_name,
1217 crate::codegen::tables::TableServiceClient::new(
1218 self.client.clone(),
1219 self.base_url.clone(),
1220 ),
1221 )
1222 }
1223 pub fn list_tag_policies(&self) -> ListTagPoliciesBuilder {
1228 ListTagPoliciesBuilder::new(crate::codegen::tag_policies::TagPolicyServiceClient::new(
1229 self.client.clone(),
1230 self.base_url.clone(),
1231 ))
1232 }
1233 pub fn create_tag_policy(&self, tag_policy: TagPolicy) -> CreateTagPolicyBuilder {
1241 CreateTagPolicyBuilder::new(
1242 crate::codegen::tag_policies::TagPolicyServiceClient::new(
1243 self.client.clone(),
1244 self.base_url.clone(),
1245 ),
1246 tag_policy,
1247 )
1248 }
1249 pub fn tag_policy(&self, tag_policy_name: impl Into<String>) -> TagPolicyClient {
1251 TagPolicyClient::new(
1252 tag_policy_name,
1253 crate::codegen::tag_policies::TagPolicyServiceClient::new(
1254 self.client.clone(),
1255 self.base_url.clone(),
1256 ),
1257 )
1258 }
1259 pub fn generate_temporary_table_credentials(
1268 &self,
1269 table_id: impl Into<String>,
1270 operation: generate_temporary_table_credentials_request::Operation,
1271 ) -> GenerateTemporaryTableCredentialsBuilder {
1272 GenerateTemporaryTableCredentialsBuilder::new(
1273 crate::codegen::temporary_credentials::TemporaryCredentialClient::new(
1274 self.client.clone(),
1275 self.base_url.clone(),
1276 ),
1277 table_id,
1278 operation,
1279 )
1280 }
1281 pub fn generate_temporary_path_credentials(
1288 &self,
1289 url: impl Into<String>,
1290 operation: generate_temporary_path_credentials_request::Operation,
1291 ) -> GenerateTemporaryPathCredentialsBuilder {
1292 GenerateTemporaryPathCredentialsBuilder::new(
1293 crate::codegen::temporary_credentials::TemporaryCredentialClient::new(
1294 self.client.clone(),
1295 self.base_url.clone(),
1296 ),
1297 url,
1298 operation,
1299 )
1300 }
1301 pub fn generate_temporary_volume_credentials(
1314 &self,
1315 volume_id: impl Into<String>,
1316 operation: generate_temporary_volume_credentials_request::Operation,
1317 ) -> GenerateTemporaryVolumeCredentialsBuilder {
1318 GenerateTemporaryVolumeCredentialsBuilder::new(
1319 crate::codegen::temporary_credentials::TemporaryCredentialClient::new(
1320 self.client.clone(),
1321 self.base_url.clone(),
1322 ),
1323 volume_id,
1324 operation,
1325 )
1326 }
1327 pub fn generate_temporary_model_version_credentials(
1344 &self,
1345 catalog_name: impl Into<String>,
1346 schema_name: impl Into<String>,
1347 model_name: impl Into<String>,
1348 version: i64,
1349 operation: generate_temporary_model_version_credentials_request::Operation,
1350 ) -> GenerateTemporaryModelVersionCredentialsBuilder {
1351 GenerateTemporaryModelVersionCredentialsBuilder::new(
1352 crate::codegen::temporary_credentials::TemporaryCredentialClient::new(
1353 self.client.clone(),
1354 self.base_url.clone(),
1355 ),
1356 catalog_name,
1357 schema_name,
1358 model_name,
1359 version,
1360 operation,
1361 )
1362 }
1363 pub fn list_volumes(
1370 &self,
1371 catalog_name: impl Into<String>,
1372 schema_name: impl Into<String>,
1373 ) -> ListVolumesBuilder {
1374 ListVolumesBuilder::new(
1375 crate::codegen::volumes::VolumeServiceClient::new(
1376 self.client.clone(),
1377 self.base_url.clone(),
1378 ),
1379 catalog_name,
1380 schema_name,
1381 )
1382 }
1383 pub fn create_volume(
1394 &self,
1395 catalog_name: impl Into<String>,
1396 schema_name: impl Into<String>,
1397 name: impl Into<String>,
1398 volume_type: VolumeType,
1399 ) -> CreateVolumeBuilder {
1400 CreateVolumeBuilder::new(
1401 crate::codegen::volumes::VolumeServiceClient::new(
1402 self.client.clone(),
1403 self.base_url.clone(),
1404 ),
1405 catalog_name,
1406 schema_name,
1407 name,
1408 volume_type,
1409 )
1410 }
1411 pub fn volume(
1413 &self,
1414 catalog_name: impl Into<String>,
1415 schema_name: impl Into<String>,
1416 volume_name: impl Into<String>,
1417 ) -> VolumeClient {
1418 VolumeClient::new(
1419 catalog_name,
1420 schema_name,
1421 volume_name,
1422 crate::codegen::volumes::VolumeServiceClient::new(
1423 self.client.clone(),
1424 self.base_url.clone(),
1425 ),
1426 )
1427 }
1428 pub fn volume_from_full_name(&self, full_name: impl Into<String>) -> VolumeClient {
1430 VolumeClient::from_full_name(
1431 full_name,
1432 crate::codegen::volumes::VolumeServiceClient::new(
1433 self.client.clone(),
1434 self.base_url.clone(),
1435 ),
1436 )
1437 }
1438}