com.day.cq.reporting.Report 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
/*
* Copyright 1997-2010 Day Management AG
* Barfuesserplatz 6, 4001 Basel, Switzerland
* All Rights Reserved.
*
* This software is the confidential and proprietary information of
* Day Management AG, ("Confidential Information"). You shall not
* disclose such Confidential Information and shall use it only in
* accordance with the terms of the license agreement you entered into
* with Day.
*/
package com.day.cq.reporting;
import javax.jcr.RepositoryException;
import java.util.Iterator;
/**
* This interface represents a report (for serverside calculation) as a whole.
*/
public interface Report {
/**
* Creates the report and returns the data as a result.
*
* @return The report's data
* @throws RepositoryException if calculating data fails due to a repository error
*/
Data calculate() throws RepositoryException;
/**
* Creates an iterator for iterating over the report's columns.
*
* @return Column iterator
*/
Iterator getColumnIterator();
/**
* Returns the number of columns.
*
* @return Number of columns
*/
int getColumnCnt();
/**
* Returns if any group is grouped.
*
* @return true
if any column is grouped
*/
boolean hasGroupedColumns();
/**
* Creates an iterator for iterating over the columns to be used for snapshot data.
*
* @return Snapshot column iterator
*/
Iterator getSnapshotDataCols();
/**
* Gets the root path of this report (for querying the data).
*
* @return Root path of this report; null
if no root path is specified
* for the report
*/
String getDataRoot();
/**
* Cleans up the report after using it.
*/
void cleanup();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy