All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.day.cq.reporting.Filter Maven / Gradle / Ivy

/*
 * 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;

/**
 * This interface represents a filter used for reports.
 */
public interface Filter {

    /**
     * Gets the filter's ID.
     *
     * @return The filter ID
     */
    String getId();

    /**
     * Creates a {@link FilterSettings} object that is suitable for configuring the filter.
     *
     * @return The {@link FilterSettings} object
     */
    FilterSettings createSettings();

    /**
     * Configures the filter.
     *
     * @param settings the filter's settings
     */
    void configure(FilterSettings settings);

    /**
     * Checks if the filter is active.
     *
     * @return true if the filter is active
     */
    boolean isActive();

    /**
     * 

Checks if the specified data row matches the filter (= should be included in the * result set due to current filter settings).

* *

Note that this method may only be called if this.isActive() == true. *

* * @param cellData The data to check * @return True if the data row matches the filter */ boolean isMatching(CellValue cellData); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy