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 d262cb347a7df51681dfd8719cd797a4882042b9 Author: Carsten Ziegeler <[email protected]> AuthorDate: Thu Dec 19 09:53:17 2013 +0000 Update javadocs git-svn-id: https://svn.apache.org/repos/asf/sling/whiteboard/feature-flags@1552268 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/sling/extensions/featureflags/FeatureProvider.java | 10 ++++++++-- .../org/apache/sling/extensions/featureflags/Features.java | 5 +++-- .../sling/extensions/featureflags/impl/FeatureManager.java | 2 +- .../sling/extensions/featureflags/impl/FeaturesImpl.java | 4 ++-- 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/apache/sling/extensions/featureflags/FeatureProvider.java b/src/main/java/org/apache/sling/extensions/featureflags/FeatureProvider.java index fad43bc..2c8c7c6 100644 --- a/src/main/java/org/apache/sling/extensions/featureflags/FeatureProvider.java +++ b/src/main/java/org/apache/sling/extensions/featureflags/FeatureProvider.java @@ -44,14 +44,20 @@ public interface FeatureProvider { /** * Returns the resource type mapping for a feature. * This mapping is only used if {@link #isEnabled(String, ExecutionContext)} - * return true for the given feature/context. + * return true for the given feature/context. The caller of this + * method must ensure to call {@link #isEnabled(String, ExecutionContext)} + * before calling this method and only call this method if + * {@link #isEnabled(String, ExecutionContext)} return <code>true</code> */ Map<String, String> getResourceTypeMapping(String featureName); /** * Checks whether a resource should be hidden for a feature. * This check is only executed if {@link #isEnabled(String, ExecutionContext)} - * return true for the given feature/context. + * return true for the given feature/context. The caller of this + * method must ensure to call {@link #isEnabled(String, ExecutionContext)} + * before calling this method and only call this method if + * {@link #isEnabled(String, ExecutionContext)} return <code>true</code> */ boolean hideResource(String featureName, Resource resource); } diff --git a/src/main/java/org/apache/sling/extensions/featureflags/Features.java b/src/main/java/org/apache/sling/extensions/featureflags/Features.java index f955039..28af24d 100644 --- a/src/main/java/org/apache/sling/extensions/featureflags/Features.java +++ b/src/main/java/org/apache/sling/extensions/featureflags/Features.java @@ -32,9 +32,10 @@ import aQute.bnd.annotation.ProviderType; public interface Features { /** - * Get the list of all active features + * Get the list of all available features. A feature is available + * if there is a {@link FeatureProvider} */ - String[] getFeatureNames(); + String[] getAvailableFeatureNames(); /** * Checks whether a feature with the given name is available. 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 4d42d0a..38fac8a 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 @@ -175,7 +175,7 @@ public class FeatureManager implements Features { } @Override - public String[] getFeatureNames() { + public String[] getAvailableFeatureNames() { return this.activeProviders.keySet().toArray(new String[this.activeProviders.size()]); } diff --git a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeaturesImpl.java b/src/main/java/org/apache/sling/extensions/featureflags/impl/FeaturesImpl.java index 5c8bd1a..75ef89f 100644 --- a/src/main/java/org/apache/sling/extensions/featureflags/impl/FeaturesImpl.java +++ b/src/main/java/org/apache/sling/extensions/featureflags/impl/FeaturesImpl.java @@ -37,8 +37,8 @@ public class FeaturesImpl implements Features { private FeatureManager manager; @Override - public String[] getFeatureNames() { - return this.manager.getFeatureNames(); + public String[] getAvailableFeatureNames() { + return this.manager.getAvailableFeatureNames(); } @Override -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
