mirror of
https://github.com/2martens/uni.git
synced 2026-05-06 11:26:25 +02:00
[OE-Drucken] Started implementation of config parser
Signed-off-by: Jim Martens <github@2martens.de>
This commit is contained in:
30
oe/Drucken/oeprint/config.py
Normal file
30
oe/Drucken/oeprint/config.py
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
"""config.py: Provides functions to read the config"""
|
||||||
|
|
||||||
|
__author__ = 'Jim Martens'
|
||||||
|
|
||||||
|
import json
|
||||||
|
|
||||||
|
|
||||||
|
class Config:
|
||||||
|
def __init__(self, config_file):
|
||||||
|
self.config_file = config_file
|
||||||
|
self.config_data = self.load_json_file()
|
||||||
|
|
||||||
|
def load_build(self, build):
|
||||||
|
"""
|
||||||
|
Loads the data of a particular build
|
||||||
|
:type build: str
|
||||||
|
:rtype: object
|
||||||
|
"""
|
||||||
|
build_data = self.config_data[build]
|
||||||
|
return build_data
|
||||||
|
|
||||||
|
def load_json_file(self):
|
||||||
|
"""
|
||||||
|
Loads the JSON config file
|
||||||
|
:type self: oeprint.config.Config
|
||||||
|
:rtype : object
|
||||||
|
"""
|
||||||
|
file = open(self.config_file, 'r', encoding='utf-8')
|
||||||
|
json_data = json.load(file)
|
||||||
|
return json_data
|
||||||
@ -1,6 +1,13 @@
|
|||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
|
|
||||||
|
"""oeprint.py: The main file of the print tool"""
|
||||||
|
|
||||||
|
__author__ = 'Jim Martens'
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
|
|
||||||
|
from config import Config
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""Main function for oeprint"""
|
"""Main function for oeprint"""
|
||||||
@ -9,6 +16,8 @@ def main():
|
|||||||
parser.add_argument('prints', metavar='numberOfPrints', type=int, help='how often the build is printed')
|
parser.add_argument('prints', metavar='numberOfPrints', type=int, help='how often the build is printed')
|
||||||
parser.add_argument('--printer', dest='printer', help='a valid printer name like d116_sw', default='d116_sw')
|
parser.add_argument('--printer', dest='printer', help='a valid printer name like d116_sw', default='d116_sw')
|
||||||
arguments = parser.parse_args()
|
arguments = parser.parse_args()
|
||||||
|
config = Config()
|
||||||
|
build_data = config.load_build(arguments.build)
|
||||||
# TODO add actual functionality
|
# TODO add actual functionality
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
|||||||
Reference in New Issue
Block a user