001package com.intentsoftware.addapptr;
002
003/**
004 * Placement used for obtaining banner ads.
005 */
006@SuppressWarnings({"unused", "WeakerAccess"})
007public interface BannerPlacement {
008
009    /**
010     * Requests a new banner ad.
011     * @param request {@link BannerRequest} instance. Can not be null.
012     * @param listener {@link BannerRequestCompletionListener} instance that will be called when the request finishes. Can not be null.
013     */
014    void requestAd(BannerRequest request, BannerRequestCompletionListener listener);
015
016    /**
017     * Cancels the given banner request.
018     * @param request Request that should be canceled.
019     */
020    void cancel(BannerRequest request);
021
022    /**
023     * Counts the adspace for statistics. Can only be called if manual adspace counting is used.
024     * @see BannerConfiguration#setManualAdSpaceCounting(boolean)
025     */
026    void countAdSpace();
027}