public class PipeBindings extends Object
Modifier and Type | Field and Description |
---|---|
static String |
CACONFIG_BINDING |
protected static Pattern |
CONDITIONAL_STRING |
static String |
FALSE_BINDING |
protected static String |
IF_PREFIX |
static String |
INJECTED_SCRIPT_REGEXP |
static String |
NAME_BINDING
add ${name.pipeName} binding allowing to retrieve pipeName's current resource name
|
static String |
NN_ADDITIONALBINDINGS |
static String |
NN_PROVIDERS |
static String |
PATH_BINDING
add ${path.pipeName} binding allowing to retrieve pipeName's current resource path
|
static String |
PN_ADDITIONALSCRIPTS |
static String |
PN_ENGINE |
Constructor and Description |
---|
PipeBindings(@NotNull Plumber plumber,
@NotNull org.apache.sling.api.resource.Resource resource) |
PipeBindings(@NotNull org.apache.sling.api.resource.Resource resource)
public constructor, built from pipe's resource
|
PipeBindings(@NotNull org.apache.sling.api.resource.Resource resource,
boolean allowAdditionalScripts)
public constructor, built from pipe's resource
|
Modifier and Type | Method and Description |
---|---|
void |
addBinding(String name,
Object value)
add a binding
|
void |
addBindings(Map<String,Object> bindings)
adds additional bindings (global variables to use in child pipes expressions)
|
void |
addScript(org.apache.sling.api.resource.ResourceResolver resolver,
String path)
add a script file to the engine
|
String |
conditionalString(String conditionalExpression)
Return expression, instantiated expression or null if the expression is conditional and evaluation is falsy
|
static String |
embedAsScript(String value) |
protected Object |
evaluate(String expr)
evaluate a given expression
|
Bindings |
getBindings()
return registered bindings
|
org.apache.sling.api.resource.Resource |
getExecutedResource(String name)
return Pipe
name 's F binding |
void |
initializeScriptEngine(String engineName)
Initialize the ScriptEngine.
|
String |
instantiateExpression(String expr)
Expression is a function of variables from execution context, that
we implement here as a String
|
Object |
instantiateObject(String expr)
Instantiate object from expression
|
boolean |
isBindingDefined(String name)
check if a given bindings is defined or not
|
String |
popCurrentError() |
void |
setCurrentError(String currentError) |
void |
updateBindings(Pipe pipe,
org.apache.sling.api.resource.Resource resource)
Update current resource of a given pipe, and appropriate binding
|
void |
updateStaticBindings(String name,
org.apache.sling.api.resource.Resource resource)
Update all the static bindings related to a given resource
|
public static final String NN_ADDITIONALBINDINGS
public static final String PN_ADDITIONALSCRIPTS
public static final String NN_PROVIDERS
public static final String PN_ENGINE
public static final String FALSE_BINDING
public static final String PATH_BINDING
public static final String CACONFIG_BINDING
public static final String NAME_BINDING
public static final String INJECTED_SCRIPT_REGEXP
protected static final String IF_PREFIX
protected static final Pattern CONDITIONAL_STRING
public PipeBindings(@NotNull @NotNull Plumber plumber, @NotNull @NotNull org.apache.sling.api.resource.Resource resource)
public PipeBindings(@NotNull @NotNull org.apache.sling.api.resource.Resource resource)
resource
- pipe's configuration resourcepublic PipeBindings(@NotNull @NotNull org.apache.sling.api.resource.Resource resource, boolean allowAdditionalScripts)
resource
- pipe's configuration resourceallowAdditionalScripts
- flag allowing additional scriptspublic static String embedAsScript(String value)
value
- public void addBinding(String name, Object value)
name
- binding's namevalue
- binding's valuepublic void addBindings(Map<String,Object> bindings)
bindings
- key/values bindings to add to the existing bindingspublic void addScript(org.apache.sling.api.resource.ResourceResolver resolver, String path)
resolver
- resolver with which the file should be readpath
- path of the script fileprotected Object evaluate(String expr)
expr
- ecma like expressionpublic Object instantiateObject(String expr)
expr
- ecma expressionpublic Bindings getBindings()
public org.apache.sling.api.resource.Resource getExecutedResource(String name)
name
's F bindingname
- name of the pipepublic void initializeScriptEngine(String engineName)
engineName
- name of the engine as registered in the JVMpublic String conditionalString(String conditionalExpression)
conditionalExpression
- can be static, or dynamic, can be conditional in which case it must be of following
format $if${condition}someString
. someString will be returned if condition is true, otherwise nullpublic String instantiateExpression(String expr)
expr
- ecma like expressionpublic boolean isBindingDefined(String name)
name
- name of the bindingname
is registeredpublic void updateBindings(Pipe pipe, org.apache.sling.api.resource.Resource resource)
pipe
- pipe we'll extract the output binding fromresource
- current resource in the pipe executionpublic void updateStaticBindings(String name, org.apache.sling.api.resource.Resource resource)
name
- name under which static bindings should be recordedresource
- resource from which static bindings will be builtpublic String popCurrentError()
public void setCurrentError(String currentError)
currentError
- error path to setCopyright © 2007–2022 The Apache Software Foundation. All rights reserved.