/* * This file provided by Facebook is for non-commercial testing and evaluation * purposes only. Facebook reserves all rights not expressly granted. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * FACEBOOK BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ package com.facebook.fresco.sample.urlsfetcher; import com.facebook.common.internal.Maps; import com.facebook.common.internal.Preconditions; import java.util.Map; /** * Builds ImageUrlsRequest. * * <p> Use addImageFormat to specify what image types you are interested in */ public class ImageUrlsRequestBuilder { final private String mEndpointUrl; Map<ImageFormat, ImageSize> mRequestedImageFormats; public ImageUrlsRequestBuilder(final String endpointUrl) { mEndpointUrl = Preconditions.checkNotNull(endpointUrl); mRequestedImageFormats = Maps.newHashMap(); } /** * Adds imageFormat to the set of image formats you want to download. imageSize specify * server-side resize options. */ public ImageUrlsRequestBuilder addImageFormat(ImageFormat imageFormat, ImageSize imageSize) { mRequestedImageFormats.put(imageFormat, imageSize); return this; } public ImageUrlsRequest build() { ImageUrlsRequest request = new ImageUrlsRequest(mEndpointUrl, mRequestedImageFormats); mRequestedImageFormats = null; return request; } }