org.ops4j.pax.wicket.api
Interface ContentAggregator

All Known Implementing Classes:
AbstractAggregatedSource, FloorAggregatedSource, RootContentAggregator

public interface ContentAggregator

The ContentAggregator defines the AggregationPoint.

ContentSources can attach themselves to an AggregationPoint, which is defined by a ContentAggregator. During the request, i.e. a call to createComponents( String wicketId ), the ContentAggregator must delegate the creation of components to the wired ContentSources.

  1. The ApplicationName of both the ContentAggregator and the ContentSource must be idential, done with a case-sensitive string comparison.
  2. The Destination consists of two parts, separated by a dot ("."). The first part is the AggregationMatchExpression and the part after the dot is called the ContentMatchExpression.
  3. The ContentAggregator must track ContentSource services which has a AggregationMatchExpression that evaluates to true for the AggregationPoint of the ContentAggregator.
  4. If the AggregationMatchExpression starts with "regexp(" (no quotes), then the AggregationMatchExpression is a regular expression up to the closing paranthesis. If that regular expression evaluates to true for the AggregationPoint of this ContentAggregator, then the wiring is established.
  5. If the AggregationMatchExpression does not start with "regexp(" (no quotes), then the expression must be case-sensitive equal of the AggregationPoint of this ContentAggregator.
  6. On createComponents( String wicketId ), the ContentAggregator must find the ContentSources that are wired to the ContentAggregator and where the ContentMatchExpression matches the wicketId in the method call. This match is performed identically to the one done for the AggregationPoint and AggregationMatchExpression.
  7. For each found ContentSource, which is wired and has a matching ContentMatchExpression, the ContentAggregator must call the ContentSource.createSourceComponent() method.


Method Summary
 void dispose()
          Dispose this ContentAggregator instance.
 java.lang.String getAggregationPointName()
          Returns the AggregationPoint of this ContentAggregator.
 java.lang.String getApplicationName()
          Returns the application name of this ContentAggregator instance.
 

Method Detail

getAggregationPointName

java.lang.String getAggregationPointName()
Returns the AggregationPoint of this ContentAggregator.

Returns:
The name of the AggregationPoint.
Since:
1.0.0

getApplicationName

java.lang.String getApplicationName()
Returns the application name of this ContentAggregator instance.

Returns:
The application name of this ContentAggregator instance.
Since:
1.0.0

dispose

void dispose()
Dispose this ContentAggregator instance.

Since:
1.0.0


Copyright © 2008. All Rights Reserved.