Android Open Source - FlickrBrowser Flickr Request Builder






From Project

Back to project page FlickrBrowser.

License

The source code is released under:

MIT License

If you think the Android project FlickrBrowser listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.flickrbrowser.rest;
//w w  w  .  j  ava 2s  .c  o  m
import com.flickrbrowser.parcelable.SearchResult;
import com.flickrbrowser.parcelable.SimpleLocation;
import com.flickrbrowser.util.FlickrBrowserConstants;
import org.apache.http.NameValuePair;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIUtils;
import org.apache.http.client.utils.URLEncodedUtils;
import org.apache.http.message.BasicNameValuePair;

import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.List;

/**
 Helper class used to create HttpGet requests for Flickr
 */
public abstract class FlickrRequestBuilder {
    private static final String protocol = "https";
    private static final String host = "api.flickr.com";
    private static final int port = -1;
    private static final String path = "/services/rest";
    private static final String method = "flickr.photos.search";
    private static final String apiKey = "b2990b6dd1749db8c7351de9decd46a0";
    private static final String format = "json";
    private static final String noCallback = "1";
    private static final String additionalFields = "description";
    private static final int resultsPerPage = 20;
    private static final int radius = 10;

    public static HttpGet createRequest(String userQuery, SimpleLocation location, int page) throws URISyntaxException {
        List<NameValuePair> qparams = new ArrayList<NameValuePair>();
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.METHOD, method));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.API_KEY, apiKey));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.FORMAT, format));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.NO_CALLBACK, noCallback));
        if(location != null) {
            qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.LATITUDE, String.valueOf(location.getLatitude())));
            qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.LONGITUDE,String.valueOf(location.getLongitude())));
            qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.RADIUS, String.valueOf(radius)));
        }
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.QUERY_TEXT, userQuery));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.EXTRAS, additionalFields));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.PAGE_NUMBER, String.valueOf(page)));
        qparams.add(new BasicNameValuePair(FlickrBrowserConstants.RestParameters.RESULTS_PER_PAGE, String.valueOf(resultsPerPage)));
        URI uri = URIUtils.createURI(protocol, host, port, path, URLEncodedUtils.format(qparams, "UTF-8"), null);
        HttpGet get = new HttpGet(uri);
        return get;
    }

    public static HttpGet createRequest(SearchResult result) throws URISyntaxException {
        return createRequest(result.getQuery(), result.getLocation(), result.getCurrentPage());
    }
}




Java Source Code List

com.flickrbrowser.FlickrBrowserApp.java
com.flickrbrowser.activity.Display.java
com.flickrbrowser.activity.Search.java
com.flickrbrowser.adapter.ImageAdapter.java
com.flickrbrowser.adapter.PhotoAdapter.java
com.flickrbrowser.location.SimpleLocationListener.java
com.flickrbrowser.parcelable.Description.java
com.flickrbrowser.parcelable.PhotoResult.java
com.flickrbrowser.parcelable.SearchResult.java
com.flickrbrowser.parcelable.SimpleLocation.java
com.flickrbrowser.rest.BackgroundRequestManager.java
com.flickrbrowser.rest.FlickrRequestBuilder.java
com.flickrbrowser.rest.GenericConnection.java
com.flickrbrowser.rest.GsonHelper.java
com.flickrbrowser.rest.IRequestListener.java
com.flickrbrowser.rest.PhotoSearchManager.java
com.flickrbrowser.util.FlickrBrowserConstants.java
com.flickrbrowser.util.FlickrPhotoArray.java
com.flickrbrowser.util.FlickrResponse.java
com.flickrbrowser.util.GzippedImageDownloader.java
com.flickrbrowser.util.PhotoSize.java
com.flickrbrowser.util.SearchHistory.java
com.flickrbrowser.util.Utils.java