Skip to content

Commit 7cb49da

Browse files
authored
Merge pull request #39 from ssl-hep/fix/ds_type_resolver_int
Adding int as input type to ds_type_resolver
2 parents 2df9853 + 78c1f77 commit 7cb49da

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

servicex_analysis_utils/dataset_resolver.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,14 @@
3333

3434

3535
def ds_type_resolver(
36-
ds_name: Union[str, list[str]],
36+
ds_name: Union[str, list[str], int],
3737
) -> Union[dataset.FileList, dataset.Rucio, dataset.XRootD, dataset.CERNOpenData]:
3838
"""Determine the type of dataset based on the input
3939
string and then return the ServiceX dataset object.
4040
4141
Args:
42-
ds_name (str): Name of the dataset to fetch.
42+
ds_name (str, int, list): Name of the dataset to fetch. Can be a URL, Rucio DID,
43+
CERN Open Data ID (as str or int), EOS path, or list of files.
4344
4445
Returns:
4546
dataset: The dataset object
@@ -71,6 +72,9 @@ def find_scope(name):
7172
if isinstance(ds_name, list):
7273
return dataset.FileList(ds_name)
7374

75+
elif isinstance(ds_name, int):
76+
return dataset.CERNOpenData(ds_name)
77+
7478
elif re.match(r"^https?://", ds_name):
7579
url = ds_name
7680

tests/test_dataset_resolver.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
("test:data", dataset.Rucio),
3838
("rucio://test:test", dataset.Rucio),
3939
("123", dataset.CERNOpenData),
40+
(123, dataset.CERNOpenData),
4041
("root://eosatlas.cern.ch//eos/", dataset.FileList),
4142
("root://eosatlas.cern.ch//eos/*", dataset.XRootD),
4243
(["root://eosatlas.cern.ch//eos/", "https://test.com"], dataset.FileList),

0 commit comments

Comments
 (0)