You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 09:34:23 UTC

[sling-org-apache-sling-featureflags] 04/25: Take II for the feature flags, separate into different contexts to avoid duplicate evaluation

This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.featureflags-1.0.0
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-featureflags.git

commit fae60b1d27140aee92ece67806293b0e743d13d9
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Thu Dec 19 04:48:45 2013 +0000

    Take II for the feature flags, separate into different contexts to avoid duplicate evaluation
    
    git-svn-id: https://svn.apache.org/repos/asf/sling/whiteboard/feature-flags@1552226 13f79535-47bb-0310-9956-ffa450edef68
---
 .../extensions/featureflags/impl/FeatureManager.java | 20 ++++++++++----------
 ...tureContextImpl.java => ProviderContextImpl.java} |  9 ++++++---
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureManager.java b/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureManager.java
index 2fbf286..4d42d0a 100644
--- a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureManager.java
+++ b/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureManager.java
@@ -32,9 +32,9 @@ import org.apache.sling.api.SlingHttpServletRequest;
 import org.apache.sling.api.resource.Resource;
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.extensions.featureflags.ClientContext;
-import org.apache.sling.extensions.featureflags.ProviderContext;
 import org.apache.sling.extensions.featureflags.FeatureProvider;
 import org.apache.sling.extensions.featureflags.Features;
+import org.apache.sling.extensions.featureflags.ProviderContext;
 import org.osgi.framework.Constants;
 
 /**
@@ -130,8 +130,8 @@ public class FeatureManager implements Features {
     }
 
     public void setCurrentClientContext(final SlingHttpServletRequest request) {
-        final ProviderContext featureContext = new FeatureContextImpl(request);
-        final ClientContextImpl ctx = this.createClientContext(featureContext);
+        final ProviderContext providerContext = new ProviderContextImpl(request);
+        final ClientContextImpl ctx = this.createClientContext(providerContext);
         perThreadClientContext.set(ctx);
     }
 
@@ -144,8 +144,8 @@ public class FeatureManager implements Features {
         if ( resolver == null ) {
             throw new IllegalArgumentException("Resolver must not be null.");
         }
-        final ProviderContext featureContext = new FeatureContextImpl(resolver);
-        final ClientContext ctx = this.createClientContext(featureContext);
+        final ProviderContext providerContext = new ProviderContextImpl(resolver);
+        final ClientContext ctx = this.createClientContext(providerContext);
         return ctx;
     }
 
@@ -154,19 +154,19 @@ public class FeatureManager implements Features {
         if ( request == null ) {
             throw new IllegalArgumentException("Request must not be null.");
         }
-        final ProviderContext featureContext = new FeatureContextImpl(request);
-        final ClientContext ctx = this.createClientContext(featureContext);
+        final ProviderContext providerContext = new ProviderContextImpl(request);
+        final ClientContext ctx = this.createClientContext(providerContext);
         return ctx;
     }
 
-    private ClientContextImpl createClientContext(final ProviderContext featureContext) {
-        final ClientContextImpl ctx = new ClientContextImpl(featureContext);
+    private ClientContextImpl createClientContext(final ProviderContext providerContext) {
+        final ClientContextImpl ctx = new ClientContextImpl(providerContext);
 
         for(final Map.Entry<String, FeatureProvider> entry : this.activeProviders.entrySet()) {
             final String name = entry.getKey();
             final FeatureProvider provider = entry.getValue();
 
-            if ( provider.isEnabled(name, featureContext) ) {
+            if ( provider.isEnabled(name, providerContext) ) {
                 ctx.addFeature(name);
             }
         }
diff --git a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureContextImpl.java b/src/main/java/org/apache/sling/extensions/featureflags/impl/ProviderContextImpl.java
similarity index 85%
rename from src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureContextImpl.java
rename to src/main/java/org/apache/sling/extensions/featureflags/impl/ProviderContextImpl.java
index e31dc15..3c66929 100644
--- a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeatureContextImpl.java
+++ b/src/main/java/org/apache/sling/extensions/featureflags/impl/ProviderContextImpl.java
@@ -22,18 +22,21 @@ import org.apache.sling.api.SlingHttpServletRequest;
 import org.apache.sling.api.resource.ResourceResolver;
 import org.apache.sling.extensions.featureflags.ProviderContext;
 
-public class FeatureContextImpl implements ProviderContext {
+/**
+ * Implementation of the provider context.
+ */
+public class ProviderContextImpl implements ProviderContext {
 
     private final ResourceResolver resourceResolver;
 
     private final SlingHttpServletRequest request;
 
-    public FeatureContextImpl(final ResourceResolver resourceResolver) {
+    public ProviderContextImpl(final ResourceResolver resourceResolver) {
         this.request = null;
         this.resourceResolver = resourceResolver;
     }
 
-    public FeatureContextImpl(final SlingHttpServletRequest request) {
+    public ProviderContextImpl(final SlingHttpServletRequest request) {
         this.request = request;
         this.resourceResolver = request.getResourceResolver();
     }

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.