public class org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey extends java.lang.Object implements org.finos.legend.engine.plan.execution.stores.relational.connection.ds.DataSourceSpecificationKey
{
private final java.lang.String awsRegion;
private final java.lang.String s3OutputLocation;
private final java.lang.String databaseName;
public void <init>(java.lang.String, java.lang.String, java.lang.String)
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v, v, v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion> = v;
v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation> = v;
v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName> = v;
return;
}
public java.lang.String getAwsRegion()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
return v;
}
public java.lang.String getS3OutputLocation()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
return v;
}
public java.lang.String getDatabaseName()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
return v;
}
public java.lang.String toString()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v, v, v, v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("AthenaDatasourceSpecificationKey{awsRegion=\'\u0001\', s3OutputLocation=\u, databaseName=\'\u0001\'}");
return v;
}
public java.lang.String shortId()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.String v, v, v, v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("Athena_awsRegion:\u0001_s3OutputLocation:\u0001_db:\u0001");
return v;
}
public boolean equals(java.lang.Object)
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.Object v;
java.lang.String v, v, v, v, v, v;
boolean v, v, v, v, v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v := @parameter: java.lang.Object;
if v != v goto label;
return 1;
label:
v = v instanceof org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
if v != 0 goto label;
return 0;
label:
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
v = staticinvoke <java.util.Objects: boolean equals(java.lang.Object,java.lang.Object)>(v, v);
if v == 0 goto label;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
v = staticinvoke <java.util.Objects: boolean equals(java.lang.Object,java.lang.Object)>(v, v);
if v == 0 goto label;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
v = staticinvoke <java.util.Objects: boolean equals(java.lang.Object,java.lang.Object)>(v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int hashCode()
{
org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey v;
java.lang.Object[] v;
int v;
java.lang.String v, v, v;
v := @this: org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey;
v = newarray (java.lang.Object)[3];
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String awsRegion>;
v[0] = v;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String s3OutputLocation>;
v[1] = v;
v = v.<org.finos.legend.engine.plan.execution.stores.relational.connection.ds.specifications.keys.AthenaDatasourceSpecificationKey: java.lang.String databaseName>;
v[2] = v;
v = staticinvoke <java.util.Objects: int hash(java.lang.Object[])>(v);
return v;
}
}