Search in sources :

Example 1 with Root_meta_pure_generation_metamodel_GenerationOutput

use of org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput in project legend-engine by finos.

the class MorphirGenerationService method exec.

private Response exec(MorphirGenerationConfig morphirGenerationConfig, Function0<PureModel> pureModelFunc, boolean interactive, MutableList<CommonProfile> pm) {
    try {
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_MORPHIR_INTERACTIVE_START : LoggingEventType.GENERATE_MORPHIR_START).toString());
        PureModel pureModel = pureModelFunc.value();
        RichIterable<? extends Root_meta_pure_generation_metamodel_GenerationOutput> output = core_external_language_morphir_integration.Root_meta_external_language_morphir_generation_generateMorphirIRFromPureWithScope_MorphirConfig_1__GenerationOutput_MANY_(morphirGenerationConfig.process(pureModel), pureModel.getExecutionSupport());
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_MORPHIR_INTERACTIVE_STOP : LoggingEventType.GENERATE_MORPHIR_STOP).toString());
        return ManageConstantResult.manageResult(pm, output.collect(v -> new GenerationOutput(v._content(), v._fileName(), v._format())).toList());
    } catch (Exception ex) {
        return ExceptionTool.exceptionManager(ex, interactive ? LoggingEventType.GENERATE_MORPHIR_INTERACTIVE_ERROR : LoggingEventType.GENERATE_MORPHIR_ERROR, pm);
    }
}
Also used : LogInfo(org.finos.legend.engine.shared.core.operational.logs.LogInfo) PureModel(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel) GenerationOutput(org.finos.legend.engine.external.shared.format.generations.GenerationOutput) Root_meta_pure_generation_metamodel_GenerationOutput(org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput)

Example 2 with Root_meta_pure_generation_metamodel_GenerationOutput

use of org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput in project legend-engine by finos.

the class AvroGenerationService method exec.

private Response exec(AvroGenerationConfig avroConfig, Function0<PureModel> pureModelFunc, boolean interactive, MutableList<CommonProfile> pm) {
    try {
        long start = System.currentTimeMillis();
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_AVRO_CODE_INTERACTIVE_START : LoggingEventType.GENERATE_AVRO_CODE_START).toString());
        PureModel pureModel = pureModelFunc.value();
        RichIterable<? extends Root_meta_pure_generation_metamodel_GenerationOutput> output = core_external_format_avro_tramsformation_avroSchemaGenerator.Root_meta_external_format_avro_generation_generateAvroFromPureWithScope_AvroConfig_1__AvroOutput_MANY_(avroConfig.process(pureModel), pureModel.getExecutionSupport());
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_AVRO_CODE_INTERACTIVE_STOP : LoggingEventType.GENERATE_AVRO_CODE_STOP, (double) System.currentTimeMillis() - start).toString());
        return ManageConstantResult.manageResult(pm, output.collect(v -> new GenerationOutput(v._content(), v._fileName(), v._format())).toList());
    } catch (Exception ex) {
        return ExceptionTool.exceptionManager(ex, interactive ? LoggingEventType.GENERATE_AVRO_CODE_INTERACTIVE_ERROR : LoggingEventType.GENERATE_AVRO_CODE_ERROR, pm);
    }
}
Also used : LogInfo(org.finos.legend.engine.shared.core.operational.logs.LogInfo) PureModel(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel) GenerationOutput(org.finos.legend.engine.external.shared.format.generations.GenerationOutput) Root_meta_pure_generation_metamodel_GenerationOutput(org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput)

Example 3 with Root_meta_pure_generation_metamodel_GenerationOutput

use of org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput in project legend-sdlc by finos.

the class FileGenerator method transform.

private List<? extends Root_meta_pure_generation_metamodel_GenerationOutput> transform() {
    GenerationExtension extension = this.extensions.get(fileGeneration.type).getFirst();
    Assert.assertTrue(extension != null, () -> "Can't find a handler for the file generation type '" + fileGeneration.type.toLowerCase() + "'");
    List<Root_meta_pure_generation_metamodel_GenerationOutput> outputs = extension.generateFromElement(fileGeneration, pureModel.getContext());
    Assert.assertTrue(outputs != null, () -> "No generator found for file generation for file type '" + fileGeneration.type.toLowerCase() + "'");
    return outputs;
}
Also used : Root_meta_pure_generation_metamodel_GenerationOutput(org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput) GenerationExtension(org.finos.legend.engine.external.shared.format.extension.GenerationExtension)

Example 4 with Root_meta_pure_generation_metamodel_GenerationOutput

use of org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput in project legend-engine by finos.

the class RosettaGenerationService method exec.

private Response exec(RosettaGenerationConfig rosettaConfig, Function0<PureModel> pureModelFunc, boolean interactive, MutableList<CommonProfile> pm) {
    try {
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_ROSETTA_INTERACTIVE_START : LoggingEventType.GENERATE_ROSETTA_START).toString());
        PureModel pureModel = pureModelFunc.value();
        RichIterable<? extends Root_meta_pure_generation_metamodel_GenerationOutput> output = core_external_format_rosetta_transformation_entry.Root_meta_external_format_rosetta_generation_generateRosettaFromPureWithScope_RosettaConfig_1__GenerationOutput_MANY_(rosettaConfig.process(pureModel), pureModel.getExecutionSupport());
        LOGGER.info(new LogInfo(pm, interactive ? LoggingEventType.GENERATE_ROSETTA_INTERACTIVE_STOP : LoggingEventType.GENERATE_ROSETTA_STOP).toString());
        return ManageConstantResult.manageResult(pm, output.collect(v -> new GenerationOutput(v._content(), v._fileName(), v._format())).toList());
    } catch (Exception ex) {
        return ExceptionTool.exceptionManager(ex, interactive ? LoggingEventType.GENERATE_ROSETTA_INTERACTIVE_ERROR : LoggingEventType.GENERATE_ROSETTA_ERROR, pm);
    }
}
Also used : LogInfo(org.finos.legend.engine.shared.core.operational.logs.LogInfo) PureModel(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel) GenerationOutput(org.finos.legend.engine.external.shared.format.generations.GenerationOutput) Root_meta_pure_generation_metamodel_GenerationOutput(org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput)

Aggregations

Root_meta_pure_generation_metamodel_GenerationOutput (org.finos.legend.pure.generated.Root_meta_pure_generation_metamodel_GenerationOutput)4 GenerationOutput (org.finos.legend.engine.external.shared.format.generations.GenerationOutput)3 PureModel (org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel)3 LogInfo (org.finos.legend.engine.shared.core.operational.logs.LogInfo)3 GenerationExtension (org.finos.legend.engine.external.shared.format.extension.GenerationExtension)1