package sample.model.constraints;
import static java.lang.annotation.ElementType.*;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import java.lang.annotation.*;
import javax.validation.*;
import javax.validation.constraints.*;
/**
* 絶対値の金額を表現する制約注釈。
*/
@Documented
@Constraint(validatedBy = {})
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
@Retention(RUNTIME)
@ReportAsSingleViolation
@Digits(integer = 16, fraction = 4)
@DecimalMin("0.00")
public @interface AbsAmountEmpty {
String message() default "{error.domain.absAmount}";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
@OverridesAttribute(constraint = Digits.class, name = "integer")
int integer() default 16;
@OverridesAttribute(constraint = Digits.class, name = "fraction")
int fraction() default 4;
@OverridesAttribute(constraint = DecimalMin.class, name = "value")
String min() default "0.00";
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
@Retention(RUNTIME)
@Documented
public @interface List {
AbsAmountEmpty[] value();
}
}