SLING-11349 Support rereading and rewriting of content
diff --git a/pom.xml b/pom.xml
index 83512bc..065044a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
   </parent>
 
   <artifactId>org.apache.sling.commons.content.processing</artifactId>
-  <version>1.0.1-SNAPSHOT</version>
+  <version>2.0.0-SNAPSHOT</version>
 
   <name>Apache Sling Commons Content Processing</name>
   <description>Apache Sling Commons Content Processing</description>
diff --git a/src/main/java/org/apache/sling/commons/content/processing/ContentProcessor.java b/src/main/java/org/apache/sling/commons/content/processing/ContentProcessor.java
index 2e1b5b9..1f3cd10 100644
--- a/src/main/java/org/apache/sling/commons/content/processing/ContentProcessor.java
+++ b/src/main/java/org/apache/sling/commons/content/processing/ContentProcessor.java
@@ -22,6 +22,7 @@
 import java.io.OutputStream;
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
+import java.util.function.Supplier;
 
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
@@ -36,12 +37,12 @@
     /**
      * Processes the given content.
      *
-     * @param input      the stream from which the content is read for processing
-     * @param output     the stream into which the content is written during or after processing
+     * @param input      the supplier of the stream from which the content is read for processing
+     * @param output     the supplier of the stream into which the content is written during or after processing
      * @param parameters the parameters for the processing operation
      * @param report     the report to which the findings of the processing operation are added
      * @return {@link java.util.concurrent.CompletableFuture} for signaling completion
      */
-    public abstract @NotNull CompletableFuture<Void> process(@NotNull final InputStream input, @NotNull final OutputStream output, @Nullable final Map<String, Object> parameters, @NotNull final Map<String, Object> report);
+    public abstract @NotNull CompletableFuture<Void> process(@NotNull final Supplier<InputStream> input, @NotNull final Supplier<OutputStream> output, @Nullable final Map<String, Object> parameters, @NotNull final Map<String, Object> report);
 
 }
diff --git a/src/main/java/org/apache/sling/commons/content/processing/package-info.java b/src/main/java/org/apache/sling/commons/content/processing/package-info.java
index ac8a67f..42b265b 100644
--- a/src/main/java/org/apache/sling/commons/content/processing/package-info.java
+++ b/src/main/java/org/apache/sling/commons/content/processing/package-info.java
@@ -20,7 +20,7 @@
 /**
  * Provides the Apache Sling Commons Content Processing API.
  */
-@Version("1.0.0")
+@Version("2.0.0")
 package org.apache.sling.commons.content.processing;
 
 import org.osgi.annotation.versioning.Version;