@Beta
public interface Projectable
Modifier and Type | Method and Description |
---|---|
<B extends Behaviour> |
as(java.lang.Class<B> projectionClass)
Returns the specified projection of this entity if such projection
is supported.
|
<B extends Behaviour> |
is(java.lang.Class<B> projectionClass)
Returns true if this entity is capable of being projected as the
specified class.
|
default <B extends Behaviour> |
project(java.lang.Class<B> projectionClass)
Returns the specified projection of this entity if such projection
is supported.
|
<B extends Behaviour> B as(java.lang.Class<B> projectionClass)
B
- type of behaviourprojectionClass
- requested projection classjava.lang.IllegalStateException
- if a driver cannot be foundjava.lang.IllegalArgumentException
- if the projection is not supported<B extends Behaviour> boolean is(java.lang.Class<B> projectionClass)
B
- type of behaviourprojectionClass
- requested projection classdefault <B extends Behaviour> java.util.Optional<B> project(java.lang.Class<B> projectionClass)
B
- type of behaviourprojectionClass
- requested projection class