Skip to content

Commit 2cc4e66

Browse files
yunjunzLiangJYu
andauthored
warning msg if no orbit file found for zip file (#46)
+ s1_orbit.get_orbit_file_from_list(): print out warning msg if no orbit file found from the given list + s1_orbit.get_orbit_file_from_dir(): search file in orbit_dir with .EOF extension, instead of arbitrary, to provide more meaningful error msg if given a dir with files but w/o any *.EOF file. Co-authored-by: Liang Yu <[email protected]>
1 parent c408ff3 commit 2cc4e66

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

src/s1reader/s1_orbit.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import datetime
2+
import glob
23
import os
4+
import warnings
5+
36

47
# date format used in file names
58
FMT = "%Y%m%dT%H%M%S"
@@ -71,7 +74,7 @@ def get_orbit_file_from_list(zip_path: str, orbit_file_list: list[str]) -> str:
7174

7275
for orbit_file in orbit_file_list:
7376
# check if file validity
74-
if not item_valid(orbit_file, platform_id):
77+
if not item_valid(orbit_file, platform_id):
7578
continue
7679

7780
# get file name and extract state vector start/end time strings
@@ -90,6 +93,10 @@ def get_orbit_file_from_list(zip_path: str, orbit_file_list: list[str]) -> str:
9093
all([t < t_orbit_end for t in t_swath_start_stop]):
9194
return orbit_file
9295

96+
msg = f'No orbit file found for {os.path.basename(zip_path)}!'
97+
msg += f'\nOrbit directory: {os.path.dirname(orbit_file_list[0])}'
98+
warnings.warn(msg)
99+
93100
return ''
94101

95102
def get_orbit_file_from_dir(path: str, orbit_dir: str) -> str:
@@ -117,7 +124,10 @@ def get_orbit_file_from_dir(path: str, orbit_dir: str) -> str:
117124
if not os.path.isdir(orbit_dir):
118125
raise NotADirectoryError(f"{orbit_dir} not found")
119126

120-
orbit_path = get_orbit_file_from_list(
121-
path, [f'{orbit_dir}/{item}' for item in os.listdir(orbit_dir)])
127+
orbit_file_list = glob.glob(os.path.join(orbit_dir, 'S1*.EOF'))
128+
if not orbit_file_list:
129+
raise FileNotFoundError(f'No S1*.EOF file found in directory: {orbit_dir}')
130+
131+
orbit_path = get_orbit_file_from_list(path, orbit_file_list)
122132

123133
return orbit_path

0 commit comments

Comments
 (0)