class FunctionEvaluator {

    public static String evaluateGetPropertyFunction(FunctionPropertyValue functionParam,
            IPaaSTemplate<? extends AbstractInheritableToscaType> basePaaSTemplate, Map<String, PaaSNodeTemplate> builtPaaSTemplates) {
        AbstractPropertyValue propertyValue = processGetPropertyFunction(functionParam, basePaaSTemplate, builtPaaSTemplates);
        if (propertyValue == null) {
            return null;
        } else if (!(propertyValue instanceof PropertyValue)) {
            throw new NotSupportedException("Not a property value " + propertyValue);
        } else {
            return PropertyUtil.serializePropertyValue(propertyValue);
        }
    }

}