This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to annotated tag org.apache.sling.distribution.api-0.1.0 in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-api.git
commit 88a73b76241e7146d63e7d6bb4f76d013490680a Author: Marius Petria <[email protected]> AuthorDate: Wed Nov 19 11:42:32 2014 +0000 SLING-4153: Making DistributionComponentFactory delegate creation of subcomponents git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/contrib/extensions/distribution/api@1640532 13f79535-47bb-0310-9956-ffa450edef68 --- .../sling/distribution/component/DistributionComponentFactory.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sling/distribution/component/DistributionComponentFactory.java b/src/main/java/org/apache/sling/distribution/component/DistributionComponentFactory.java index 8414138..bb18225 100644 --- a/src/main/java/org/apache/sling/distribution/component/DistributionComponentFactory.java +++ b/src/main/java/org/apache/sling/distribution/component/DistributionComponentFactory.java @@ -29,6 +29,7 @@ import aQute.bnd.annotation.ProviderType; /** * factory for {@link DistributionComponent}s. * A client should register a component factory if it has custom implementations of distribution components. + * As components are hierarchical a factory can delegate the creation of its sub components to another factory. */ @ConsumerType public interface DistributionComponentFactory { @@ -41,10 +42,12 @@ public interface DistributionComponentFactory { * @param properties the properties to be supplied for the initialization of the component * @param <ComponentType> the actual type of the {@link DistributionComponent} * to be created + * @param subComponentFactory the factory to be called for creating sub components * @return a {@link DistributionComponent} of the specified type initialized with given properties or <code>null</code> * if that could not be created */ @CheckForNull <ComponentType extends DistributionComponent> ComponentType createComponent(@Nonnull java.lang.Class<ComponentType> type, - @Nonnull Map<String, Object> properties); + @Nonnull Map<String, Object> properties, + @Nullable DistributionComponentFactory subComponentFactory); } -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
