public interface  org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension extends java.lang.Object implements org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtension
{
public static java.util.List getExtensions(org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.eclipse.collections.api.list.MutableList v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions v;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext: org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions getCompilerExtensions()>();
v = virtualinvoke v.<org.finos.legend.engine.language.pure.compiler.toPureGraph.extension.CompilerExtensions: java.util.List getExtensions()>();
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList selectInstancesOf(java.util.List,java.lang.Class)>(v, class "Lorg/finos/legend/engine/language/pure/compiler/toPureGraph/IRelationalCompilerExtension;");
return v;
}
public static org.finos.legend.pure.generated.Root_meta_pure_alloy_connections_alloy_specification_DatasourceSpecification process(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.specification.DatasourceSpecification, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.specification.DatasourceSpecification v;
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.specification.DatasourceSpecification;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.specification.DatasourceSpecification: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension: java.lang.Object process(java.lang.Object,java.util.List,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v, "Data Source Specification", v);
return v;
}
public static org.finos.legend.pure.generated.Root_meta_pure_alloy_connections_alloy_authentication_AuthenticationStrategy process(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.authentication.AuthenticationStrategy, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.authentication.AuthenticationStrategy v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.authentication.AuthenticationStrategy;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.authentication.AuthenticationStrategy: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension: java.lang.Object process(java.lang.Object,java.util.List,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v, "Authentication Strategy", v);
return v;
}
public static org.eclipse.collections.api.tuple.Pair process(org.finos.legend.engine.protocol.pure.v.model.packageableElement.connection.Connection, org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.eclipse.collections.api.block.function.Function v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
java.util.function.Supplier v;
org.eclipse.collections.api.list.MutableList v, v;
java.util.List v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.connection.Connection v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.util.Optional v;
java.lang.Object v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.connection.Connection;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_99f54ff_1__263: org.eclipse.collections.api.block.function.Function bootstrap$(org.finos.legend.engine.protocol.pure.v.model.packageableElement.connection.Connection,org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v, v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$nonNull__264: org.eclipse.collections.api.block.predicate.Predicate bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: org.eclipse.collections.api.list.MutableList select(org.eclipse.collections.api.block.predicate.Predicate)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: java.util.Optional getFirstOptional()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_0__265: java.util.function.Supplier bootstrap$(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.postprocessor.PostProcessor,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseThrow(java.util.function.Supplier)>(v);
return v;
}
public static org.finos.legend.pure.generated.Root_meta_relational_runtime_PostProcessorWithParameter process(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.legacy.PostProcessorWithParameter, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.legacy.PostProcessorWithParameter v;
java.lang.Object v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.connection.legacy.PostProcessorWithParameter;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension: java.lang.Object process(java.lang.Object,java.util.List,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v, "Post Processor With Parameter", null);
return v;
}
public static org.finos.legend.pure.m.coreinstance.meta.relational.metamodel.relation.Milestoning process(org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.model.milestoning.Milestoning, java.util.List, org.eclipse.collections.api.multimap.Multimap, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)
{
org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.model.milestoning.Milestoning v;
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
org.eclipse.collections.api.multimap.Multimap v;
java.lang.Object v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.model.milestoning.Milestoning;
v := @parameter: java.util.List;
v := @parameter: org.eclipse.collections.api.multimap.Multimap;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v = v.<org.finos.legend.engine.protocol.pure.v.model.packageableElement.store.relational.model.milestoning.Milestoning: org.finos.legend.engine.protocol.pure.v.model.SourceInformation sourceInformation>;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension: java.lang.Object process(java.lang.Object,java.util.List,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,java.lang.Object,java.lang.String,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v, v, "Milestoning", v);
return v;
}
public static java.lang.Object process(java.lang.Object, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, java.lang.String, org.finos.legend.engine.protocol.pure.v.model.SourceInformation)
{
org.eclipse.collections.api.block.function.Function v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
java.util.function.Supplier v;
org.eclipse.collections.api.list.MutableList v, v;
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.util.Optional v;
java.lang.Object v, v;
java.lang.String v;
v := @parameter: java.lang.Object;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: java.lang.String;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.SourceInformation;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_d1b0393e_1__266: org.eclipse.collections.api.block.function.Function bootstrap$(java.lang.Object,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext)>(v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$nonNull__267: org.eclipse.collections.api.block.predicate.Predicate bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: org.eclipse.collections.api.list.MutableList select(org.eclipse.collections.api.block.predicate.Predicate)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: java.util.Optional getFirstOptional()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_1__268: java.util.function.Supplier bootstrap$(java.lang.String,java.lang.Object,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseThrow(java.util.function.Supplier)>(v);
return v;
}
public static java.lang.Object process(java.lang.Object, java.util.List, org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext, java.lang.Object, java.lang.String, org.finos.legend.engine.protocol.pure.v.model.SourceInformation)
{
org.eclipse.collections.api.block.function.Function v;
org.eclipse.collections.api.block.predicate.Predicate v;
org.finos.legend.engine.protocol.pure.v.model.SourceInformation v;
java.util.function.Supplier v;
org.eclipse.collections.api.list.MutableList v, v;
java.util.List v;
org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext v;
java.util.Optional v;
java.lang.Object v, v, v;
java.lang.String v;
v := @parameter: java.lang.Object;
v := @parameter: java.util.List;
v := @parameter: org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: org.finos.legend.engine.protocol.pure.v.model.SourceInformation;
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_9df395f5_1__269: org.eclipse.collections.api.block.function.Function bootstrap$(java.lang.Object,org.finos.legend.engine.language.pure.compiler.toPureGraph.CompileContext,java.lang.Object)>(v, v, v);
v = staticinvoke <org.eclipse.collections.impl.utility.ListIterate: org.eclipse.collections.api.list.MutableList collect(java.util.List,org.eclipse.collections.api.block.function.Function)>(v, v);
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$nonNull__270: org.eclipse.collections.api.block.predicate.Predicate bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: org.eclipse.collections.api.list.MutableList select(org.eclipse.collections.api.block.predicate.Predicate)>(v);
v = interfaceinvoke v.<org.eclipse.collections.api.list.MutableList: java.util.Optional getFirstOptional()>();
v = staticinvoke <org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension$lambda_process_2__271: java.util.function.Supplier bootstrap$(java.lang.String,java.lang.Object,org.finos.legend.engine.protocol.pure.v.model.SourceInformation)>(v, v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseThrow(java.util.function.Supplier)>(v);
return v;
}
public java.lang.Iterable getExtraProcessors()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.api.factory.list.ImmutableListFactory v;
org.eclipse.collections.api.list.ImmutableList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = <org.eclipse.collections.api.factory.Lists: org.eclipse.collections.api.factory.list.ImmutableListFactory immutable>;
v = interfaceinvoke v.<org.eclipse.collections.api.factory.list.ImmutableListFactory: org.eclipse.collections.api.list.ImmutableList 'with'()>();
return v;
}
public java.util.List getExtraConnectionPostProcessor()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
public java.util.List getExtraLegacyPostProcessors()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
public java.util.List getExtraAuthenticationStrategyProcessors()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
public java.util.List getExtraDataSourceSpecificationProcessors()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
public java.util.List getExtraMilestoningProcessors()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
public java.util.List getFlowKeys()
{
org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension v;
org.eclipse.collections.impl.list.mutable.FastList v;
v := @this: org.finos.legend.engine.language.pure.compiler.toPureGraph.IRelationalCompilerExtension;
v = staticinvoke <org.eclipse.collections.impl.list.mutable.FastList: org.eclipse.collections.impl.list.mutable.FastList newList()>();
return v;
}
}