|
13 | 13 | import time
|
14 | 14 | import warnings
|
15 | 15 | from pathlib import Path
|
16 |
| -from typing import Any, Callable, Dict, Iterable, List, Tuple, Union, Sequence |
| 16 | +from typing import Any, Callable, Dict, Iterable, List, Tuple, Union, Sequence, Optional |
17 | 17 |
|
18 | 18 | import geopandas as gpd
|
19 | 19 | import numpy as np
|
@@ -1187,51 +1187,34 @@ def add_dimension(args: ProcessArgs, env: EvalEnv) -> DriverDataCube:
|
1187 | 1187 |
|
1188 | 1188 |
|
1189 | 1189 | @process
|
1190 |
| -def drop_dimension(args: dict, env: EvalEnv) -> DriverDataCube: |
1191 |
| - data_cube = extract_arg(args, 'data') |
1192 |
| - if not isinstance(data_cube, DriverDataCube): |
1193 |
| - raise ProcessParameterInvalidException( |
1194 |
| - parameter="data", process="drop_dimension", |
1195 |
| - reason=f"Invalid data type {type(data_cube)!r} expected raster-cube." |
1196 |
| - ) |
1197 |
| - return data_cube.drop_dimension(name=extract_arg(args, 'name')) |
| 1190 | +def drop_dimension(args: ProcessArgs, env: EvalEnv) -> DriverDataCube: |
| 1191 | + cube: DriverDataCube = args.get_required("data", expected_type=DriverDataCube) |
| 1192 | + name: str = args.get_required("name", expected_type=str) |
| 1193 | + return cube.drop_dimension(name=name) |
1198 | 1194 |
|
1199 | 1195 |
|
1200 | 1196 | @process
|
1201 |
| -def dimension_labels(args: dict, env: EvalEnv) -> DriverDataCube: |
1202 |
| - data_cube = extract_arg(args, 'data') |
1203 |
| - if not isinstance(data_cube, DriverDataCube): |
1204 |
| - raise ProcessParameterInvalidException( |
1205 |
| - parameter="data", process="dimension_labels", |
1206 |
| - reason=f"Invalid data type {type(data_cube)!r} expected raster-cube." |
1207 |
| - ) |
1208 |
| - return data_cube.dimension_labels(dimension=extract_arg(args, 'dimension')) |
| 1197 | +def dimension_labels(args: ProcessArgs, env: EvalEnv) -> List[str]: |
| 1198 | + cube: DriverDataCube = args.get_required("data", expected_type=DriverDataCube) |
| 1199 | + dimension: str = args.get_required("dimension", expected_type=str) |
| 1200 | + return cube.dimension_labels(dimension=dimension) |
1209 | 1201 |
|
1210 | 1202 |
|
1211 | 1203 | @process
|
1212 |
| -def rename_dimension(args: dict, env: EvalEnv) -> DriverDataCube: |
1213 |
| - data_cube = extract_arg(args, 'data') |
1214 |
| - if not isinstance(data_cube, DriverDataCube): |
1215 |
| - raise ProcessParameterInvalidException( |
1216 |
| - parameter="data", process="rename_dimension", |
1217 |
| - reason=f"Invalid data type {type(data_cube)!r} expected raster-cube." |
1218 |
| - ) |
1219 |
| - return data_cube.rename_dimension(source=extract_arg(args, 'source'),target=extract_arg(args, 'target')) |
| 1204 | +def rename_dimension(args: ProcessArgs, env: EvalEnv) -> DriverDataCube: |
| 1205 | + cube: DriverDataCube = args.get_required("data", expected_type=DriverDataCube) |
| 1206 | + source: str = args.get_required("source", expected_type=str) |
| 1207 | + target: str = args.get_required("target", expected_type=str) |
| 1208 | + return cube.rename_dimension(source=source, target=target) |
1220 | 1209 |
|
1221 | 1210 |
|
1222 | 1211 | @process
|
1223 |
| -def rename_labels(args: dict, env: EvalEnv) -> DriverDataCube: |
1224 |
| - data_cube = extract_arg(args, 'data') |
1225 |
| - if not isinstance(data_cube, DriverDataCube): |
1226 |
| - raise ProcessParameterInvalidException( |
1227 |
| - parameter="data", process="rename_labels", |
1228 |
| - reason=f"Invalid data type {type(data_cube)!r} expected raster-cube." |
1229 |
| - ) |
1230 |
| - return data_cube.rename_labels( |
1231 |
| - dimension=extract_arg(args, 'dimension'), |
1232 |
| - target=extract_arg(args, 'target'), |
1233 |
| - source=args.get('source',[]) |
1234 |
| - ) |
| 1212 | +def rename_labels(args: ProcessArgs, env: EvalEnv) -> DriverDataCube: |
| 1213 | + cube: DriverDataCube = args.get_required("data", expected_type=DriverDataCube) |
| 1214 | + dimension: str = args.get_required("dimension", expected_type=str) |
| 1215 | + target: List = args.get_required("target", expected_type=list) |
| 1216 | + source: Optional[list] = args.get_optional("source", default=None, expected_type=list) |
| 1217 | + return cube.rename_labels(dimension=dimension, target=target, source=source) |
1235 | 1218 |
|
1236 | 1219 |
|
1237 | 1220 | @process
|
|
0 commit comments