Skip to content

Commit 404c472

Browse files
committed
feat: improve action handling to be functions
1 parent a7391bd commit 404c472

File tree

2 files changed

+428
-12
lines changed

2 files changed

+428
-12
lines changed

src/query_farm_server_base/action_decoders.py

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def deserialize_flight_descriptor(cls: Any, value: Any) -> flight.FlightDescript
4949
raise ValueError(f"Invalid Flight descriptor: {e}") from e
5050

5151

52-
class CreateTableActionParameters(BaseModel):
52+
class CreateTableParameters(BaseModel):
5353
model_config = ConfigDict(arbitrary_types_allowed=True) # for Pydantic v2
5454
catalog_name: str
5555
schema_name: str
@@ -189,6 +189,16 @@ class RemoveFieldParameters(AlterBase):
189189
cascade: bool
190190

191191

192+
class RenameColumnParameters(AlterBase):
193+
old_name: str
194+
new_name: str
195+
196+
197+
class RenameFieldParameters(AlterBase):
198+
column_path: list[str]
199+
new_name: str
200+
201+
192202
class RenameTableParameters(AlterBase):
193203
new_table_name: str
194204

@@ -217,6 +227,10 @@ class TableFunctionFlightInfoParameters(BaseModel):
217227
)
218228

219229

230+
def table_function_flight_info(action: flight.Action) -> TableFunctionFlightInfoParameters:
231+
return unpack_with_model(action, TableFunctionFlightInfoParameters)
232+
233+
220234
def add_column(action: flight.Action) -> AddColumnParameters:
221235
return unpack_with_model(action, AddColumnParameters)
222236

@@ -233,8 +247,8 @@ def change_column_type(action: flight.Action) -> ChangeColumnTypeParameters:
233247
return unpack_with_model(action, ChangeColumnTypeParameters)
234248

235249

236-
def create_table(action: flight.Action) -> CreateTableActionParameters:
237-
return unpack_with_model(action, CreateTableActionParameters)
250+
def create_table(action: flight.Action) -> CreateTableParameters:
251+
return unpack_with_model(action, CreateTableParameters)
238252

239253

240254
def column_statistics(action: flight.Action) -> ColumnStatisticsParameters:
@@ -277,6 +291,14 @@ def remove_field(action: flight.Action) -> RemoveFieldParameters:
277291
return unpack_with_model(action, RemoveFieldParameters)
278292

279293

294+
def rename_column(action: flight.Action) -> RenameColumnParameters:
295+
return unpack_with_model(action, RenameColumnParameters)
296+
297+
298+
def rename_field(action: flight.Action) -> RenameFieldParameters:
299+
return unpack_with_model(action, RenameFieldParameters)
300+
301+
280302
def rename_table(action: flight.Action) -> RenameTableParameters:
281303
return unpack_with_model(action, RenameTableParameters)
282304

0 commit comments

Comments
 (0)