com.rosetta.test.conditionfunc.model.functions.IsModelPathZField Maven / Gradle / Ivy
package com.rosetta.test.conditionfunc.model.functions;
import com.google.inject.ImplementedBy;
import com.rosetta.model.lib.expression.CardinalityOperator;
import com.rosetta.model.lib.functions.RosettaFunction;
import com.rosetta.model.lib.mapper.MapperS;
import java.util.Collections;
import java.util.List;
import static com.rosetta.model.lib.expression.ExpressionOperators.*;
@ImplementedBy(IsModelPathZField.IsModelPathZFieldDefault.class)
public abstract class IsModelPathZField implements RosettaFunction {
/**
* @param synonymPath
* @param modelPath
* @param conditionValue
* @return result
*/
public Boolean evaluate(String synonymPath, String modelPath, List conditionValue) {
Boolean result = doEvaluate(synonymPath, modelPath, conditionValue);
return result;
}
protected abstract Boolean doEvaluate(String synonymPath, String modelPath, List conditionValue);
public static class IsModelPathZFieldDefault extends IsModelPathZField {
@Override
protected Boolean doEvaluate(String synonymPath, String modelPath, List conditionValue) {
if (conditionValue == null) {
conditionValue = Collections.emptyList();
}
Boolean result = null;
return assignOutput(result, synonymPath, modelPath, conditionValue);
}
protected Boolean assignOutput(Boolean result, String synonymPath, String modelPath, List conditionValue) {
result = areEqual(MapperS.of(modelPath), MapperS.of("Top4->zField"), CardinalityOperator.All).get();
return result;
}
}
}