public static DropboxAPI.RequestAndResponse streamRequest(RESTUtility.RequestMethod paramRequestMethod, String paramString1, String paramString2, int paramInt, String[] paramArrayOfString, Session paramSession) { if (paramRequestMethod == RESTUtility.RequestMethod.GET) { paramRequestMethod = new HttpGet(buildURL(paramString1, paramInt, paramString2, paramArrayOfString)); paramSession.sign(paramRequestMethod); return new DropboxAPI.RequestAndResponse(paramRequestMethod, execute(paramSession, paramRequestMethod)); } paramRequestMethod = new HttpPost(buildURL(paramString1, paramInt, paramString2, null)); if ((paramArrayOfString != null) && (paramArrayOfString.length >= 2)) { if (paramArrayOfString.length % 2 != 0) { throw new IllegalArgumentException("Params must have an even number of elements."); } paramString1 = new ArrayList(); paramInt = 0; } for (;;) { if (paramInt >= paramArrayOfString.length) {} try { paramRequestMethod.setEntity(new UrlEncodedFormEntity(paramString1, "UTF-8")); } catch (UnsupportedEncodingException paramRequestMethod) { throw new DropboxException(paramRequestMethod); } if (paramArrayOfString[(paramInt + 1)] != null) { paramString1.add(new BasicNameValuePair(paramArrayOfString[paramInt], paramArrayOfString[(paramInt + 1)])); } paramInt += 2; } }
private static HttpClient updatedHttpClient(Session paramSession) { try { HttpClient localHttpClient = paramSession.getHttpClient(); updateClientProxy(localHttpClient, paramSession); return localHttpClient; } finally { paramSession = finally; throw paramSession; } }
private static void updateClientProxy(HttpClient paramHttpClient, Session paramSession) { paramSession = paramSession.getProxyInfo(); if ((paramSession != null) && (host != null) && (!host.equals(""))) { if (port < 0) {} for (paramSession = new HttpHost(host);; paramSession = new HttpHost(host, port)) { paramHttpClient.getParams().setParameter("http.route.default-proxy", paramSession); return; } } paramHttpClient.getParams().removeParameter("http.route.default-proxy"); }
public static HttpResponse execute(Session paramSession, HttpUriRequest paramHttpUriRequest, int paramInt) { HttpClient localHttpClient = updatedHttpClient(paramSession); paramSession.setRequestTimeout(paramHttpUriRequest); if (paramInt >= 0) { HttpConnectionParams.setSoTimeout(paramHttpUriRequest.getParams(), paramInt); } boolean bool = isRequestRepeatable(paramHttpUriRequest); Object localObject1 = null; paramInt = 0; for (;;) { Object localObject2; if (paramInt >= 5) { localObject2 = localObject1; label46: if (localObject2 != null) { break label129; } } try { throw new DropboxIOException("Apache HTTPClient encountered an error. No response, try again."); } catch (SSLException paramSession) { throw new DropboxSSLException(paramSession); try { localObject2 = localHttpClient.execute(paramHttpUriRequest); localObject1 = localObject2; } catch (NullPointerException localNullPointerException) { for (;;) {} } localObject2 = localObject1; if (localObject1 != null) { break label46; } updateClientProxy(localHttpClient, paramSession); if (!bool) { throw new DropboxProxyChangeException(); } } catch (IOException paramSession) { throw new DropboxIOException(paramSession); paramInt += 1; continue; paramInt = ((HttpResponse)localObject2).getStatusLine().getStatusCode(); if ((paramInt != 200) && (paramInt != 206)) { parseAsJSON((HttpResponse)localObject2); } return (HttpResponse)localObject2; } catch (OutOfMemoryError paramSession) { label129: throw new DropboxException(paramSession); } } }