com.github.aidensuen.mongo.annotation.AggregateProvider Maven / Gradle / Ivy
package com.github.aidensuen.mongo.annotation;
import com.github.aidensuen.mongo.command.OperationType;
import java.lang.annotation.*;
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface AggregateProvider {
String method() default "dynamicCommand";
OperationType operationType() default OperationType.UNKNOWN;
/**
* The name of the input collection to use for the aggreation.
*
* @return
*/
Class> inputType();
/**
* The parametrized type of the returned list, must not be {@literal null}.
*
* @return
*/
Class> outputType();
String options() default "";
}