You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2021/12/22 22:02:48 UTC
[sling-org-apache-sling-caconfig-spi] branch master updated: SLING-8849 Add ConfigurationInjectResourceDetectionStrategy that can be used to detect a Resource based on the current request (#1)
This is an automated email from the ASF dual-hosted git repository.
sseifert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-caconfig-spi.git
The following commit(s) were added to refs/heads/master by this push:
new 2014557 SLING-8849 Add ConfigurationInjectResourceDetectionStrategy that can be used to detect a Resource based on the current request (#1)
2014557 is described below
commit 20145572b40ac3a2177f948ad5053365b168cedb
Author: henrykuijpers <he...@gmail.com>
AuthorDate: Wed Dec 22 23:02:42 2021 +0100
SLING-8849 Add ConfigurationInjectResourceDetectionStrategy that can be used to detect a Resource based on the current request (#1)
Co-authored-by: Henry Kuijpers <He...@amplexor.com>
Co-authored-by: Stefan Seifert <st...@users.noreply.github.com>
---
...figurationInjectResourceDetectionStrategy.java} | 25 +++++++++++++++++++---
.../apache/sling/caconfig/spi/package-info.java | 2 +-
2 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/apache/sling/caconfig/spi/package-info.java b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInjectResourceDetectionStrategy.java
similarity index 50%
copy from src/main/java/org/apache/sling/caconfig/spi/package-info.java
copy to src/main/java/org/apache/sling/caconfig/spi/ConfigurationInjectResourceDetectionStrategy.java
index c636c0a..7ac7b13 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/package-info.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/ConfigurationInjectResourceDetectionStrategy.java
@@ -16,8 +16,27 @@
* specific language governing permissions and limitations
* under the License.
*/
+package org.apache.sling.caconfig.spi;
+
+import org.apache.sling.api.SlingHttpServletRequest;
+import org.apache.sling.api.resource.Resource;
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+import org.osgi.annotation.versioning.ConsumerType;
+
/**
- * SPI for applications hooking into the configuration infrastructure for parameterizing and customizing.
+ * Defines how to look up the current context resource to be used for getting the context-aware configurations
+ * for injecting into Sling Models or for Sling Scripting (BindingsValuesProvider).
*/
-@org.osgi.annotation.versioning.Version("2.1.2")
-package org.apache.sling.caconfig.spi;
+@ConsumerType
+public interface ConfigurationInjectResourceDetectionStrategy {
+
+ /**
+ * Detects the resource that is associated with the given request.
+ * @param request Sling request
+ * @return Detected Resource or {@code null} if this strategy did not detect an applicable resources.
+ */
+ @Nullable
+ Resource detectResource(@NotNull SlingHttpServletRequest request);
+
+}
diff --git a/src/main/java/org/apache/sling/caconfig/spi/package-info.java b/src/main/java/org/apache/sling/caconfig/spi/package-info.java
index c636c0a..2361c12 100644
--- a/src/main/java/org/apache/sling/caconfig/spi/package-info.java
+++ b/src/main/java/org/apache/sling/caconfig/spi/package-info.java
@@ -19,5 +19,5 @@
/**
* SPI for applications hooking into the configuration infrastructure for parameterizing and customizing.
*/
-@org.osgi.annotation.versioning.Version("2.1.2")
+@org.osgi.annotation.versioning.Version("2.2.0")
package org.apache.sling.caconfig.spi;