cdm.product.template.meta.ExerciseTermsMeta Maven / Gradle / Ivy
package cdm.product.template.meta;
import cdm.product.template.ExerciseTerms;
import cdm.product.template.validation.ExerciseTermsTypeFormatValidator;
import cdm.product.template.validation.ExerciseTermsValidator;
import cdm.product.template.validation.exists.ExerciseTermsOnlyExistsValidator;
import com.rosetta.model.lib.annotations.RosettaMeta;
import com.rosetta.model.lib.meta.RosettaMetaData;
import com.rosetta.model.lib.qualify.QualifyFunctionFactory;
import com.rosetta.model.lib.qualify.QualifyResult;
import com.rosetta.model.lib.validation.Validator;
import com.rosetta.model.lib.validation.ValidatorFactory;
import com.rosetta.model.lib.validation.ValidatorWithArg;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.function.Function;
/**
* @version 6.0.0-dev.82
*/
@RosettaMeta(model=ExerciseTerms.class)
public class ExerciseTermsMeta implements RosettaMetaData {
@Override
public List> dataRules(ValidatorFactory factory) {
return Arrays.asList(
factory.create(cdm.product.template.validation.datarule.ExerciseTermsExerciseDateExpirationDateChoice.class),
factory.create(cdm.product.template.validation.datarule.ExerciseTermsCommencementAndExpirationDate.class),
factory.create(cdm.product.template.validation.datarule.ExerciseTermsAmericanExercise.class),
factory.create(cdm.product.template.validation.datarule.ExerciseTermsEuropeanExercise.class),
factory.create(cdm.product.template.validation.datarule.ExerciseTermsBermudaExercise.class)
);
}
@Override
public List> getQualifyFunctions(QualifyFunctionFactory factory) {
return Collections.emptyList();
}
@Override
public Validator super ExerciseTerms> validator() {
return new ExerciseTermsValidator();
}
@Override
public Validator super ExerciseTerms> typeFormatValidator() {
return new ExerciseTermsTypeFormatValidator();
}
@Override
public ValidatorWithArg super ExerciseTerms, Set> onlyExistsValidator() {
return new ExerciseTermsOnlyExistsValidator();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy