Search in sources :

Example 1 with FieldPolicyBuilder

use of com.thinkbiganalytics.policy.rest.model.FieldPolicyBuilder in project kylo by Teradata.

the class TestJsonPolicies method testJson.

@Test
public void testJson() throws IOException {
    List<com.thinkbiganalytics.policy.rest.model.FieldPolicy> fieldPolicies = new ArrayList<>();
    List<FieldStandardizationRule> standardizationPolicyList = new ArrayList<>();
    List<FieldValidationRule> validationRules = new ArrayList<>();
    DefaultValueStandardizer defaultValueStandardizer = new DefaultValueStandardizer("My Default");
    standardizationPolicyList.add(StandardizationAnnotationTransformer.instance().toUIModel(defaultValueStandardizer));
    DateTimeStandardizer dateTimeStandardizer = new DateTimeStandardizer("MM/DD/YYYY", DateTimeStandardizer.OutputFormats.DATETIME_NOMILLIS);
    standardizationPolicyList.add(StandardizationAnnotationTransformer.instance().toUIModel(dateTimeStandardizer));
    RangeValidator validator = new RangeValidator(10, 20);
    validationRules.add(ValidatorAnnotationTransformer.instance().toUIModel(validator));
    fieldPolicies.add(new FieldPolicyBuilder("field1").addStandardization(standardizationPolicyList).addValidations(validationRules).build());
    ObjectMapper mapper = new ObjectMapper();
    String json = mapper.writeValueAsString(fieldPolicies);
    FieldPoliciesJsonTransformer fieldPolicyTransformer = new FieldPoliciesJsonTransformer(json);
    Map<String, com.thinkbiganalytics.policy.FieldPolicy> policyMap = fieldPolicyTransformer.buildPolicies();
    com.thinkbiganalytics.policy.FieldPolicy field1Policy = policyMap.get("field1");
    Assert.assertEquals(2, field1Policy.getStandardizationPolicies().size());
    Assert.assertEquals(1, field1Policy.getValidators().size());
}
Also used : FieldValidationRule(com.thinkbiganalytics.policy.rest.model.FieldValidationRule) ArrayList(java.util.ArrayList) DefaultValueStandardizer(com.thinkbiganalytics.policy.standardization.DefaultValueStandardizer) FieldPolicyBuilder(com.thinkbiganalytics.policy.rest.model.FieldPolicyBuilder) RangeValidator(com.thinkbiganalytics.policy.validation.RangeValidator) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) FieldStandardizationRule(com.thinkbiganalytics.policy.rest.model.FieldStandardizationRule) DateTimeStandardizer(com.thinkbiganalytics.policy.standardization.DateTimeStandardizer) Test(org.junit.Test)

Aggregations

ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 FieldPolicyBuilder (com.thinkbiganalytics.policy.rest.model.FieldPolicyBuilder)1 FieldStandardizationRule (com.thinkbiganalytics.policy.rest.model.FieldStandardizationRule)1 FieldValidationRule (com.thinkbiganalytics.policy.rest.model.FieldValidationRule)1 DateTimeStandardizer (com.thinkbiganalytics.policy.standardization.DateTimeStandardizer)1 DefaultValueStandardizer (com.thinkbiganalytics.policy.standardization.DefaultValueStandardizer)1 RangeValidator (com.thinkbiganalytics.policy.validation.RangeValidator)1 ArrayList (java.util.ArrayList)1 Test (org.junit.Test)1