public class org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension extends java.lang.Object implements org.finos.legend.engine.language.pure.dsl.generation.extension.ArtifactGenerationExtension
{
private static final com.fasterxml.jackson.databind.ObjectMapper mapper;
private static final org.slf4j.Logger LOGGER;
private static final java.lang.String ROOT_PATH;
private static final java.lang.String FILE_NAME;
private static final java.lang.String LINEAGE_FILE_NAME;
public void <init>()
{
org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension v;
v := @this: org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public org.eclipse.collections.api.list.MutableList group()
{
org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension v;
java.lang.String[] v;
org.eclipse.collections.api.factory.list.MutableListFactory v;
org.eclipse.collections.api.list.MutableList v;
v := @this: org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension;
v = <org.eclipse.collections.impl.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = newarray (java.lang.String)[2];
v[0] = "Function_Activator";
v[1] = "Snowflake";
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList 'with'(java.lang.Object[])>(v);
return v;
}
public java.lang.String getKey()
{
org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension v;
v := @this: org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension;
return "snowflakeApp";
}
public boolean canGenerate(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement)
{
org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement v;
boolean v;
v := @this: org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement;
v = v instanceof org.finos.legend.pure.generated.Root_meta_external_function_activator_snowflakeApp_SnowflakeApp;
return v;
}
public java.util.List generate(org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement, org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel, org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData, java.lang.String)
{
org.eclipse.collections.api.block.function.Function v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.eclipse.collections.api.factory.list.MutableListFactory v;
org.eclipse.collections.api.list.MutableList v;
org.eclipse.collections.api.RichIterable v;
org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v;
boolean v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel v;
org.slf4j.Logger v, v, v, v;
com.fasterxml.jackson.databind.ObjectMapper v;
java.lang.Exception v;
org.finos.legend.engine.language.pure.dsl.generation.extension.Artifact v, v;
org.finos.legend.engine.protocol.snowflakeApp.deployment.SnowflakeAppArtifact v;
org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement v;
org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension v;
v := @this: org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension;
v := @parameter: org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.context.PureModelContextData;
v := @parameter: java.lang.String;
v = <org.eclipse.collections.impl.factory.Lists: org.eclipse.collections.api.factory.list.MutableListFactory mutable>;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.MutableListFactory: org.eclipse.collections.api.list.MutableList empty()>();
v = staticinvoke <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension$lambda_generate_fa6b7b5_1__17: org.eclipse.collections.api.block.function.Function bootstrap$()>();
label:
v = <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: org.slf4j.Logger LOGGER>;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Generating snowflakeApp deploy artifact for \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = staticinvoke <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppGenerator: org.finos.legend.engine.protocol.snowflakeApp.deployment.SnowflakeAppArtifact generateArtifact(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel,org.finos.legend.pure.generated.Root_meta_external_function_activator_snowflakeApp_SnowflakeApp,org.finos.legend.engine.protocol.pure.v.model.context.PureModelContext,org.eclipse.collections.api.block.function.Function)>(v, v, v, v);
v = <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: com.fasterxml.jackson.databind.ObjectMapper mapper>;
v = virtualinvoke v.<com.fasterxml.jackson.databind.ObjectMapper: java.lang.String writeValueAsString(java.lang.Object)>(v);
v = new org.finos.legend.engine.language.pure.dsl.generation.extension.Artifact;
specialinvoke v.<org.finos.legend.engine.language.pure.dsl.generation.extension.Artifact: void <init>(java.lang.String,java.lang.String,java.lang.String)>(v, "snowflakeAppArtifact.json", "json");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: org.eclipse.collections.api.RichIterable _stereotypes()>();
v = staticinvoke <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension$lambda_generate_8c030279_2__18: org.eclipse.collections.api.block.predicate.Predicate bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.collections.api.RichIterable: boolean anySatisfy(org.eclipse.collections.api.block.predicate.Predicate)>(v);
if v != 0 goto label;
v = <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: org.slf4j.Logger LOGGER>;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Generating snowflakeApp lineage artifact for \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
v = staticinvoke <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppGenerator: java.lang.String generateFunctionLineage(org.finos.legend.engine.language.pure.compiler.toPureGraph.PureModel,org.finos.legend.pure.generated.Root_meta_external_function_activator_snowflakeApp_SnowflakeApp,org.finos.legend.engine.protocol.pure.v.model.context.PureModelContext,org.eclipse.collections.api.block.function.Function)>(v, v, v, v);
v = new org.finos.legend.engine.language.pure.dsl.generation.extension.Artifact;
specialinvoke v.<org.finos.legend.engine.language.pure.dsl.generation.extension.Artifact: void <init>(java.lang.String,java.lang.String,java.lang.String)>(v, "snowflakeAppLineageArtifact.json", "json");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: org.slf4j.Logger LOGGER>;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Generated artifacts for \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: org.slf4j.Logger LOGGER>;
v = interfaceinvoke v.<org.finos.legend.pure.m.coreinstance.meta.pure.metamodel.PackageableElement: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Error generating artifact for \u reason: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String)>(v);
label:
return v;
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
com.fasterxml.jackson.databind.ObjectMapper v;
org.slf4j.Logger v;
v = staticinvoke <org.finos.legend.engine.shared.core.ObjectMapperFactory: com.fasterxml.jackson.databind.ObjectMapper getNewStandardObjectMapperWithPureProtocolExtensionSupports()>();
<org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: com.fasterxml.jackson.databind.ObjectMapper mapper> = v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/finos/legend/engine/language/snowflakeApp/generator/SnowflakeAppArtifactGenerationExtension;");
<org.finos.legend.engine.language.snowflakeApp.generator.SnowflakeAppArtifactGenerationExtension: org.slf4j.Logger LOGGER> = v;
return;
}
}