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

com.adobe.cq.social.ugcbase.dispatcher.api.FlushService Maven / Gradle / Ivy

There is a newer version: 6.5.21
Show newest version
/*************************************************************************
 *
 * ADOBE CONFIDENTIAL
 * __________________
 *
 *  Copyright 2014 Adobe Systems Incorporated
 *  All Rights Reserved.
 *
 * NOTICE:  All information contained herein is, and remains
 * the property of Adobe Systems Incorporated and its suppliers,
 * if any.  The intellectual and technical concepts contained
 * herein are proprietary to Adobe Systems Incorporated and its
 * suppliers and are protected by trade secret or copyright law.
 * Dissemination of this information or reproduction of this material
 * is strictly forbidden unless prior written permission is obtained
 * from Adobe Systems Incorporated.
 **************************************************************************/
package com.adobe.cq.social.ugcbase.dispatcher.api;

public interface FlushService {

    public enum FlushType {
        IMMEDIATE_FLUSH, DELAYED_FLUSH
    }

    public enum RefetchType {
        NO_REFETCH, IMMEDIATE_REFETCH, DELAYED_REFETCH
    }

    /**
     * Sends a flush request to the 'flush' replication-agent using the given session and using the given refetchType.
     * @param userId the userId on which behalf this url is being flushed - will propagate to the replication agent
     * @param flushType whether to send this flush request directly or to delay it to reduce flush-load on
     *            high-frequency resources
     * @param urlToFlush the file matching this path plus all matching urlToFlush.* will be flushed with the
     *            dispatcher (as a result of using DEACTIVATE).
     * @param refetchType whether to refetch any urls, immediately or delayed
     * @param refetchUrls optional refetch urls
     * @return whether or not the flush command was sent to the agent
     */
    public boolean sendFlushUrl(final String userId, final FlushType flushType, final String urlToFlush,
        final RefetchType refetchType, String... refetchUrls);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy