#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created on Wed Sep 25 08:22:20 2019 @author: tanya """ import os import sys import abc sys.path.append(os.getcwd()) class ParseDbSchema(metaclass=abc.ABCMeta): ''' ''' def __init__(self, schema_paths: [list, str], log_file: str = None): ''' ''' from cdplib.log import Log self._log = Log(name="ParseDbSchema:", log_file=log_file) if isinstance(schema_paths, str): schema_paths = [schema_paths] for schema_path in schema_paths: if not os.path.isfile(schema_path): err = "Schema not found" self._log.error(err) raise FileNotFoundError(err) @abc.abstractmethod def get_fields(self) -> list: ''' ''' return @abc.abstractmethod def get_datetime_fields(self) -> list: ''' ''' return @abc.abstractmethod def get_python_types(self) -> list: ''' ''' return @abc.abstractmethod def get_default_values(self) -> list: ''' ''' return @abc.abstractmethod def get_allowed_values(self) -> list: ''' ''' return