<dependency>
<groupId>com.example</groupId>
<artifactId>parameter-validation-utils</artifactId>
<version>1.0.0</version>
</dependency>
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ValidateParameters {
String[] requiredParameters() default {};
int[] rangeParameters() default {};
}
public class ExampleClass {
@ValidateParameters(requiredParameters = {"param1"}, rangeParameters = {1, 10})
public void exampleMethod(int param1, String param2) {
}
}
ExampleClass exampleClass = new ExampleClass();
try {
exampleClass.exampleMethod(5, "test");
} catch (ParameterValidationException e) {
}