Skip to content

Commit c4b76e7

Browse files
committed
JobConfiguration type
1 parent 131a2f1 commit c4b76e7

File tree

3 files changed

+34
-6
lines changed

3 files changed

+34
-6
lines changed

python/hsfs/core/deltastreamer_jobconf.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,25 @@
1616
from __future__ import annotations
1717

1818
import json
19+
from typing import Dict, Optional, Union
1920

2021
from hsfs import util
2122
from hsfs.core.job_configuration import JobConfiguration
2223

2324

2425
class DeltaStreamerJobConf:
25-
def __init__(self, options, spark_options, **kwargs):
26+
def __init__(
27+
self,
28+
options,
29+
spark_options: Optional[Union[JobConfiguration, Dict]],
30+
**kwargs
31+
):
2632
self._options = options
27-
self._spark_options = JobConfiguration(**spark_options if spark_options else {}).to_dict()
33+
34+
if isinstance(spark_options, JobConfiguration):
35+
self._spark_options = spark_options
36+
elif isinstance(spark_options, dict):
37+
self._spark_options = JobConfiguration(**spark_options if spark_options else {}).to_dict()
2838

2939
def to_dict(self):
3040
return {

python/hsfs/core/ingestion_job_conf.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,20 +16,28 @@
1616
from __future__ import annotations
1717

1818
import json
19+
from typing import Dict, Optional, Union
1920

2021
from hsfs import util
2122
from hsfs.core.job_configuration import JobConfiguration
2223

2324

2425
class IngestionJobConf:
2526
def __init__(
26-
self, data_format, data_options, write_options, spark_job_configuration
27+
self,
28+
data_format,
29+
data_options,
30+
write_options,
31+
spark_job_configuration: Optional[Union[JobConfiguration, Dict]]
2732
):
2833
self._data_format = data_format
2934
self._data_options = data_options
3035
self._write_options = write_options
3136

32-
self._spark_job_configuration = JobConfiguration(**spark_job_configuration if spark_job_configuration else {}).to_dict(),
37+
if isinstance(spark_job_configuration, JobConfiguration):
38+
self._spark_job_configuration = spark_job_configuration
39+
elif isinstance(spark_job_configuration, dict):
40+
self._spark_job_configuration = JobConfiguration(**spark_job_configuration if spark_job_configuration else {}).to_dict()
3341

3442
@property
3543
def data_format(self):

python/hsfs/core/training_dataset_job_conf.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,28 @@
1616
from __future__ import annotations
1717

1818
import json
19+
from typing import Dict, Optional, Union
1920

2021
from hsfs import util
2122
from hsfs.core.job_configuration import JobConfiguration
2223

2324

2425
class TrainingDatasetJobConf:
25-
def __init__(self, query, overwrite, write_options, spark_job_configuration):
26+
def __init__(
27+
self,
28+
query,
29+
overwrite,
30+
write_options,
31+
spark_job_configuration: Optional[Union[JobConfiguration, Dict]]
32+
):
2633
self._query = query
2734
self._overwrite = overwrite
2835
self._write_options = write_options
2936

30-
self._spark_job_configuration = JobConfiguration(**spark_job_configuration if spark_job_configuration else {}).to_dict(),
37+
if isinstance(spark_job_configuration, JobConfiguration):
38+
self._spark_job_configuration = spark_job_configuration
39+
elif isinstance(spark_job_configuration, dict):
40+
self._spark_job_configuration = JobConfiguration(**spark_job_configuration if spark_job_configuration else {}).to_dict()
3141

3242
@property
3343
def query(self):

0 commit comments

Comments
 (0)