public class org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification extends org.finos.legend.engine.plan.execution.stores.relational.connection.ds.DataSourceSpecification
{
public static final java.lang.String SNOWFLAKE_ACCOUNT_NAME;
public static final java.lang.String SNOWFLAKE_REGION;
public static final java.lang.String SNOWFLAKE_WAREHOUSE_NAME;
public static final java.lang.String SNOWFLAKE_DATABASE_NAME;
public static final java.lang.String SNOWFLAKE_CLOUD_TYPE;
public static final java.lang.String SNOWFLAKE_QUOTE_IDENTIFIERS;
public static final java.lang.String SNOWFLAKE_ACCOUNT_TYPE_NAME;
public static final java.lang.String SNOWFLAKE_ORGANIZATION_NAME;
public static final java.lang.String SNOWFLAKE_PROXY_HOST;
public static final java.lang.String SNOWFLAKE_PROXY_PORT;
public static final java.lang.String SNOWFLAKE_NON_PROXY_HOSTS;
public static final java.lang.String SNOWFLAKE_USE_PROXY;
public static final java.lang.String SNOWFLAKE_ROLE;
public static final java.lang.String SNOWFLAKE_ENABLE_QUERY_TAGS;
public static final java.lang.String SNOWFLAKE_TEMP_TABLE_DB;
public static final java.lang.String SNOWFLAKE_TEMP_TABLE_SCHEMA;
public void <init>(org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey, org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager, org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy, java.util.Properties)
{
org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager v;
boolean v, v, v, v, v, v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification v;
java.lang.Boolean v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Properties v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeAccountType v, v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey v;
java.lang.Object v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy;
v := @parameter: java.util.Properties;
specialinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.DataSourceSpecification: void <init>(org.finos.legend.engine.plan.execution.stores.relational.connection.ds.DataSourceSpecificationKey,org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager,org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy,java.util.Properties)>(v, v, v, v);
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getWarehouseName()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.lang.String updateSnowflakeIdentifiers(java.lang.String,boolean)>(v, v);
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getDatabaseName()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.lang.String updateSnowflakeIdentifiers(java.lang.String,boolean)>(v, v);
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getRole()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.lang.String updateSnowflakeIdentifiers(java.lang.String,boolean)>(v, v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "role", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getAccountName()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_accountName", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getRegion()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_region", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_warehouseName", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_databaseName", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getCloudType()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_cloudType", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("legend_snowflake_quoteIdentifiers", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getEnableQueryTags()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("enableQueryTags", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getAccountName()>();
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("account", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("warehouse", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("db", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("ocspFailOpen", v);
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeAccountType getAccountType()>();
if v == null goto label;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeAccountType getAccountType()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeAccountType: java.lang.String toString()>();
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "accountType", v);
label:
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getOrganisation()>();
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "organization", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getProxyHost()>();
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "proxyHost", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getProxyPort()>();
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "proxyPort", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getNonProxyHosts()>();
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "nonProxyHosts", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getTempTableDb()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.lang.String updateSnowflakeIdentifiers(java.lang.String,boolean)>(v, v);
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "LEGEND_TEMP_DB", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.String getTempTableSchema()>();
v = virtualinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey: java.lang.Boolean getQuoteIdentifiers()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.lang.String updateSnowflakeIdentifiers(java.lang.String,boolean)>(v, v);
staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void putIfNotEmpty(java.util.Properties,java.lang.String,java.lang.String)>(v, "LEGEND_TEMP_SCHEMA", v);
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
v = virtualinvoke v.<java.util.Properties: java.lang.Object get(java.lang.Object)>("proxyHost");
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
virtualinvoke v.<java.util.Properties: java.lang.Object put(java.lang.Object,java.lang.Object)>("useProxy", v);
return;
}
public void <init>(org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey, org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager, org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy)
{
org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager v;
java.util.Properties v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey v;
org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager;
v := @parameter: org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy;
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
specialinvoke v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: void <init>(org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.SnowflakeDataSourceSpecificationKey,org.finos.legend.engine.plan.execution.stores.relational.connection.driver.DatabaseManager,org.finos.legend.engine.plan.execution.stores.relational.connection.authentication.AuthenticationStrategy,java.util.Properties)>(v, v, v, v);
return;
}
private static void putIfNotEmpty(java.util.Properties, java.lang.String, java.lang.String)
{
java.util.function.Consumer v;
java.util.Properties v;
java.util.Optional v;
java.lang.String v, v;
v := @parameter: java.util.Properties;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
v = staticinvoke <org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification$lambda_putIfNotEmpty_0__1: java.util.function.Consumer bootstrap$(java.util.Properties,java.lang.String,java.lang.String)>(v, v, v);
virtualinvoke v.<java.util.Optional: void ifPresent(java.util.function.Consumer)>(v);
return;
}
public static java.lang.String updateSnowflakeIdentifiers(java.lang.String, boolean)
{
java.lang.String v;
boolean v, v, v;
v := @parameter: java.lang.String;
v := @parameter: boolean;
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("\"");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("\"");
if v != 0 goto label;
label:
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[])>("\"\u0001\"");
label:
return v;
}
public java.util.Properties getConnectionProperties()
{
java.util.Properties v;
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.SnowflakeDataSourceSpecification: java.util.Properties extraDatasourceProperties>;
return v;
}
}