You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by np...@apache.org on 2018/06/08 13:44:26 UTC
[sling-org-apache-sling-pipes] branch master updated: SLING-7718
add PipeBinding in the constructor
This is an automated email from the ASF dual-hosted git repository.
npeltier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-pipes.git
The following commit(s) were added to refs/heads/master by this push:
new 8185051 SLING-7718 add PipeBinding in the constructor
8185051 is described below
commit 818505125983fc3135a64bf7b0d1ee6608ecfaa3
Author: Nicolas Peltier <pe...@gmail.com>
AuthorDate: Fri Jun 8 15:43:53 2018 +0200
SLING-7718 add PipeBinding in the constructor
- creates it in base pipe only if it's null,
- use that constructor in plumber API with new method getPipe(resource, bindings),
- use that new API in Container & Reference pipes
---
pom.xml | 2 +-
.../org/apache/sling/pipes/AbstractInputStreamPipe.java | 4 ++--
src/main/java/org/apache/sling/pipes/BasePipe.java | 10 +++-------
src/main/java/org/apache/sling/pipes/ContainerPipe.java | 16 ++++------------
src/main/java/org/apache/sling/pipes/Pipe.java | 6 ------
src/main/java/org/apache/sling/pipes/Plumber.java | 10 ++++++++++
src/main/java/org/apache/sling/pipes/ReferencePipe.java | 10 +++-------
.../apache/sling/pipes/internal/AuthorizablePipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/FilterPipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/MovePipe.java | 5 +++--
.../apache/sling/pipes/internal/MultiPropertyPipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/NotPipe.java | 5 +++--
.../org/apache/sling/pipes/internal/PackagePipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/PathPipe.java | 5 +++--
.../org/apache/sling/pipes/internal/PlumberImpl.java | 7 ++++++-
.../java/org/apache/sling/pipes/internal/RemovePipe.java | 5 +++--
.../org/apache/sling/pipes/internal/TraversePipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/WritePipe.java | 5 +++--
.../java/org/apache/sling/pipes/internal/XPathPipe.java | 5 +++--
.../apache/sling/pipes/internal/inputstream/CsvPipe.java | 5 +++--
.../sling/pipes/internal/inputstream/JsonPipe.java | 5 +++--
.../sling/pipes/internal/inputstream/RegexpPipe.java | 5 +++--
.../slingquery/AbstractExpressionSlingQueryPipe.java | 5 +++--
.../internal/slingquery/AbstractSlingQueryPipe.java | 5 +++--
.../sling/pipes/internal/slingquery/ChildrenPipe.java | 5 +++--
.../sling/pipes/internal/slingquery/ClosestPipe.java | 5 +++--
.../apache/sling/pipes/internal/slingquery/FindPipe.java | 5 +++--
.../sling/pipes/internal/slingquery/ParentPipe.java | 5 +++--
.../sling/pipes/internal/slingquery/ParentsPipe.java | 5 +++--
.../sling/pipes/internal/slingquery/SiblingsPipe.java | 5 +++--
.../java/org/apache/sling/pipes/dummies/DummyNull.java | 5 +++--
.../java/org/apache/sling/pipes/dummies/DummySearch.java | 5 +++--
.../apache/sling/pipes/internal/ReferencePipeTest.java | 3 +--
.../sling/pipes/internal/inputstream/RegexpPipeTest.java | 2 +-
34 files changed, 103 insertions(+), 87 deletions(-)
diff --git a/pom.xml b/pom.xml
index fa138d6..68054a4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -245,7 +245,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.testing.jcr-mock</artifactId>
- <version>1.3.3-SNAPSHOT</version>
+ <version>1.3.2</version>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/src/main/java/org/apache/sling/pipes/AbstractInputStreamPipe.java b/src/main/java/org/apache/sling/pipes/AbstractInputStreamPipe.java
index a2eff74..0150a3b 100644
--- a/src/main/java/org/apache/sling/pipes/AbstractInputStreamPipe.java
+++ b/src/main/java/org/apache/sling/pipes/AbstractInputStreamPipe.java
@@ -57,8 +57,8 @@ public abstract class AbstractInputStreamPipe extends BasePipe {
InputStream is;
- public AbstractInputStreamPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public AbstractInputStreamPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
configureHttpClient();
binding = null;
}
diff --git a/src/main/java/org/apache/sling/pipes/BasePipe.java b/src/main/java/org/apache/sling/pipes/BasePipe.java
index c648cb6..d797e9b 100644
--- a/src/main/java/org/apache/sling/pipes/BasePipe.java
+++ b/src/main/java/org/apache/sling/pipes/BasePipe.java
@@ -82,16 +82,17 @@ public class BasePipe implements Pipe {
* Pipe Constructor
* @param plumber plumber
* @param resource configuration resource
+ * @param upperBindings already set bindings, can be null
* @throws Exception in case configuration is not working
*/
- public BasePipe(Plumber plumber, Resource resource) throws Exception {
+ public BasePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
this.resource = resource;
properties = resource.adaptTo(ValueMap.class);
resolver = resource.getResourceResolver();
this.plumber = plumber;
name = properties.get(PN_NAME, resource.getName());
distributionAgent = properties.get(PN_DISTRIBUTION_AGENT, String.class);
- bindings = new PipeBindings(resource);
+ bindings = upperBindings == null ? new PipeBindings(resource) : upperBindings;
}
@Override
@@ -226,11 +227,6 @@ public class BasePipe implements Pipe {
return bindings;
}
- @Override
- public void setBindings(PipeBindings bindings) {
- this.bindings = bindings;
- }
-
/**
* default execution, just returns current resource
* @return output of this pipe, which is here the input resource
diff --git a/src/main/java/org/apache/sling/pipes/ContainerPipe.java b/src/main/java/org/apache/sling/pipes/ContainerPipe.java
index d8900f9..edc9fab 100644
--- a/src/main/java/org/apache/sling/pipes/ContainerPipe.java
+++ b/src/main/java/org/apache/sling/pipes/ContainerPipe.java
@@ -49,19 +49,19 @@ public class ContainerPipe extends BasePipe {
* Constructor
* @param plumber plumber
* @param resource container's configuration resource
+ * @param upperBindings pipe bindings
* @throws Exception bad configuration handling
*/
- public ContainerPipe(Plumber plumber, Resource resource) throws Exception{
- super(plumber, resource);
+ public ContainerPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception{
+ super(plumber, resource, upperBindings);
sleep = properties.get(PN_SLEEP, 0L);
for (Iterator<Resource> childPipeResources = getConfiguration().listChildren(); childPipeResources.hasNext();){
Resource pipeResource = childPipeResources.next();
- Pipe pipe = plumber.getPipe(pipeResource);
+ Pipe pipe = plumber.getPipe(pipeResource, bindings);
if (pipe == null) {
log.error("configured pipe {} is either not registered, or not computable by the plumber", pipeResource.getPath());
} else {
pipe.setParent(this);
- pipe.setBindings(bindings);
pipes.put(pipe.getName(), pipe);
pipeList.add(pipe);
}
@@ -79,14 +79,6 @@ public class ContainerPipe extends BasePipe {
}
@Override
- public void setBindings(PipeBindings bindings) {
- this.bindings = bindings;
- for (Pipe pipe : pipeList){
- pipe.setBindings(bindings);
- }
- }
-
- @Override
public Iterator<Resource> getOutput() {
return new ContainerResourceIterator(this, sleep);
}
diff --git a/src/main/java/org/apache/sling/pipes/Pipe.java b/src/main/java/org/apache/sling/pipes/Pipe.java
index b1f8a74..652814d 100644
--- a/src/main/java/org/apache/sling/pipes/Pipe.java
+++ b/src/main/java/org/apache/sling/pipes/Pipe.java
@@ -115,12 +115,6 @@ public interface Pipe {
PipeBindings getBindings();
/**
- * set the pipe's bindings
- * @param bindings bindings to set
- */
- void setBindings(PipeBindings bindings);
-
- /**
* Executes the pipe, can be contained in a parent or not
* @return iterator of resource resulting from execution of this pipe
*/
diff --git a/src/main/java/org/apache/sling/pipes/Plumber.java b/src/main/java/org/apache/sling/pipes/Plumber.java
index c0a1a4d..421bf66 100644
--- a/src/main/java/org/apache/sling/pipes/Plumber.java
+++ b/src/main/java/org/apache/sling/pipes/Plumber.java
@@ -38,6 +38,16 @@ public interface Plumber {
*/
Pipe getPipe(Resource resource);
+
+ /**
+ * Instantiate a pipe from the given resource and returns it
+ * @param resource configuration resource
+ * @param upperBindings already set binding we want to initiate our pipe with
+ * @return pipe instantiated from the resource, null otherwise
+ */
+ Pipe getPipe(Resource resource, PipeBindings upperBindings);
+
+
/**
* executes in a background thread
* @param resolver resolver used for registering the execution (id will be checked against the configuration)
diff --git a/src/main/java/org/apache/sling/pipes/ReferencePipe.java b/src/main/java/org/apache/sling/pipes/ReferencePipe.java
index a7814d5..3429205 100644
--- a/src/main/java/org/apache/sling/pipes/ReferencePipe.java
+++ b/src/main/java/org/apache/sling/pipes/ReferencePipe.java
@@ -39,8 +39,8 @@ public class ReferencePipe extends BasePipe {
*/
String referencePath;
- public ReferencePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public ReferencePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
@@ -57,7 +57,7 @@ public class ReferencePipe extends BasePipe {
if (pipeResource == null) {
throw new Exception("Reference configuration error: There is no resource at " + getExpr());
}
- reference = plumber.getPipe(pipeResource);
+ reference = plumber.getPipe(pipeResource, bindings);
if (reference == null) {
throw new Exception("Unable to build out pipe out of " + getPath());
}
@@ -68,10 +68,6 @@ public class ReferencePipe extends BasePipe {
if (parent != null) {
reference.setParent(parent);
}
- //set reference's bindings
- if (bindings != null) {
- reference.setBindings(bindings);
- }
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/AuthorizablePipe.java b/src/main/java/org/apache/sling/pipes/internal/AuthorizablePipe.java
index f7fb73a..2522223 100644
--- a/src/main/java/org/apache/sling/pipes/internal/AuthorizablePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/AuthorizablePipe.java
@@ -24,6 +24,7 @@ import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -72,8 +73,8 @@ public class AuthorizablePipe extends BasePipe {
* @param resource configuration resource
* @throws Exception bad configuration handling
*/
- public AuthorizablePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public AuthorizablePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
resolver = resource.getResourceResolver();
userManager = resolver.adaptTo(UserManager.class);
if (getConfiguration() != null) {
diff --git a/src/main/java/org/apache/sling/pipes/internal/FilterPipe.java b/src/main/java/org/apache/sling/pipes/internal/FilterPipe.java
index 53deda8..8b7ff47 100644
--- a/src/main/java/org/apache/sling/pipes/internal/FilterPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/FilterPipe.java
@@ -19,6 +19,7 @@ package org.apache.sling.pipes.internal;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -41,8 +42,8 @@ public class FilterPipe extends BasePipe {
public static final String PN_NOCHILDREN = PREFIX_FILTER + "noChildren";
public static final String PN_TEST = PREFIX_FILTER + "test";
- public FilterPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public FilterPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
boolean propertiesPass(ValueMap current, ValueMap filter) throws ScriptException {
diff --git a/src/main/java/org/apache/sling/pipes/internal/MovePipe.java b/src/main/java/org/apache/sling/pipes/internal/MovePipe.java
index ad61df1..f131998 100644
--- a/src/main/java/org/apache/sling/pipes/internal/MovePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/MovePipe.java
@@ -18,6 +18,7 @@ package org.apache.sling.pipes.internal;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -38,8 +39,8 @@ public class MovePipe extends BasePipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "mv";
- public MovePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public MovePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/MultiPropertyPipe.java b/src/main/java/org/apache/sling/pipes/internal/MultiPropertyPipe.java
index 06bbbf8..57590b7 100644
--- a/src/main/java/org/apache/sling/pipes/internal/MultiPropertyPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/MultiPropertyPipe.java
@@ -18,6 +18,7 @@ package org.apache.sling.pipes.internal;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -38,8 +39,8 @@ public class MultiPropertyPipe extends BasePipe {
private static Logger logger = LoggerFactory.getLogger(MultiPropertyPipe.class);
public static final String RESOURCE_TYPE = RT_PREFIX + "multiProperty";
- public MultiPropertyPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public MultiPropertyPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
MVResourceIterator iterator;
diff --git a/src/main/java/org/apache/sling/pipes/internal/NotPipe.java b/src/main/java/org/apache/sling/pipes/internal/NotPipe.java
index 02a5355..76e4e18 100644
--- a/src/main/java/org/apache/sling/pipes/internal/NotPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/NotPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.pipes.ReferencePipe;
@@ -31,8 +32,8 @@ public class NotPipe extends ReferencePipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "not";
- public NotPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public NotPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/PackagePipe.java b/src/main/java/org/apache/sling/pipes/internal/PackagePipe.java
index 4214ad2..29aef52 100644
--- a/src/main/java/org/apache/sling/pipes/internal/PackagePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/PackagePipe.java
@@ -26,6 +26,7 @@ import org.apache.jackrabbit.vault.packaging.PackagingService;
import org.apache.jackrabbit.vault.util.Text;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -58,8 +59,8 @@ public class PackagePipe extends BasePipe {
*
* @throws Exception in case configuration is not working
*/
- public PackagePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public PackagePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/PathPipe.java b/src/main/java/org/apache/sling/pipes/internal/PathPipe.java
index 7e94414..c5e9f94 100644
--- a/src/main/java/org/apache/sling/pipes/internal/PathPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/PathPipe.java
@@ -21,6 +21,7 @@ import org.apache.sling.api.resource.PersistenceException;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ResourceUtil;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -59,8 +60,8 @@ public class PathPipe extends BasePipe {
private final Logger logger = LoggerFactory.getLogger(PathPipe.class);
- public PathPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public PathPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
nodeType = properties.get(PN_NODETYPE, String.class);
resourceType = properties.get(PN_RESOURCETYPE, NT_SLING_FOLDER);
jcr = StringUtils.isNotBlank(nodeType);
diff --git a/src/main/java/org/apache/sling/pipes/internal/PlumberImpl.java b/src/main/java/org/apache/sling/pipes/internal/PlumberImpl.java
index f7149e1..075957c 100644
--- a/src/main/java/org/apache/sling/pipes/internal/PlumberImpl.java
+++ b/src/main/java/org/apache/sling/pipes/internal/PlumberImpl.java
@@ -204,12 +204,17 @@ public class PlumberImpl implements Plumber, JobConsumer, PlumberMXBean {
@Override
public Pipe getPipe(Resource resource) {
+ return getPipe(resource, null);
+ }
+
+ @Override
+ public Pipe getPipe(Resource resource, PipeBindings upperBindings) {
if ((resource == null) || !registry.containsKey(resource.getResourceType())) {
log.error("Pipe configuration resource is either null, or its type is not registered");
} else {
try {
Class<? extends Pipe> pipeClass = registry.get(resource.getResourceType());
- return pipeClass.getDeclaredConstructor(Plumber.class, Resource.class).newInstance(this, resource);
+ return pipeClass.getDeclaredConstructor(Plumber.class, Resource.class, PipeBindings.class).newInstance(this, resource, upperBindings);
} catch (Exception e) {
log.error("Unable to properly instantiate the pipe configured in {}", resource.getPath(), e);
}
diff --git a/src/main/java/org/apache/sling/pipes/internal/RemovePipe.java b/src/main/java/org/apache/sling/pipes/internal/RemovePipe.java
index 0ed0a6d..84ba509 100644
--- a/src/main/java/org/apache/sling/pipes/internal/RemovePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/RemovePipe.java
@@ -19,6 +19,7 @@ package org.apache.sling.pipes.internal;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -44,8 +45,8 @@ public class RemovePipe extends BasePipe {
*/
Resource filter;
- public RemovePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public RemovePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
filter = getConfiguration();
}
diff --git a/src/main/java/org/apache/sling/pipes/internal/TraversePipe.java b/src/main/java/org/apache/sling/pipes/internal/TraversePipe.java
index 179325a..96ea1b5 100644
--- a/src/main/java/org/apache/sling/pipes/internal/TraversePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/TraversePipe.java
@@ -20,6 +20,7 @@ import org.apache.commons.collections.IteratorUtils;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -46,8 +47,8 @@ public class TraversePipe extends BasePipe {
* @param resource configuration resource
* @throws Exception in case configuration is not working
*/
- public TraversePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public TraversePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
diff --git a/src/main/java/org/apache/sling/pipes/internal/WritePipe.java b/src/main/java/org/apache/sling/pipes/internal/WritePipe.java
index 3dd749c..15644c0 100644
--- a/src/main/java/org/apache/sling/pipes/internal/WritePipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/WritePipe.java
@@ -21,6 +21,7 @@ import org.apache.sling.api.resource.ModifiableValueMap;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.api.resource.ValueMap;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,8 +57,8 @@ public class WritePipe extends BasePipe {
* @param resource configuration resource
* @throws Exception bad configuration handling
*/
- public WritePipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public WritePipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
if (getConfiguration() == null){
String pathCandidate = getExpr();
if (StringUtils.isNotBlank(pathCandidate) && resolver.getResource(pathCandidate) != null){
diff --git a/src/main/java/org/apache/sling/pipes/internal/XPathPipe.java b/src/main/java/org/apache/sling/pipes/internal/XPathPipe.java
index 9b962df..80f77ba 100644
--- a/src/main/java/org/apache/sling/pipes/internal/XPathPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/XPathPipe.java
@@ -19,6 +19,7 @@ package org.apache.sling.pipes.internal;
import org.apache.commons.lang3.StringUtils;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -35,8 +36,8 @@ public class XPathPipe extends BasePipe {
private static final Logger logger = LoggerFactory.getLogger(XPathPipe.class);
public static final String RESOURCE_TYPE = RT_PREFIX + "xpath";
- public XPathPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public XPathPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/inputstream/CsvPipe.java b/src/main/java/org/apache/sling/pipes/internal/inputstream/CsvPipe.java
index 3a7bef8..5201999 100644
--- a/src/main/java/org/apache/sling/pipes/internal/inputstream/CsvPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/inputstream/CsvPipe.java
@@ -19,6 +19,7 @@ package org.apache.sling.pipes.internal.inputstream;
import org.apache.commons.lang3.StringUtils;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.AbstractInputStreamPipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -49,8 +50,8 @@ public class CsvPipe extends AbstractInputStreamPipe {
int index = 0;
- public CsvPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public CsvPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/inputstream/JsonPipe.java b/src/main/java/org/apache/sling/pipes/internal/inputstream/JsonPipe.java
index a739b72..d641d5b 100644
--- a/src/main/java/org/apache/sling/pipes/internal/inputstream/JsonPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/inputstream/JsonPipe.java
@@ -20,6 +20,7 @@ import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.AbstractInputStreamPipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.pipes.internal.JsonUtil;
import org.slf4j.Logger;
@@ -60,8 +61,8 @@ public class JsonPipe extends AbstractInputStreamPipe {
JsonArray array;
int index = -1;
- public JsonPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public JsonPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
/**
diff --git a/src/main/java/org/apache/sling/pipes/internal/inputstream/RegexpPipe.java b/src/main/java/org/apache/sling/pipes/internal/inputstream/RegexpPipe.java
index 441d26c..da812d1 100644
--- a/src/main/java/org/apache/sling/pipes/internal/inputstream/RegexpPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/inputstream/RegexpPipe.java
@@ -19,6 +19,7 @@ package org.apache.sling.pipes.internal.inputstream;
import org.apache.commons.io.IOUtils;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.AbstractInputStreamPipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -46,8 +47,8 @@ public class RegexpPipe extends AbstractInputStreamPipe {
private static final Pattern PATTERN_NAME = Pattern.compile("\\?<([\\w]+)>");
private static final short PATTERN_IDX_NAME = 1;
- public RegexpPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public RegexpPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractExpressionSlingQueryPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractExpressionSlingQueryPipe.java
index 55d94e2..c79d06d 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractExpressionSlingQueryPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractExpressionSlingQueryPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
import org.slf4j.Logger;
@@ -29,8 +30,8 @@ import javax.script.ScriptException;
*/
public abstract class AbstractExpressionSlingQueryPipe extends AbstractSlingQueryPipe {
Logger logger = LoggerFactory.getLogger(AbstractExpressionSlingQueryPipe.class);
- public AbstractExpressionSlingQueryPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public AbstractExpressionSlingQueryPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
/**
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractSlingQueryPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractSlingQueryPipe.java
index a1cb4ea..421630f 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractSlingQueryPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/AbstractSlingQueryPipe.java
@@ -18,6 +18,7 @@ package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
import java.util.Iterator;
@@ -27,8 +28,8 @@ import java.util.Iterator;
*/
public abstract class AbstractSlingQueryPipe extends BasePipe {
- public AbstractSlingQueryPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public AbstractSlingQueryPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
public boolean modifiesContent() {
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/ChildrenPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/ChildrenPipe.java
index d1bddfb..45b8e5e 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/ChildrenPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/ChildrenPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -28,8 +29,8 @@ import static org.apache.sling.query.SlingQuery.$;
public class ChildrenPipe extends AbstractExpressionSlingQueryPipe {
public final static String RESOURCE_TYPE = RT_PREFIX + "children";
- public ChildrenPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public ChildrenPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/ClosestPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/ClosestPipe.java
index d418df1..1a68f90 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/ClosestPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/ClosestPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -25,8 +26,8 @@ import static org.apache.sling.query.SlingQuery.$;
public class ClosestPipe extends AbstractExpressionSlingQueryPipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "closest";
- public ClosestPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public ClosestPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/FindPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/FindPipe.java
index 687cee3..e8cdd02 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/FindPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/FindPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -25,8 +26,8 @@ import static org.apache.sling.query.SlingQuery.$;
public class FindPipe extends AbstractExpressionSlingQueryPipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "find";
- public FindPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public FindPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentPipe.java
index 8823596..0399c8a 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -28,8 +29,8 @@ import static org.apache.sling.query.SlingQuery.$;
public class ParentPipe extends AbstractSlingQueryPipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "parent";
- public ParentPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public ParentPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentsPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentsPipe.java
index f1eb6a8..056ffb9 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentsPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/ParentsPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -28,8 +29,8 @@ import static org.apache.sling.query.SlingQuery.$;
public class ParentsPipe extends AbstractExpressionSlingQueryPipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "parents";
- public ParentsPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public ParentsPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/main/java/org/apache/sling/pipes/internal/slingquery/SiblingsPipe.java b/src/main/java/org/apache/sling/pipes/internal/slingquery/SiblingsPipe.java
index 7cbc8c8..ee47eb5 100644
--- a/src/main/java/org/apache/sling/pipes/internal/slingquery/SiblingsPipe.java
+++ b/src/main/java/org/apache/sling/pipes/internal/slingquery/SiblingsPipe.java
@@ -17,6 +17,7 @@
package org.apache.sling.pipes.internal.slingquery;
import org.apache.sling.api.resource.Resource;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
import org.apache.sling.query.SlingQuery;
@@ -26,8 +27,8 @@ public class SiblingsPipe extends AbstractExpressionSlingQueryPipe {
public static final String RESOURCE_TYPE = RT_PREFIX + "siblings";
- public SiblingsPipe(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public SiblingsPipe(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/test/java/org/apache/sling/pipes/dummies/DummyNull.java b/src/test/java/org/apache/sling/pipes/dummies/DummyNull.java
index bd32bcc..edcfba3 100644
--- a/src/test/java/org/apache/sling/pipes/dummies/DummyNull.java
+++ b/src/test/java/org/apache/sling/pipes/dummies/DummyNull.java
@@ -21,14 +21,15 @@ import java.util.Iterator;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
/**
* this pipe has nothing in output
*/
public class DummyNull extends BasePipe {
- public DummyNull(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public DummyNull(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/test/java/org/apache/sling/pipes/dummies/DummySearch.java b/src/test/java/org/apache/sling/pipes/dummies/DummySearch.java
index 8163d2c..8b09423 100644
--- a/src/test/java/org/apache/sling/pipes/dummies/DummySearch.java
+++ b/src/test/java/org/apache/sling/pipes/dummies/DummySearch.java
@@ -24,6 +24,7 @@ import javax.jcr.NodeIterator;
import org.apache.sling.api.resource.Resource;
import org.apache.sling.pipes.BasePipe;
+import org.apache.sling.pipes.PipeBindings;
import org.apache.sling.pipes.Plumber;
/**
@@ -31,8 +32,8 @@ import org.apache.sling.pipes.Plumber;
*/
public class DummySearch extends BasePipe {
- public DummySearch(Plumber plumber, Resource resource) throws Exception {
- super(plumber, resource);
+ public DummySearch(Plumber plumber, Resource resource, PipeBindings upperBindings) throws Exception {
+ super(plumber, resource, upperBindings);
}
@Override
diff --git a/src/test/java/org/apache/sling/pipes/internal/ReferencePipeTest.java b/src/test/java/org/apache/sling/pipes/internal/ReferencePipeTest.java
index 9df9a9d..c506566 100644
--- a/src/test/java/org/apache/sling/pipes/internal/ReferencePipeTest.java
+++ b/src/test/java/org/apache/sling/pipes/internal/ReferencePipeTest.java
@@ -69,8 +69,7 @@ public class ReferencePipeTest extends AbstractPipeTest {
bindings.put("fruit", newFruit);
Pipe pipe = plumber.newPipe(context.resourceResolver()).echo(PATH_FRUITS + "/${fruit}").build();
Collection<String> paths = plumber.newPipe(context.resourceResolver())
- .pipe(ReferencePipe.RESOURCE_TYPE)
- .expr(pipe.getResource().getPath())
+ .ref(pipe.getResource().getPath())
.run(bindings).getCurrentPathSet();
assertTrue("paths should contain new path", paths.contains(newPath));
}
diff --git a/src/test/java/org/apache/sling/pipes/internal/inputstream/RegexpPipeTest.java b/src/test/java/org/apache/sling/pipes/internal/inputstream/RegexpPipeTest.java
index c21487c..7c156b9 100644
--- a/src/test/java/org/apache/sling/pipes/internal/inputstream/RegexpPipeTest.java
+++ b/src/test/java/org/apache/sling/pipes/internal/inputstream/RegexpPipeTest.java
@@ -33,7 +33,7 @@ import static org.junit.Assert.*;
public class RegexpPipeTest extends AbstractPipeTest {
@Test
public void getGroupNames() throws Exception {
- RegexpPipe pipe = new RegexpPipe(plumber, context.resourceResolver().getResource("/content"));
+ RegexpPipe pipe = new RegexpPipe(plumber, context.resourceResolver().getResource("/content"), null);
Collection<String> names = pipe.getGroupNames("some (?<first>group) that uses (?<name>names)");
assertEquals("there should be 2 names", 2, names.size());
assertTrue("there should be first", names.contains("first"));
--
To stop receiving notification emails like this one, please contact
npeltier@apache.org.