Exemplo n.º 1
0
def output_settings(project_root, schema, generator_name, data_models, core_data, project_name):
    settings_filename = project_root + os.sep + ".signalsconfig"
    progress("Writing settings to {}".format(settings_filename))
    keys = ["schema", "generator", "data_models", "core_data", "project_name"]
    values = [schema, generator_name, data_models, core_data, project_name]

    with open(settings_filename, "w") as settings_file:
        for (key, val) in zip(keys, values):
            settings_file.write("{}={}\n".format(key, val))
Exemplo n.º 2
0
def output_settings(project_root, schema, generator_name, data_models,
                    core_data, project_name):
    settings_filename = project_root + os.sep + ".signalsconfig"
    progress("Writing settings to {}".format(settings_filename))
    keys = ["schema", "generator", "data_models", "core_data", "project_name"]
    values = [schema, generator_name, data_models, core_data, project_name]

    with open(settings_filename, "w") as settings_file:
        for (key, val) in zip(keys, values):
            settings_file.write("{}={}\n".format(key, val))
Exemplo n.º 3
0
    def __init__(self, schema_path):
        self.data_objects = {}
        self.urls = []
        self.schema_path = schema_path

        progress("Parsing your schema file")
        with open(schema_path, "r") as schema_file:
            schema_json = json.loads(schema_file.read())
            self.create_objects(schema_json["objects"])
            self.create_apis(schema_json["urls"])
            self.validate_apis_and_objects()
            self.add_relationship_objects()
Exemplo n.º 4
0
    def __init__(self, schema_path):
        self.data_objects = {}
        self.urls = []
        self.schema_path = schema_path

        progress("Parsing your schema file")
        with open(schema_path, "r") as schema_file:
            schema_json = json.loads(schema_file.read())
            self.create_objects(schema_json["objects"])
            self.create_apis(schema_json["urls"])
            self.validate_apis_and_objects()
            self.add_relationship_objects()
Exemplo n.º 5
0
def run_signals(schema, generator_name, data_models, core_data, check_xcode, project_name, save):

    schema = Schema(schema)

    generator = generators[generator_name](generator_name, schema, data_models, core_data, check_xcode, project_name)
    try:
        generator.process()
        if save:
            save_settings([data_models, core_data], schema, generator_name, data_models,
                          core_data, project_name)
    except SignalsError as e:
        print(str(e))
    else:
        progress('Finished generating your files!')
    finally:
        generator.clear_generated_code_files()
Exemplo n.º 6
0
Arquivo: main.py Projeto: yeti/signals
def run_signals(schema, generator_name, data_models, core_data, check_xcode,
                project_name, save):

    schema = Schema(schema)

    generator = generators[generator_name](generator_name, schema, data_models,
                                           core_data, check_xcode,
                                           project_name)
    try:
        generator.process()
        if save:
            save_settings([data_models, core_data], schema, generator_name,
                          data_models, core_data, project_name)
    except SignalsError as e:
        print(str(e))
    else:
        progress('Finished generating your files!')
    finally:
        generator.clear_generated_code_files()
Exemplo n.º 7
0
    def process(self):
        if self.core_data_path is not None:
            if self.check_xcode and self.is_xcode_running():
                raise SignalsError(
                    "Must quit Xcode before writing to core data")
            progress("Creating core data file")
            write_xml_to_file(self.core_data_path, self.schema.data_objects)

        if self.__class__ == ObjectiveCGenerator:
            progress('Preparing to generate Objective-C templates')
            template_to_generate = ObjectiveCTemplate
        else:
            progress('Preparing to generate Swift templates')
            template_to_generate = SwiftTemplate

        progress("Creating data model file")
        template_to_generate(self.project_name, self.schema,
                             self.data_models_path, self.jinja2_environment,
                             BaseGenerator.BUILD_DIR).process()

        self.check_setup_called()