package com.mediafire.sdk.requests; import com.mediafire.sdk.token.ActionToken; import java.util.HashMap; import java.util.Map; /** * GetRequest is used to make api requests via GET */ public class GetRequest { private static final String BASE_URL = "https://www.mediafire.com/conversion_server.php?"; private final String url; private final Map<String, Object> headers = new HashMap<String, Object>(); public GetRequest(ImageRequest imageRequest, ActionToken imageToken) { StringBuilder urlBuilder = new StringBuilder(); urlBuilder.append(BASE_URL); urlBuilder.append(imageRequest.getHash().substring(0, 4)); urlBuilder.append("&quickkey=").append(imageRequest.getQuickKey()); urlBuilder.append("&doc_type=i"); urlBuilder.append("&size_id=").append(imageRequest.getSizeId()); if (imageRequest.isConversionOnly()) { urlBuilder.append("&request_conversion_only=1"); } urlBuilder.append("&session_token=").append(imageToken.getToken()); url = urlBuilder.toString(); } public GetRequest(DocumentRequest documentRequest, ActionToken imageToken) { StringBuilder urlBuilder = new StringBuilder(); urlBuilder.append(BASE_URL); urlBuilder.append(documentRequest.getHash().substring(0, 4)); urlBuilder.append("&quickkey=").append(documentRequest.getQuickKey()); urlBuilder.append("&doc_type=d"); urlBuilder.append("&page=").append(documentRequest.getPage()); urlBuilder.append("&session_token=").append(imageToken.getToken()); if (documentRequest.getOptionalParameters() != null) { DocumentRequest.OptionalParameters optionalParameters = documentRequest.getOptionalParameters(); int sizeId = optionalParameters.getSizeId(); urlBuilder.append("&output=").append(optionalParameters.getOutput()); if (DocumentRequest.OptionalParameters.OUTPUT_IMG.equals(optionalParameters.getOutput()) && sizeId != -1) { urlBuilder.append("&size_id=").append(sizeId); } if (optionalParameters.isRequestingConversionOnly()) { urlBuilder.append("&request_conversion_only=1"); } if (optionalParameters.isRequestingJSONEncodedData()) { urlBuilder.append("&metadata=1"); } } url = urlBuilder.toString(); } public String getUrl() { return url; } public Map<String, Object> getHeaders() { return headers; } }