Class SSSOMTFlattenFunction
- java.lang.Object
-
- org.incenp.obofoundry.sssom.transform.SSSOMTFlattenFunction
-
- All Implemented Interfaces:
IFormatModifierFunction
public class SSSOMTFlattenFunction extends Object implements IFormatModifierFunction
Represents the SSSOM/T modifier function "flatten".Use this function to format a list-typed value into a single string. It accepts up to three arguments, all optiona:
- the separator to insert between each item (defaults to
,); - a marker to insert at the beginning at the list (defaults to the empty string);
- a marker to insert at the end of the list (defaults to the empty string).
For example, to format the list of authors as a bracket-enclosed, space-separated list:
"Authors: %{author_label|flatten(' ', '[', ']')}"
-
-
Constructor Summary
Constructors Constructor Description SSSOMTFlattenFunction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectcall(Object value, List<String> extra)Executes the function.StringgetName()Gets the name by which the function should be called in a placeholder.StringgetSignature()Gets the expected signature of the function.
-
-
-
Method Detail
-
getName
public String getName()
Description copied from interface:IFormatModifierFunctionGets the name by which the function should be called in a placeholder.- Specified by:
getNamein interfaceIFormatModifierFunction- Returns:
- The function name.
-
getSignature
public String getSignature()
Description copied from interface:IFormatModifierFunctionGets the expected signature of the function. This works similarly toISSSOMTFunction.getSignature(), but it only concerns the additional arguments beyond the value of the substituted placeholder to modify (e.g.extra_arg1in the example above).- Specified by:
getSignaturein interfaceIFormatModifierFunction- Returns:
- The function signature.
-
call
public Object call(Object value, List<String> extra)
Description copied from interface:IFormatModifierFunctionExecutes the function.- Specified by:
callin interfaceIFormatModifierFunction- Parameters:
value- The original value this function is supposed to modify. It is guaranteed never to benull, but the exact type will depend on what the substituted placeholder was, and also on what any previous modifier function may have done with it.extra- Additional arguments to the function, if any. If the function declared that it expects some mandatory arguments (through theIFormatModifierFunction.getSignature()method), it is guaranteed the list will contains as many arguments as expected.- Returns:
- The modified value. It may not need be of the same type as the original value (e.g., a function could transform a list value into a string value).
-
-