8#include <nlohmann/json_fwd.hpp>
CatalogTypeEnum parse_catalog_type(const std::string &type_str)
Parse a catalog type string into CatalogTypeEnum.
TableTypeEnum parse_table_type(const std::string &type_str)
Parse a table type string into TableTypeEnum.
std::string table_type_to_string(TableTypeEnum type)
Convert TableTypeEnum to string representation.
std::string catalog_type_to_string(CatalogTypeEnum type)
Convert CatalogTypeEnum to string representation.
CatalogTypeEnum
Enumeration of catalog types.
@ MANAGED_CATALOG
Databricks-managed catalog.
@ SYSTEM_CATALOG
System catalog.
@ EXTERNAL_CATALOG
External catalog (e.g., AWS Glue, Azure)
@ UNKNOWN
Unknown or unrecognized state.
void to_json(nlohmann::json &j, const CreateCatalogRequest &req)
Convert CreateCatalogRequest to JSON.
TableTypeEnum
Enumeration of table types.
@ EXTERNAL
External table.
@ MATERIALIZED_VIEW
Materialized view.
@ STREAMING_TABLE
Streaming table.
Represents a Unity Catalog catalog.
uint64_t created_at
Unix timestamp in milliseconds when created.
std::string owner
Owner of the catalog.
std::optional< std::string > storage_location
Storage location (for managed catalogs)
uint64_t updated_at
Unix timestamp in milliseconds when last updated.
std::string comment
User-provided description.
std::string catalog_type
Type of catalog (MANAGED_CATALOG, etc.)
std::string full_name
Full name of the catalog.
std::optional< std::string > storage_root
Storage root location (for external catalogs)
std::map< std::string, std::string > properties
Catalog properties/metadata.
std::string name
Name of the catalog.
std::string metastore_id
ID of the metastore containing this catalog.
Represents column information.
int position
Ordinal position in table.
bool nullable
Whether column can be null.
std::string type_name
Type name (e.g., INT, STRING)
std::string comment
Column description.
std::string name
Column name.
std::string type_text
Data type as text.
std::optional< std::string > partition_index
Partition index if partitioned.
Configuration for creating a catalog.
std::string comment
User-provided description.
std::map< std::string, std::string > properties
Catalog properties/metadata.
std::string name
Name of the catalog (required)
std::optional< std::string > storage_root
Storage root location.
Configuration for creating a schema.
std::string comment
User-provided description.
std::optional< std::string > storage_root
Storage root location.
std::string catalog_name
Parent catalog name (required)
std::map< std::string, std::string > properties
Schema properties/metadata.
std::string name
Name of the schema (required)
Represents a Unity Catalog schema.
std::map< std::string, std::string > properties
Schema properties/metadata.
std::string name
Name of the schema.
std::string comment
User-provided description.
uint64_t updated_at
Unix timestamp in milliseconds when last updated.
std::optional< std::string > storage_location
Storage location.
std::string metastore_id
ID of the metastore containing this schema.
std::string catalog_name
Parent catalog name.
uint64_t created_at
Unix timestamp in milliseconds when created.
std::string full_name
Full name (catalog.schema)
std::string owner
Owner of the schema.
std::optional< std::string > storage_root
Storage root location.
Represents a Unity Catalog table.
std::optional< std::string > storage_location
Storage location.
std::string data_source_format
Format (DELTA, PARQUET, CSV, etc.)
std::vector< ColumnInfo > columns
Column definitions.
std::string table_type
Type of table (MANAGED, EXTERNAL, VIEW, etc.)
uint64_t updated_at
Unix timestamp in milliseconds when last updated.
std::string schema_name
Parent schema name.
std::string comment
User-provided description.
std::optional< std::string > view_definition
SQL definition for views.
std::map< std::string, std::string > properties
Table properties/metadata.
std::string catalog_name
Parent catalog name.
std::string owner
Owner of the table.
std::string name
Table name.
std::string full_name
Full name (catalog.schema.table)
std::optional< uint64_t > table_id
Unique table identifier.
std::string metastore_id
ID of the metastore containing this table.
uint64_t created_at
Unix timestamp in milliseconds when created.
Configuration for updating a catalog.
std::optional< std::string > new_name
New name for the catalog.
std::map< std::string, std::string > properties
Updated properties.
std::string name
Name of the catalog (required)
std::optional< std::string > comment
Updated description.
std::optional< std::string > owner
New owner.
Configuration for updating a schema.
std::optional< std::string > comment
Updated description.
std::string full_name
Full name (catalog.schema) (required)
std::optional< std::string > new_name
New name for the schema.
std::optional< std::string > owner
New owner.
std::map< std::string, std::string > properties
Updated properties.