public class StaticPointer<T extends ContractState> extends StatePointer<T>
A class StaticPointer contains a pointer to a specific class StateRef and can be resolved by looking up the class StateRef via
interface ServiceHub. There are a number of things to keep in mind when using class StaticPointers:
The interface ContractState being pointed to may be spent or unspent when the pointer is resolved
The interface ContractState may not be known by the node performing the look-up in which case the resolve method will
throw a exception TransactionResolutionException
public StaticPointer(@NotNull
StateRef pointer,
@NotNull
java.lang.Class<T> type,
boolean isResolved)
A class StaticPointer contains a pointer to a specific class StateRef and can be resolved by looking up the class StateRef via
interface ServiceHub. There are a number of things to keep in mind when using class StaticPointers:
The interface ContractState being pointed to may be spent or unspent when the pointer is resolved
The interface ContractState may not be known by the node performing the look-up in which case the resolve method will
throw a exception TransactionResolutionException
pointer - An identifier for the interface ContractState that this class StatePointer points to.type - Type of the state which is being pointed to.isResolved - Determines whether the state pointer should be resolved to a reference input when used in a transaction.class StaticPointer,
class StateRef,
class StateRef,
interface ServiceHub,
class StaticPointer,
interface ContractState,
interface ContractState,
resolve,
exception TransactionResolutionExceptionpublic StaticPointer(@NotNull
StateRef pointer,
@NotNull
java.lang.Class<T> type)
Allows this class to be evolved through backwards compatibility with version 1 of this class.
pointer - The state reference that this points to.type - The underlying interface LinearState type that this points to.@NotNull public StateAndRef<T> resolve(@NotNull ServiceHub services)
Resolves a class StaticPointer to a class StateAndRef via a class StateRef look-up.
services - a interface ServiceHub implementation is required to resolve the pointer.class StaticPointer,
class StateAndRef,
class StateRef@NotNull public StateAndRef<T> resolve(@NotNull LedgerTransaction ltx)
Resolves a class StatePointer to a class StateAndRef from inside a class LedgerTransaction. The intuition here is that all
of the pointed-to states will be included in the transaction as reference states.
ltx - the class LedgerTransaction containing the pointer and pointed-to states.class StatePointer,
class StateAndRef,
class LedgerTransactionpublic boolean equals(@Nullable
java.lang.Object other)
public int hashCode()
@NotNull public StateRef getPointer()
An identifier for the
interface ContractState that this class StatePointer points to.
interface ContractState,
class StatePointer@NotNull public java.lang.Class<T> getType()
Type of the state which is being pointed to.
public boolean isResolved()
Determines whether the state pointer should be resolved to a reference input when used in a transaction.