Annotation Interface DataMethod
@Retention(RUNTIME)
@Target({METHOD,ANNOTATION_TYPE})
@Internal
@Inherited
public @interface DataMethod
Internal annotation used to configure execution handling for io.micronaut.data.runtime.intercept.DataIntroductionAdvice.
- Since:
- 1.0
- Author:
- graemerocher
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
Describes the operation type. -
Required Element Summary
-
Optional Element Summary
Modifier and TypeOptional ElementDescriptionThe argument that represents the entity for save, update, query by example operations etc.The member that defines the ID for lookup, delete, update by ID.Class<?>
The identifier type for the method being executed.The argument that defines the pageable object.long
An explicit offset (in absence of a pageable).int
An explicit pageSize (in absence of a pageable).io.micronaut.context.annotation.Property[]
The parameter binding defines which method arguments bind to which query parameters.Class<?>
The computed result type.Class<?>
The root entity this method applies to. -
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The member that holds the count query.static final String
Does the query result in a DTO object.static final String
The parameter that references the entity.static final String
The member that holds expandable count query parts.static final String
The member that holds expandable query parts.static final String
The parameter that references the ID.static final String
The ID type.static final String
The member name that holds the interceptor type.static final String
The member name that holds the root entity type.static final String
Does the query contains optimistic lock.static final String
The parameter that holds the offset value.static final String
The parameter that holds the pageSize value.static final String
The member name that holds parameter auto populated property paths.static final String
The member name that holds parameter auto populated property paths.static final String
The member name that holds parameter auto populated property paths.static final String
The member name that holds parameter binding.static final String
The member name that holds parameter binding paths.static final String
Meta member for storing the parameter converters.static final String
Meta member for storing the parameter type defs.static final String
Meta member for storing the parameters.static final String
The query builder to use.static final String
Whether the user is a raw user specified query.static final String
Whether the user is a raw user specified query.static final String
The member name that holds the result type.static final String
The member name that holds the result type.static final String
The member name that holds the root entity type.static final String
The annotation name.
-
Field Details
-
NAME
The annotation name. -
META_MEMBER_EXPANDABLE_QUERY
The member that holds expandable query parts.- See Also:
-
META_MEMBER_EXPANDABLE_COUNT_QUERY
The member that holds expandable count query parts.- See Also:
-
META_MEMBER_COUNT_QUERY
The member that holds the count query.- See Also:
-
META_MEMBER_RESULT_TYPE
The member name that holds the result type.- See Also:
-
META_MEMBER_RESULT_DATA_TYPE
The member name that holds the result type.- See Also:
-
META_MEMBER_ROOT_ENTITY
The member name that holds the root entity type.- See Also:
-
META_MEMBER_INTERCEPTOR
The member name that holds the interceptor type.- See Also:
-
META_MEMBER_PARAMETER_BINDING
The member name that holds parameter binding.- See Also:
-
META_MEMBER_PARAMETER_BINDING_PATHS
The member name that holds parameter binding paths.- See Also:
-
META_MEMBER_PARAMETER_AUTO_POPULATED_PROPERTY_PATHS
The member name that holds parameter auto populated property paths.- See Also:
-
META_MEMBER_PARAMETER_AUTO_POPULATED_PREVIOUS_PROPERTY_PATHS
The member name that holds parameter auto populated property paths.- See Also:
-
META_MEMBER_PARAMETER_AUTO_POPULATED_PREVIOUS_PROPERTY_INDEXES
The member name that holds parameter auto populated property paths.- See Also:
-
META_MEMBER_ID_TYPE
The ID type.- See Also:
-
META_MEMBER_PAGE_SIZE
The parameter that holds the pageSize value.- See Also:
-
META_MEMBER_PAGE_INDEX
The parameter that holds the offset value.- See Also:
-
META_MEMBER_ENTITY
The parameter that references the entity.- See Also:
-
META_MEMBER_ID
The parameter that references the ID.- See Also:
-
META_MEMBER_DTO
Does the query result in a DTO object.- See Also:
-
META_MEMBER_OPTIMISTIC_LOCK
Does the query contains optimistic lock.- See Also:
-
META_MEMBER_QUERY_BUILDER
The query builder to use.- See Also:
-
META_MEMBER_RAW_QUERY
Whether the user is a raw user specified query.- See Also:
-
META_MEMBER_RAW_COUNT_QUERY
Whether the user is a raw user specified query.- See Also:
-
META_MEMBER_PARAMETER_TYPE_DEFS
Meta member for storing the parameter type defs.- See Also:
-
META_MEMBER_PARAMETER_CONVERTERS
Meta member for storing the parameter converters.- See Also:
-
META_MEMBER_PARAMETERS
Meta member for storing the parameters.- See Also:
-
META_MEMBER_OPERATION_TYPE
The member name that holds the root entity type.- See Also:
-
-
Element Details
-
interceptor
Class<? extends DataInterceptor> interceptor- Returns:
- The child interceptor to use for the method execution.
-
-
-
rootEntity
Class<?> rootEntityThe root entity this method applies to.- Returns:
- The root entity
- Default:
- void.class
-
resultType
Class<?> resultTypeThe computed result type. This represents the type that is to be read from the database. For example for aList
this would return the value of the generic type parameterE
. Or for an entity result the return type itself.- Returns:
- The result type
- Default:
- void.class
-
resultDataType
DataType resultDataType- Returns:
- The result data type.
- Default:
- OBJECT
-
idType
Class<?> idTypeThe identifier type for the method being executed.- Returns:
- The ID type
- Default:
- java.io.Serializable.class
-
parameterBinding
io.micronaut.context.annotation.Property[] parameterBindingThe parameter binding defines which method arguments bind to which query parameters. TheProperty.name()
is used to define the query parameter name and theProperty.value()
is used to define method argument name to bind.- Returns:
- The parameter binding.
- Default:
- {}
-
pageable
String pageableThe argument that defines the pageable object.- Returns:
- The pageable.
- Default:
- ""
-
entity
String entityThe argument that represents the entity for save, update, query by example operations etc.- Returns:
- The entity argument
- Default:
- ""
-
id
String idThe member that defines the ID for lookup, delete, update by ID.- Returns:
- The ID
- Default:
- ""
-
pageSize
int pageSizeAn explicit pageSize (in absence of a pageable).- Returns:
- The pageSize
- Default:
- -1
-
pageIndex
long pageIndexAn explicit offset (in absence of a pageable).- Returns:
- The offset
- Default:
- 0L
-
parameters
DataMethodQueryParameter[] parameters- Returns:
- The query parameters
- Default:
- {}
-