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 StaticPointer
s:
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 StaticPointer.resolve
method will
throw a exception TransactionResolutionException
StatePointer.Companion
Companion
Constructor and Description |
---|
StaticPointer(StateRef pointer,
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 StaticPointer s: |
StaticPointer(StateRef pointer,
java.lang.Class<T> type)
Allows this class to be evolved through backwards compatibility with version 1 of this class.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object other) |
StateRef |
getPointer()
An identifier for the
|
java.lang.Class<T> |
getType()
Type of the state which is being pointed to.
|
int |
hashCode() |
boolean |
isResolved()
Determines whether the state pointer should be resolved to a reference input when used in a transaction.
|
StateAndRef<T> |
resolve(ServiceHub services)
|
StateAndRef<T> |
resolve(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. |
getPointer, getType, isResolved, resolve, resolve
public StaticPointer(StateRef pointer, 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 StaticPointer
s:
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 StaticPointer.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
,
StaticPointer.resolve
,
exception TransactionResolutionException
public StaticPointer(StateRef pointer, 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.public StateAndRef<T> resolve(ServiceHub services)
Resolves a class StaticPointer
to a class StateAndRef
via a class StateRef
look-up.
class StaticPointer
,
class StateAndRef
,
class StateRef
public StateAndRef<T> resolve(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 StatePointer.getPointer
and pointed-to states.class StatePointer
,
class StateAndRef
,
class LedgerTransaction
public boolean equals(java.lang.Object other)
public int hashCode()
public StateRef getPointer()
An identifier for the
interface ContractState
that this class StatePointer
points to.
interface ContractState
,
class StatePointer
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.