Package net.shibboleth.shared.logic
Class ScriptedBiFunction<T,U,V>
java.lang.Object
net.shibboleth.shared.scripting.AbstractScriptEvaluator
net.shibboleth.shared.logic.ScriptedBiFunction<T,U,V>
- Type Parameters:
T- first input typeU- second input typeV- return type
- All Implemented Interfaces:
BiFunction<T,U, V>
A
BiFunction which calls out to a supplied script.- Since:
- 8.2.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionInput types.private final org.slf4j.LoggerClass logger.Fields inherited from class net.shibboleth.shared.scripting.AbstractScriptEvaluator
DEFAULT_ENGINE -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedScriptedBiFunction(EvaluableScript theScript) Constructor.protectedScriptedBiFunction(EvaluableScript theScript, String extraInfo) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionGet the input type to be enforced.static <T,U, V> ScriptedBiFunction<T, U, V> inlineScript(String scriptSource) Factory to createScriptedBiFunctionfrom inline data.static <T,U, V> ScriptedBiFunction<T, U, V> inlineScript(String engineName, String scriptSource) Factory to createScriptedBiFunctionfrom inline data.protected voidprepareContext(ScriptContext scriptContext, Object... input) Pre-process the script context before execution.static <T,U, V> ScriptedBiFunction<T, U, V> resourceScript(String engineName, Resource resource) Factory to createScriptedBiFunctionfrom aResource.static <T,U, V> ScriptedBiFunction<T, U, V> resourceScript(Resource resource) Factory to createScriptedBiFunctionfrom aResource.voidSet the input types to be enforced.voidsetOutputType(Class<?> type) Set the output type to be enforced.voidsetReturnOnError(Object value) Set value to return if an error occurs.Methods inherited from class net.shibboleth.shared.scripting.AbstractScriptEvaluator
evaluate, finalizeContext, getCustomObject, getHideExceptions, getLogPrefix, getOutputType, getReturnOnError, setContextExtenders, setCustomObject, setHideExceptions, setLogPrefixMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.function.BiFunction
andThen
-
Field Details
-
log
@Nonnull private final org.slf4j.Logger logClass logger. -
inputTypes
Input types.
-
-
Constructor Details
-
Method Details
-
getInputTypes
Get the input type to be enforced.- Returns:
- input type
-
setOutputType
Set the output type to be enforced.- Overrides:
setOutputTypein classAbstractScriptEvaluator- Parameters:
type- output type
-
setReturnOnError
Set value to return if an error occurs.- Overrides:
setReturnOnErrorin classAbstractScriptEvaluator- Parameters:
value- value to return
-
apply
- Specified by:
applyin interfaceBiFunction<T,U, V>
-
prepareContext
Pre-process the script context before execution.- Specified by:
prepareContextin classAbstractScriptEvaluator- Parameters:
scriptContext- the script contextinput- the input
-
inlineScript
@Nonnull public static <T,U, ScriptedBiFunction<T,V> U, inlineScriptV> (@Nonnull @NotEmpty @ParameterName(name="engineName") String engineName, @Nonnull @NotEmpty @ParameterName(name="scriptSource") String scriptSource) throws ScriptException, ComponentInitializationException Factory to createScriptedBiFunctionfrom inline data.- Type Parameters:
T- first input typeU- second input typeV- return type- Parameters:
scriptSource- the script, as a stringengineName- the language- Returns:
- the function
- Throws:
ScriptException- if the compile failsComponentInitializationException- if the scripting initialization fails
-
inlineScript
@Nonnull public static <T,U, ScriptedBiFunction<T,V> U, inlineScriptV> (@Nonnull @NotEmpty @ParameterName(name="scriptSource") String scriptSource) throws ScriptException, ComponentInitializationException Factory to createScriptedBiFunctionfrom inline data.- Type Parameters:
T- first input typeU- second input typeV- return type- Parameters:
scriptSource- the script, as a string- Returns:
- the function
- Throws:
ScriptException- if the compile failsComponentInitializationException- if the scripting initialization fails
-