package io.ebeaninternal.server.el;
import io.ebean.plugin.ExpressionPath;
import io.ebeaninternal.api.SpiExpressionRequest;
The expression language object that can get values.
This can be used for local sorting and filtering.
/**
* The expression language object that can get values.
* <p>
* This can be used for local sorting and filtering.
* </p>
*/
public interface ElPropertyValue extends ElPropertyDeploy, ExpressionPath {
Return the logical id value expression taking into account embedded id's.
/**
* Return the logical id value expression taking into account embedded id's.
*/
String getAssocIdInValueExpr(boolean not, int size);
Return the logical id in expression taking into account embedded id's.
/**
* Return the logical id in expression taking into account embedded id's.
*/
String getAssocIdInExpr(String prefix);
Return the logical where clause to support "Is empty".
/**
* Return the logical where clause to support "Is empty".
*/
String getAssocIsEmpty(SpiExpressionRequest request, String path);
Return true if this is an ManyToOne or OneToOne associated bean property.
/**
* Return true if this is an ManyToOne or OneToOne associated bean property.
*/
@Override
boolean isAssocId();
Return true if the property is a OneToMany or ManyToMany associated bean property.
/**
* Return true if the property is a OneToMany or ManyToMany associated bean property.
*/
boolean isAssocMany();
Return true if any path of this path contains a Associated One or Many.
/**
* Return true if any path of this path contains a Associated One or Many.
*/
boolean isAssocProperty();
Return true if the property is encrypted via Java.
/**
* Return true if the property is encrypted via Java.
*/
boolean isLocalEncrypted();
Return true if the property is encrypted in the DB.
/**
* Return true if the property is encrypted in the DB.
*/
boolean isDbEncrypted();
Encrypt the input value return the encrypted value.
/**
* Encrypt the input value return the encrypted value.
*/
Object localEncrypt(Object value);
Return the value ensuring objects prior to the top scalar property are
automatically populated.
/**
* Return the value ensuring objects prior to the top scalar property are
* automatically populated.
*/
Object pathGetNested(Object bean);
}