private void processTransformationDictionary(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ List<DerivedField> derivedFields = transformationDictionary.getDerivedFields(); Set<DerivedField> activeDerivedFields = getActiveDerivedFields(new HashSet<>(derivedFields)); derivedFields.retainAll(activeDerivedFields); } }
private void processTransformationDictionary(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ List<DerivedField> derivedFields = transformationDictionary.getDerivedFields(); Set<DerivedField> activeDerivedFields = getActiveDerivedFields(new HashSet<>(derivedFields)); derivedFields.retainAll(activeDerivedFields); } }
@Override public VisitorAction visit(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ this.globalDerivedFields.addAll(transformationDictionary.getDerivedFields()); } return super.visit(transformationDictionary); }
@Override public VisitorAction visit(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ this.globalDerivedFields.addAll(transformationDictionary.getDerivedFields()); } return super.visit(transformationDictionary); }
@Override public VisitorAction visit(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ suppress(transformationDictionary.getDerivedFields()); } return super.visit(transformationDictionary); }
@Override public VisitorAction visit(TransformationDictionary transformationDictionary){ if(transformationDictionary.hasDerivedFields()){ suppress(transformationDictionary.getDerivedFields()); } return super.visit(transformationDictionary); }
@Override public VisitorAction visit(PMML pmml){ DataDictionary dataDictionary = pmml.getDataDictionary(); if(dataDictionary != null && dataDictionary.hasDataFields()){ declare(pmml, dataDictionary.getDataFields()); } TransformationDictionary transformationDictionary = pmml.getTransformationDictionary(); if(transformationDictionary != null && transformationDictionary.hasDerivedFields()){ declare(pmml, transformationDictionary.getDerivedFields()); } return super.visit(pmml); }
@Override public VisitorAction visit(PMML pmml){ DataDictionary dataDictionary = pmml.getDataDictionary(); if(dataDictionary != null && dataDictionary.hasDataFields()){ declare(pmml, dataDictionary.getDataFields()); } TransformationDictionary transformationDictionary = pmml.getTransformationDictionary(); if(transformationDictionary != null && transformationDictionary.hasDerivedFields()){ declare(pmml, transformationDictionary.getDerivedFields()); } return super.visit(pmml); }
@Override public PMMLObject popParent(){ PMMLObject parent = super.popParent(); if(parent instanceof Model){ Model model = (Model)parent; LocalTransformations localTransformations = model.getLocalTransformations(); if(localTransformations != null){ processLocalTransformations(localTransformations); if(!localTransformations.hasDerivedFields()){ model.setLocalTransformations(null); } } } else if(parent instanceof PMML){ PMML pmml = (PMML)parent; TransformationDictionary transformationDictionary = pmml.getTransformationDictionary(); if(transformationDictionary != null){ processTransformationDictionary(transformationDictionary); if(!transformationDictionary.hasDefineFunctions() && !transformationDictionary.hasDerivedFields()){ pmml.setTransformationDictionary(null); } } } return parent; }
@Override public PMMLObject popParent(){ PMMLObject parent = super.popParent(); if(parent instanceof Model){ Model model = (Model)parent; LocalTransformations localTransformations = model.getLocalTransformations(); if(localTransformations != null){ processLocalTransformations(localTransformations); if(!localTransformations.hasDerivedFields()){ model.setLocalTransformations(null); } } } else if(parent instanceof PMML){ PMML pmml = (PMML)parent; TransformationDictionary transformationDictionary = pmml.getTransformationDictionary(); if(transformationDictionary != null){ processTransformationDictionary(transformationDictionary); if(!transformationDictionary.hasDefineFunctions() && !transformationDictionary.hasDerivedFields()){ pmml.setTransformationDictionary(null); } } } return parent; }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getExtensions()); } if ((status == VisitorAction.CONTINUE)&&hasDefineFunctions()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getDefineFunctions()); } if ((status == VisitorAction.CONTINUE)&&hasDerivedFields()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getDerivedFields()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getExtensions()); } if ((status == VisitorAction.CONTINUE)&&hasDefineFunctions()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getDefineFunctions()); } if ((status == VisitorAction.CONTINUE)&&hasDerivedFields()) { status = org.dmg.pmml.PMMLObject.traverse(visitor, getDerivedFields()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
assertTrue(transformationDictionary.hasDerivedFields()); assertFalse(transformationDictionary.hasDerivedFields());
if(transformationDictionary != null && transformationDictionary.hasDerivedFields()){ this.derivedFields = CacheUtil.getValue(transformationDictionary, ModelEvaluator.derivedFieldCache);