![JAR search and dependency download from the Maven repository](/logo.png)
com.day.cq.reporting.ComponentProvider Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aem-sdk-api Show documentation
Show all versions of aem-sdk-api Show documentation
The Adobe Experience Manager SDK
package com.day.cq.reporting;
/**
* This interface provides means to provide components to a report (such as value
* resolvers, aggregates, etc.).
*/
public interface ComponentProvider {
/**
* Acquires a {@link ValueResolver} for the specified resolver ID.
*
* The resolver instance must be explicitly released using
* {@link #releaseValueResolver(ValueResolver)}.
*
* @param resolverId The resolver ID
* @return The corresponding {@link ValueResolver}; null
if the resolver
* could not be instantiated
*/
ValueResolver acquireValueResolver(String resolverId);
/**
* Releases the specified {@link ValueResolver}.
*
* @param resolver The resolver to release
*/
void releaseValueResolver(ValueResolver resolver);
/**
* Acquires an {@link Aggregate} for the specified aggregate ID.
*
* The aggregate must be explicitly released using
* {@link #releaseAggregate(Aggregate)}.
*
* @param aggregateId The aggregate ID
* @return The corresponding {@link Aggregate}; null
if the aggregate
* could not be instantiated
*/
Aggregate acquireAggregate(String aggregateId);
/**
* Releases the specified {@link Aggregate}.
*
* @param aggregate The aggregate to release
*/
void releaseAggregate(Aggregate aggregate);
/**
* Acquires a {@link ValueExtractor} for the specified extractor ID.
*
* The extractor must be explicitly released using
* {@link #releaseExtractor(ValueExtractor)}.
*
* @param extractorId The extractor ID
* @return The corresponding {@link ValueExtractor}; null
if the extractor
* could not be instantiated
*/
ValueExtractor acquireValueExtractor(String extractorId);
/**
* Releases the specified {@link ValueExtractor}.
*
* @param extractor The extractor to release
*/
void releaseExtractor(ValueExtractor extractor);
/**
* Acquires a {@link Filter} for the specified filter ID.
*
* The filter must be explicitly released using {@link #releaseFilter(Filter)}.
*
* @param filterId The filter ID
* @return The corresponding {@link Filter}; null
if the filter
* could not be instantiated
*/
Filter acquireFilter(String filterId);
/**
* Releases the specified {@link Filter}.
*
* @param filter The filter to release
*/
void releaseFilter(Filter filter);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy