package io.ebeaninternal.server.deploy;
import io.ebean.core.type.ScalarType;
import io.ebeaninternal.server.query.STreeProperty;
import io.ebeaninternal.server.query.SqlJoinType;
import java.util.List;
abstract class DynamicPropertyBase implements STreeProperty {
private final String name;
final String fullName;
private final String elPrefix;
final ScalarType<?> scalarType;
DynamicPropertyBase(String name, String fullName, String elPrefix, ScalarType<?> scalarType) {
this.name = name;
this.fullName = fullName;
this.elPrefix = elPrefix;
this.scalarType = scalarType;
}
@Override
public String getName() {
return name;
}
@Override
public String getFullBeanName() {
return fullName;
}
@Override
public boolean isId() {
return false;
}
@Override
public boolean isEmbedded() {
return false;
}
@Override
public boolean isFormula() {
return false;
}
@Override
public String getElPrefix() {
return elPrefix;
}
@Override
public ScalarType<?> getScalarType() {
return scalarType;
}
@Override
public void buildRawSqlSelectChain(String prefix, List<String> selectChain) {
}
@Override
public void loadIgnore(DbReadContext ctx) {
scalarType.loadIgnore(ctx.getDataReader());
}
@Override
public void appendFrom(DbSqlContext ctx, SqlJoinType joinType) {
}
@Override
public String getEncryptKeyAsString() {
return null;
}
}