public final class PreGetContext
extends java.lang.Object
CallbackContext
implementation that is specific to intercepted get() operations.
Methods annotated with PreGet
that receive instances of this class may modify the result
of the get() operation by calling setResultForCurrentElement(Entity)
. Keys that receive
results via this method will not be fetched from the datastore. This is an effective way to
inject cached results.Modifier and Type | Method and Description |
---|---|
T |
getCurrentElement() |
int |
getCurrentIndex() |
Transaction |
getCurrentTransaction() |
java.util.List<T> |
getElements() |
void |
setResultForCurrentElement(Entity entity)
Set the
Entity that will be associated with the Key returned by getCurrentElement() in the result of the get() operation. |
java.lang.String |
toString() |
public void setResultForCurrentElement(Entity entity)
Entity
that will be associated with the Key
returned by getCurrentElement()
in the result of the get() operation. This will prevent the get()
operation from fetching the Entity from the datastore. This is an effective way to inject
cached results.entity
- The entity to provide as the result for the current element.java.lang.IllegalArgumentException
- If the key of the provided entity is not equal to the key
returned by getCurrentElement()
.public java.util.List<T> getElements()
getElements
in interface CallbackContext<T>
public Transaction getCurrentTransaction()
getCurrentTransaction
in interface CallbackContext<T>
null
if there is no current transaction.public int getCurrentIndex()
getCurrentIndex
in interface CallbackContext<T>
CallbackContext.getElements()
of the element for which the callback
has been invoked.public T getCurrentElement()
getCurrentElement
in interface CallbackContext<T>
getElements().getCurrentIndex()
.public java.lang.String toString()
toString
in class java.lang.Object