This repository has been archived by the owner on Sep 18, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
setdefaults.py
73 lines (64 loc) · 2.59 KB
/
setdefaults.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
import argparse
from modules.FEBDefaults import FEBDefaults
from modules.FileHandler import FileHandler
from modules.GeoJSON import GeoJSON
def processDefaults(filePath):
print("\nGetting Defaults from FEB Defaults File")
febDefaults = FEBDefaults(filePath)
return febDefaults.defaults
def processFiles(sourceDir, useSourceLocal, outputDir, useOutputLocal, defaultsArray):
fileHandler = FileHandler()
fileHandler.checkDir(outputDir, useOutputLocal)
fileHandler.deleteAllInSubdir(".geojson", outputDir, useOutputLocal)
fileList = fileHandler.searchForType(".geojson", sourceDir, useSourceLocal)
numFiles = str(len(fileList))
print(f"Found {numFiles} .geojson files in {sourceDir}")
fileCount = 0
for f in fileList:
fileData = fileHandler.splitFolderFile(f, sourceDir)
folder = fileData[0]
fileName = fileData[1].replace(".geojson", "")
defaults = next(
(item for item in defaultsArray if item["fileName"] == fileData[1]), False
)
if defaults:
print(f"[{str(fileCount + 1)}/{numFiles}] Processing {fileName}.geojson")
GeoJSON(sourceDir, outputDir, fileName, defaults["default"])
fileCount += 1
print("\n>>>>> Defaults are now set. Files located in " + outputDir + "<<<<<\n")
def main():
# Set up Defaults
SOURCE_DIR = "feb_source"
OUTPUT_DIR = "output"
FEB_DEFAULTS = "vNAS_Defaults.txt"
# Set up Argmument Handling
parser = argparse.ArgumentParser(description="FEB-DefaultSetter")
parser.add_argument(
"--sourcedir", type=str, help="The path to the source directory."
)
parser.add_argument(
"--outputdir", type=str, help="The path to the output directory."
)
parser.add_argument(
"--defaultsfile", type=str, help="The filename of the FEB Defaults File."
)
args = parser.parse_args()
sourceDir = SOURCE_DIR
useSourceLocal = True
outputDir = OUTPUT_DIR
useOutputLocal = True
febDefaults = "./" + sourceDir + "/" + FEB_DEFAULTS
if args.sourcedir != None:
sourceDir = args.sourcedir
useSourceLocal = False
if args.outputdir != None:
outputDir = args.outputdir
useOutputLocal = False
febDefaults = args.defaultsfile if args.defaultsfile != None else febDefaults
print("\nInitializing DefaultSetter")
# Read the defaults from the FEB List
defaultsArray = processDefaults(febDefaults)
# Process the files from the FEB List
processFiles(sourceDir, useSourceLocal, outputDir, useOutputLocal, defaultsArray)
if __name__ == "__main__":
main()