public List<StepLog> getStepLog(Long stepCount, String feedURL) throws IOException { // Get steps details HttpGet httpGet = new HttpGet(feedURL + "?pageSize=" + stepCount); // hack !!! // Handle CSRF tokens cookies client.setCookieStore(handleCsrfCookies(client.getCookieStore())); // Authenticate if (OOBuildStep.getEncodedCredentials() != null) { httpGet.addHeader( "Authorization", "Basic " + new String(OOBuildStep.getEncodedCredentials())); } // Execute the request HttpResponse response = client.execute(httpGet); // Verify the response is OK Assert.isTrue( response.getStatusLine().getStatusCode() == 200, "Invalid response code [" + response.getStatusLine().getStatusCode() + "]"); String responseBody = EntityUtils.toString(response.getEntity()); List<StepLog> stepLog = gson.fromJson(responseBody, new TypeToken<List<StepLog>>() {}.getType()); // List<StepLog> stackTrace = createStackTrace(stepLog, "0"); // listener.annotate(new SimpleHtmlNote(stackTraceAsString(stackTrace))); // setJSONExecutionResult(responseBody); // responseBody = formatResult(responseBody); return stepLog; // return ""; }
public static String getUrl(String url, int maxRetries) throws IOException { String result = null; int retries = 0; DefaultHttpClient httpclient = new DefaultHttpClient(defaultHttpParams); httpclient.setCookieStore(null); HttpGet httpget = new HttpGet(url); while (retries <= maxRetries && result == null) { try { retries++; HttpEntity entity = httpclient.execute(httpget).getEntity(); if (entity != null) { result = EntityUtils.toString(entity).trim(); } } catch (SocketException se) { if (retries > maxRetries) { throw se; } else { Log.v(TAG, "SocketException, retrying " + retries); } } } return result; }
public static HttpClient getNewHttpClient() { try { KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType()); trustStore.load(null, null); SSLSocketFactory sf = new SSLSocketFactoryEx(trustStore); sf.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); HttpParams params = new BasicHttpParams(); HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1); HttpProtocolParams.setContentCharset(params, HTTP.UTF_8); HttpProtocolParams.setUserAgent( params, "Mozilla/5.0 (Windows; Windows NT 6.3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.65 Safari/537.36"); SchemeRegistry registry = new SchemeRegistry(); registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80)); registry.register(new Scheme("https", sf, 443)); ClientConnectionManager ccm = new ThreadSafeClientConnManager(params, registry); @SuppressWarnings("resource") DefaultHttpClient httpClient = new DefaultHttpClient(ccm, params); httpClient.setCookieStore(new BasicCookieStore()); httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 5000); httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 5000); return new DefaultHttpClient(ccm, params); } catch (Exception e) { return new DefaultHttpClient(); } }
public static synchronized DefaultHttpClient getThreadSafeClient() { if (clientThreadSafe != null) return clientThreadSafe; clientThreadSafe = new DefaultHttpClient(); ClientConnectionManager mgr = clientThreadSafe.getConnectionManager(); HttpParams params = clientThreadSafe.getParams(); // timeout // int timeoutConnection = 25000; int timeoutConnection = 10000; HttpConnectionParams.setConnectionTimeout(params, timeoutConnection); // int timeoutSocket = 25000; int timeoutSocket = 10000; HttpConnectionParams.setSoTimeout(params, timeoutSocket); clientThreadSafe = new DefaultHttpClient( new ThreadSafeClientConnManager(params, mgr.getSchemeRegistry()), params); // disable requery clientThreadSafe.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false)); // persistent cookies clientThreadSafe.setCookieStore(SmartLibMU.getCookieStore()); return clientThreadSafe; }
private Response doRequest(final Request<?> request, final HttpRequestBase fetcher) { if (fetcher == null) { return null; } List<Parameter> headers = request.getHeaders(); if (checkListOfParams(headers)) { for (Parameter parameter : headers) { Header header = new BasicHeader(parameter.getName(), parameter.getValue()); fetcher.addHeader(header); } } final DefaultHttpClient httpClient = getHttpClient(); List<Parameter> cookies = request.getCookies(); if (checkListOfParams(cookies)) { CookieStore cookieStore = httpClient.getCookieStore(); for (Parameter cookie : cookies) { cookieStore.addCookie(new BasicClientCookie(cookie.getName(), cookie.getValue())); } httpClient.setCookieStore(cookieStore); } return doRequest(fetcher, httpClient); }
/** * Adds a set of cookies to the HTTPClient. Pass in a HashMap of <String, Object> to add the * cookie values to the client. These cookies persist until removed. * * @param cookies a HashMap of cookies * @param url the domain URL of the cookie */ public void setCookies(HashMap<String, String> cookies, String url) { if (cookies == null) { return; } // Set cookies client.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.BROWSER_COMPATIBILITY); // Create cookie store BasicCookieStore store = (BasicCookieStore) (client.getCookieStore() == null ? new BasicCookieStore() : client.getCookieStore()); // Add cookies to request for (Map.Entry<String, String> entry : cookies.entrySet()) { BasicClientCookie cookie = new BasicClientCookie(entry.getKey(), entry.getValue()); if (url != null) { cookie.setDomain(url); } cookie.setPath("/"); store.addCookie(cookie); } // Add the cookie client.setCookieStore(store); }
public DefaultHttpClient getClientNoProxy() { httpclient = new DefaultHttpClient(cm); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 20000); httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 10000); httpclient.setCookieStore(new TwitterLoginCookieStore()); return httpclient; }
public DefaultHttpClient getClientByIpAndPort(String ip, int port) { httpclient = new DefaultHttpClient(cm); HttpHost proxy = new HttpHost(ip, port); httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 10000); httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 10000); httpclient.setCookieStore(new TwitterLoginCookieStore()); return httpclient; }
public DefaultHttpClient getClient() { httpclient = new DefaultHttpClient(cm); HttpHost proxy = new HttpHost("127.0.0.1", 8580); httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 20000); httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 10000); httpclient.setCookieStore(new TwitterLoginCookieStore()); return httpclient; }
public void loadCookies(File file) { try { FileInputStream fis = new FileInputStream(file); ObjectInputStream ois = new ObjectInputStream(fis); httpClient.setCookieStore((CookieStore) ois.readObject()); } catch (Exception e) { e.printStackTrace(); } }
/** Create clone of existing RLHttpClient object */ @Override public RLHttpClient clone() { RLHttpClient brother = new RLHttpClient(mConnectionTimeout, mSocketTimeout); if (mHttpClient != null) { CookieStore cookieStore = mHttpClient.getCookieStore(); DefaultHttpClient cloneHttpClient = (DefaultHttpClient) brother.getHttpClient(); cloneHttpClient.setCookieStore(cookieStore); } return brother; }
public NoahHi(String username, String password) throws IOException { this.username = username; this.password = password; HttpClientFactory httpClientFactory = new HttpClientFactory(); httpClient = httpClientFactory.generateClient(username, password); login(); welcome(); init(); messageHttpClient = new DefaultHttpClient(); messageHttpClient.setCookieStore(httpClient.getCookieStore()); // pick(); }
public DefaultHttpClient getClientNoProxy() { httpclient = new DefaultHttpClient(cm); // 通过SchemeRegistry将SSLSocketFactory注册到我们的HttpClient上 httpclient .getConnectionManager() .getSchemeRegistry() .register(new Scheme("https", socketFactory, 443)); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 30000); httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 30000); // httpclient.setHttpRequestRetryHandler(new myRetryHandler()); httpclient.setCookieStore(new GoogleLoginCookieStore()); return httpclient; }
public DefaultHttpClient getClientByIpAndPort(String ip, int port) { httpclient = new DefaultHttpClient(cm); // 通过SchemeRegistry将SSLSocketFactory注册到我们的HttpClient上 httpclient .getConnectionManager() .getSchemeRegistry() .register(new Scheme("https", socketFactory, 443)); HttpHost proxy = new HttpHost(ip, port); httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxy); httpclient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 30000); httpclient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 30000); httpclient.setCookieStore(new GoogleLoginCookieStore()); return httpclient; }
private String fetchData(String url) { StringBuilder data = new StringBuilder(); boolean isSuccess = false; HttpClient stageClient = new DefaultHttpClient(); HttpGet httpGet = new HttpGet(url); RailyatriCookies railyatriCookies = getRailyatriCookies(); if (railyatriCookies != null) { ((DefaultHttpClient) stageClient).setCookieSpecs(railyatriCookies.getCookieSpecRegistry()); ((DefaultHttpClient) stageClient).setCookieStore(railyatriCookies.getCookieStore()); } httpGet.setHeader("Accept", "application/json"); httpGet.setHeader( "User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.97 Safari/537.22"); httpGet.setHeader("Accept-Encoding", "gzip,deflate,sdch"); try { HttpResponse response = stageClient.execute(httpGet); StatusLine statusLine = response.getStatusLine(); int statusCode = statusLine.getStatusCode(); if (statusCode == 200) { HttpEntity entity = response.getEntity(); InputStream inputStream = entity.getContent(); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream)); String line; while ((line = bufferedReader.readLine()) != null) { data.append(line); isSuccess = true; } } else { Log.e(tag, "Failed to access: " + url + ". status code = " + statusCode); isSuccess = false; } } catch (ClientProtocolException clientProtocolException) { clientProtocolException.printStackTrace(); Log.e(tag, clientProtocolException.getMessage()); isSuccess = false; } catch (IOException ioException) { ioException.printStackTrace(); Log.e(tag, ioException.getMessage()); isSuccess = false; } if (isSuccess) { return data.toString(); } else { return null; } }
public static String getUrlByPost( String url, Map<String, String> params, Map<String, String> headers, int maxRetries) throws IOException { String result = null; int retries = 0; DefaultHttpClient httpclient = new DefaultHttpClient(defaultHttpParams); httpclient.setCookieStore(null); List<NameValuePair> formParams = new ArrayList<NameValuePair>(); if (params != null) { Set<Entry<String, String>> paramsSet = params.entrySet(); for (Entry<String, String> entry : paramsSet) { formParams.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); } } UrlEncodedFormEntity postEntity = new UrlEncodedFormEntity(formParams, UTF8); HttpPost httppost = new HttpPost(url); httppost.setEntity(postEntity); if (headers != null) { Set<Entry<String, String>> headersSet = headers.entrySet(); for (Entry<String, String> entry : headersSet) { httppost.setHeader(entry.getKey(), entry.getValue()); } } while (retries < maxRetries && result == null) { try { retries++; HttpEntity responseEntity = httpclient.execute(httppost).getEntity(); if (responseEntity != null) { result = EntityUtils.toString(responseEntity).trim(); } } catch (SocketException se) { if (retries > maxRetries) { throw se; } else { Log.v(TAG, "SocketException, retrying " + retries, se); } } } return result; }
private void initClient() { // TODO Auto-generated method stub client = new DefaultHttpClient(); int TIMEOUT = 30 * 1000; HttpParams params = client.getParams(); HttpConnectionParams.setConnectionTimeout(params, TIMEOUT); HttpConnectionParams.setSoTimeout(params, TIMEOUT); params.setParameter( "User-Agent", "Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20100101 Firefox/11.0"); params.setParameter( "http.useragent", "Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20100101 Firefox/11.0"); params.setParameter("Accept-Language", "zh-CN,zh;q=0.8"); params.setParameter("Accept-Encoding", "gzip,deflate,sdch"); params.setParameter( "Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"); client.setParams(params); BasicCookieStore localBasicCookieStore = new BasicCookieStore(); client.setCookieStore(localBasicCookieStore); }
public RestResponse execute(HttpRequestBase request, RestResponse restResponse) { if (restResponse == null) restResponse = new RestResponse(); HttpParams params = new BasicHttpParams(); HttpConnectionParams.setConnectionTimeout(params, Timeout); params.setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.BROWSER_COMPATIBILITY); params.setParameter(CoreProtocolPNames.USER_AGENT, UserAgent); DefaultHttpClient client = new DefaultHttpClient(params); client.setCookieStore(cookieJar); try { logCallDetails(request); HttpResponse response = client.execute(request); restResponse.setResponse(response); } catch (ClientProtocolException e) { restResponse.setException(e); } catch (IOException e) { restResponse.setException(e); } return restResponse; }
@Parameters({"redirectUris", "userId", "userSecret", "redirectUri", "hostnameVerifier"}) @Test public void sessionWorkFlow1( final String redirectUris, final String userId, final String userSecret, final String redirectUri, String hostnameVerifier) throws Exception { showTitle("sessionWorkFlow1"); // Register client RegisterRequest registerRequest = new RegisterRequest( ApplicationType.WEB, "oxAuth test app", StringUtils.spaceSeparatedToList(redirectUris)); registerRequest.setTokenEndpointAuthMethod(AuthenticationMethod.CLIENT_SECRET_BASIC); RegisterClient registerClient = new RegisterClient(registrationEndpoint); registerClient.setRequest(registerRequest); RegisterResponse registerResponse = registerClient.exec(); showClient(registerClient); assertEquals( registerResponse.getStatus(), 200, "Unexpected response code: " + registerResponse.getEntity()); assertNotNull(registerResponse.getClientId()); assertNotNull(registerResponse.getClientSecret()); assertNotNull(registerResponse.getRegistrationAccessToken()); assertNotNull(registerResponse.getClientIdIssuedAt()); assertNotNull(registerResponse.getClientSecretExpiresAt()); String clientId = registerResponse.getClientId(); String clientSecret = registerResponse.getClientSecret(); DefaultHttpClient httpClient = createHttpClient(HostnameVerifierType.fromString(hostnameVerifier)); CookieStore cookieStore = new BasicCookieStore(); httpClient.setCookieStore(cookieStore); ClientExecutor clientExecutor = new ApacheHttpClient4Executor(httpClient); AuthorizationRequest authorizationRequest1 = new AuthorizationRequest( Arrays.asList(ResponseType.CODE), clientId, Arrays.asList("openid", "profile", "email"), redirectUri, null); authorizationRequest1.setAuthUsername(userId); authorizationRequest1.setAuthPassword(userSecret); authorizationRequest1.getPrompts().add(Prompt.NONE); authorizationRequest1.setState("af0ifjsldkj"); authorizationRequest1.setRequestSessionState(true); AuthorizeClient authorizeClient1 = new AuthorizeClient(authorizationEndpoint); authorizeClient1.setRequest(authorizationRequest1); AuthorizationResponse authorizationResponse1 = authorizeClient1.exec(clientExecutor); showClient(authorizeClient1); assertEquals( authorizationResponse1.getStatus(), 302, "Unexpected response code: " + authorizationResponse1.getStatus()); assertNotNull(authorizationResponse1.getLocation(), "The location is null"); assertNotNull(authorizationResponse1.getCode(), "The authorization code is null"); assertNotNull(authorizationResponse1.getSessionState(), "The session state is null"); assertNotNull(authorizationResponse1.getState(), "The state is null"); assertNotNull(authorizationResponse1.getScope(), "The scope is null"); String code1 = authorizationResponse1.getCode(); String sessionState = authorizationResponse1.getSessionState(); // TV sends the code to the Backend // We don't use httpClient and cookieStore during this call //////////////////////////////////////////////// // Backend 1 side. Code 1 // //////////////////////////////////////////////// // Get the access token TokenClient tokenClient1 = new TokenClient(tokenEndpoint); TokenResponse tokenResponse1 = tokenClient1.execAuthorizationCode(code1, redirectUri, clientId, clientSecret); showClient(tokenClient1); assertEquals( tokenResponse1.getStatus(), 200, "Unexpected response code: " + tokenResponse1.getStatus()); assertNotNull(tokenResponse1.getEntity(), "The entity is null"); assertNotNull(tokenResponse1.getAccessToken(), "The access token is null"); assertNotNull(tokenResponse1.getExpiresIn(), "The expires in value is null"); assertNotNull(tokenResponse1.getTokenType(), "The token type is null"); assertNotNull(tokenResponse1.getRefreshToken(), "The refresh token is null"); String accessToken1 = tokenResponse1.getAccessToken(); // Get the user's claims UserInfoClient userInfoClient1 = new UserInfoClient(userInfoEndpoint); UserInfoResponse userInfoResponse1 = userInfoClient1.execUserInfo(accessToken1); showClient(userInfoClient1); assertEquals( userInfoResponse1.getStatus(), 200, "Unexpected response code: " + userInfoResponse1.getStatus()); assertNotNull( userInfoResponse1.getClaim(JwtClaimName.SUBJECT_IDENTIFIER), "Unexpected result: subject not found"); assertNotNull( userInfoResponse1.getClaim(JwtClaimName.NAME), "Unexpected result: name not found"); assertNotNull( userInfoResponse1.getClaim(JwtClaimName.GIVEN_NAME), "Unexpected result: given_name not found"); assertNotNull( userInfoResponse1.getClaim(JwtClaimName.FAMILY_NAME), "Unexpected result: family_name not found"); assertNotNull( userInfoResponse1.getClaim(JwtClaimName.EMAIL), "Unexpected result: email not found"); //////////////////////////////////////////////// // TV side. Code 2 // //////////////////////////////////////////////// AuthorizationRequest authorizationRequest2 = new AuthorizationRequest( Arrays.asList(ResponseType.CODE), clientId, Arrays.asList("openid", "profile", "email"), redirectUri, null); authorizationRequest2.getPrompts().add(Prompt.NONE); authorizationRequest2.setState("af0ifjsldkj"); authorizationRequest2.setSessionState(sessionState); AuthorizeClient authorizeClient2 = new AuthorizeClient(authorizationEndpoint); authorizeClient2.setRequest(authorizationRequest2); AuthorizationResponse authorizationResponse2 = authorizeClient2.exec(clientExecutor); showClient(authorizeClient2); assertEquals( authorizationResponse2.getStatus(), 302, "Unexpected response code: " + authorizationResponse2.getStatus()); assertNotNull(authorizationResponse2.getLocation(), "The location is null"); assertNotNull(authorizationResponse2.getCode(), "The authorization code is null"); assertNotNull(authorizationResponse2.getState(), "The state is null"); assertNotNull(authorizationResponse2.getScope(), "The scope is null"); String code2 = authorizationResponse2.getCode(); // TV sends the code to the Backend // We don't use httpClient and cookieStore during this call //////////////////////////////////////////////// // Backend 2 side. Code 2 // //////////////////////////////////////////////// // Get the access token TokenClient tokenClient2 = new TokenClient(tokenEndpoint); TokenResponse tokenResponse2 = tokenClient2.execAuthorizationCode(code2, redirectUri, clientId, clientSecret); showClient(tokenClient2); assertEquals( tokenResponse2.getStatus(), 200, "Unexpected response code: " + tokenResponse2.getStatus()); assertNotNull(tokenResponse2.getEntity(), "The entity is null"); assertNotNull(tokenResponse2.getAccessToken(), "The access token is null"); assertNotNull(tokenResponse2.getExpiresIn(), "The expires in value is null"); assertNotNull(tokenResponse2.getTokenType(), "The token type is null"); assertNotNull(tokenResponse2.getRefreshToken(), "The refresh token is null"); String accessToken2 = tokenResponse2.getAccessToken(); // Get the user's claims UserInfoClient userInfoClient2 = new UserInfoClient(userInfoEndpoint); UserInfoResponse userInfoResponse2 = userInfoClient2.execUserInfo(accessToken2); showClient(userInfoClient2); assertEquals( userInfoResponse2.getStatus(), 200, "Unexpected response code: " + userInfoResponse2.getStatus()); assertNotNull( userInfoResponse2.getClaim(JwtClaimName.SUBJECT_IDENTIFIER), "Unexpected result: subject not found"); assertNotNull( userInfoResponse2.getClaim(JwtClaimName.NAME), "Unexpected result: name not found"); assertNotNull( userInfoResponse2.getClaim(JwtClaimName.GIVEN_NAME), "Unexpected result: given_name not found"); assertNotNull( userInfoResponse2.getClaim(JwtClaimName.FAMILY_NAME), "Unexpected result: family_name not found"); assertNotNull( userInfoResponse2.getClaim(JwtClaimName.EMAIL), "Unexpected result: email not found"); }
/** * http网页内容抓取 * * @param url String 网页地址 * @param timeoutSeconds int 超时时间(单位秒) * @param params Map<String, String> HTTPHead参数 * @param cookieStore CookieStore 网页cookie * @return */ public static String sendGet( Context mContext, String url, int timeoutSeconds, Map<String, String> params, CookieStore cookieStore, boolean isSaveCookie) { String result = null; Log.v(TAG, "httpGet start to get url:" + url); HttpParams httpParams = new BasicHttpParams(); HttpContext context = new BasicHttpContext(); DefaultHttpClient httpClient = new DefaultHttpClient(httpParams); WifiManager wifiManager = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE); if (!wifiManager.isWifiEnabled()) { Uri uri = Uri.parse("content://telephony/carriers/preferapn"); // 获取当前正在使用的APN接入点 Cursor mCursor = mContext.getContentResolver().query(uri, null, null, null, null); if (mCursor != null && mCursor.getCount() > 0) { mCursor.moveToNext(); String proxyStr = mCursor.getString(mCursor.getColumnIndex("proxy")); if (proxyStr != null && proxyStr.trim().length() > 0) { Log.v(TAG, "wap proxy:" + proxyStr); HttpHost proxy = new HttpHost(proxyStr, 80); httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, proxy); } } } HttpConnectionParams.setConnectionTimeout(httpParams, timeoutSeconds * 1000); HttpConnectionParams.setSoTimeout(httpParams, timeoutSeconds * 1000); HttpConnectionParams.setSocketBufferSize(httpParams, 8192); HttpClientParams.setCookiePolicy(httpClient.getParams(), CookiePolicy.BROWSER_COMPATIBILITY); if (cookieStore != null) { httpClient.setCookieStore(cookieStore); context.setAttribute(ClientContext.COOKIE_STORE, cookieStore); } HttpGet httpGet = new HttpGet(url); httpGet.setHeader( "User-Agent", "Mozilla/5.0 (Linux; U; Android " + Build.VERSION.RELEASE + "; Zh-cn; " + Build.MODEL + " )AppleWebKit/528.5+(KHTML,like Gecko)Version/3.1.2 Mobile Safari/525.20.1"); if (params != null) { Iterator<String> ite = params.keySet().iterator(); while (ite.hasNext()) { String key = (String) ite.next(); String value = (String) params.get(key); httpGet.addHeader(key, value); } } try { HttpResponse response = httpClient.execute(httpGet, context); if (isSaveCookie) { CookieStore cookieStores = httpClient.getCookieStore(); if (cookieStores != null) { List<Cookie> listCookie = cookieStores.getCookies(); int len = listCookie.size(); for (int i = 0; i < len; i++) { Cookie cookie = listCookie.get(i); StringBuffer sb = new StringBuffer(); sb.append(cookie.getName() + "=" + cookie.getValue() + ";\n"); sb.append("domain=" + cookie.getDomain() + ";\n"); sb.append("path=" + cookie.getPath() + ";\n"); sb.append("expiry=" + cookie.getExpiryDate() + ";\n"); Log.i(TAG, sb.toString()); } } // Config.getInstance().setCookieStroe(httpClient.getCookieStore()); } int statusCode = response.getStatusLine().getStatusCode(); if (statusCode == 200) { result = EntityUtils.toString(response.getEntity()); } else { Log.v(TAG, "result:" + EntityUtils.toString(response.getEntity())); result = MessageModel.RESPONSE_EXCEPTION; Log.e(TAG, "Network Exception, statusCode:" + statusCode); } } catch (Exception e) { if (e instanceof SocketTimeoutException) { result = MessageModel.CONNECTION_TIMEOUT; Log.e(TAG, "CONNECTION_TIMEOUT---- Network Exception:" + e.getMessage() + " url:" + url); e.printStackTrace(); } else { result = MessageModel.RESPONSE_EXCEPTION; Log.e(TAG, "RESPONSE_EXCEPTION ---- Network Exception:" + e.getMessage() + " url:" + url); e.printStackTrace(); } } finally { httpClient.getConnectionManager().shutdown(); } Log.v(TAG, "httpGet get result:" + result); return result; }
public WaitExecutionResult waitExecutionComplete( TriggeredExecutionDetailsVO triggeredExecutionDetailsVO, String timeout, BuildListener listener, String urlString) throws InterruptedException, IOException { feedURL = triggeredExecutionDetailsVO.getFeedUrl(); // close connection // is.close(); // Read run details long defaultTimeout = 600000; Long timeoutLong = timeout.isEmpty() ? defaultTimeout : Long.parseLong(timeout); listener.getLogger().println("Flow execution timeout : " + timeoutLong + " ms"); // Wait the run will completed List<ExecutionSummaryVO> executionSummary; ExecutionStatusState executionStatusState; int prevStepCount = 0; Boolean newLine = false; do { Long sleepIntervalInMs = timeoutLong > 5000 ? 5000 : timeoutLong; timeoutLong -= (sleepIntervalInMs); Thread.sleep(sleepIntervalInMs); // Get run details HttpGet httpGet = new HttpGet(urlString + EXECUTIONS_API + runId + EXECUTE_SUMMARY_POSTFIX); // Handle CSRF tokens cookies client.setCookieStore(handleCsrfCookies(client.getCookieStore())); // Authenticate if (OOBuildStep.getEncodedCredentials() != null) { httpGet.addHeader( "Authorization", "Basic " + new String(OOBuildStep.getEncodedCredentials())); } // Execute the request HttpResponse response = client.execute(httpGet); // Verify the response is OK Assert.isTrue( response.getStatusLine().getStatusCode() == 200, "Invalid response code [" + response.getStatusLine().getStatusCode() + "]"); String responseBody = EntityUtils.toString(response.getEntity()); executionSummary = gson.fromJson(responseBody, new TypeToken<List<ExecutionSummaryVO>>() {}.getType()); executionStatusState = executionSummary.get(0).getStatus(); // get steps details for steps progress httpGet = new HttpGet(urlString + EXECUTIONS_API + runId + EXECUTION_STEPS_COUNT_POSTFIX); // Handle CSRF tokens cookies client.setCookieStore(handleCsrfCookies(client.getCookieStore())); // Authenticate if (OOBuildStep.getEncodedCredentials() != null) { httpGet.addHeader( "Authorization", "Basic " + new String(OOBuildStep.getEncodedCredentials())); } // Execute the request response = client.execute(httpGet); // Verify the response is OK Assert.isTrue( response.getStatusLine().getStatusCode() == 200, "Invalid response code [" + response.getStatusLine().getStatusCode() + "]"); responseBody = EntityUtils.toString(response.getEntity()); // printing steps progress int currentStepCount = gson.fromJson(responseBody, new TypeToken<Integer>() {}.getType()); if (currentStepCount > prevStepCount) { if (newLine) { listener.getLogger().println(); } listener.getLogger().println(currentStepCount + " steps were completed"); newLine = false; } else { listener.getLogger().print("."); newLine = true; } prevStepCount = currentStepCount; } while (timeoutLong > 0 && (executionStatusState.equals(ExecutionStatusState.RUNNING) || executionStatusState.equals(ExecutionStatusState.PENDING_PAUSE))); // get full status name String runResult; if (executionStatusState.equals(ExecutionStatusState.COMPLETED)) { runResult = executionStatusState + " - " + executionSummary.get(0).getResultStatusType(); } else { // TODO handle also paused runs runResult = executionStatusState.name(); } WaitExecutionResult waitExecutionResult = new WaitExecutionResult(); waitExecutionResult.setLastExecutionResult(executionSummary.get(0).getResultStatusType()); waitExecutionResult.setLastExecutionStatus(executionStatusState); waitExecutionResult.setTimedOut( timeoutLong <= 0 && (executionStatusState.equals(ExecutionStatusState.RUNNING) || executionStatusState.equals(ExecutionStatusState.PENDING_PAUSE))); waitExecutionResult.setStepCount(prevStepCount); return waitExecutionResult; }
@Parameters({"redirectUris", "redirectUri", "userInum", "userEmail", "hostnameVerifier"}) @Test public void sessionWorkFlow2( final String redirectUris, final String redirectUri, final String userInum, final String userEmail, final String hostnameVerifier) throws Exception { showTitle("sessionWorkFlow2"); // Register client RegisterRequest registerRequest = new RegisterRequest( ApplicationType.WEB, "oxAuth test app", StringUtils.spaceSeparatedToList(redirectUris)); registerRequest.setTokenEndpointAuthMethod(AuthenticationMethod.CLIENT_SECRET_POST); RegisterClient registerClient = new RegisterClient(registrationEndpoint); registerClient.setRequest(registerRequest); RegisterResponse registerResponse = registerClient.exec(); showClient(registerClient); assertEquals( registerResponse.getStatus(), 200, "Unexpected response code: " + registerResponse.getEntity()); assertNotNull(registerResponse.getClientId()); assertNotNull(registerResponse.getClientSecret()); assertNotNull(registerResponse.getRegistrationAccessToken()); assertNotNull(registerResponse.getClientIdIssuedAt()); assertNotNull(registerResponse.getClientSecretExpiresAt()); String clientId = registerResponse.getClientId(); String clientSecret = registerResponse.getClientSecret(); DefaultHttpClient httpClient = createHttpClient(HostnameVerifierType.fromString(hostnameVerifier)); CookieStore cookieStore = new BasicCookieStore(); httpClient.setCookieStore(cookieStore); ClientExecutor clientExecutor = new ApacheHttpClient4Executor(httpClient); // Authorization code flow to authenticate on B1 AuthorizationRequest authorizationRequest1 = new AuthorizationRequest( Arrays.asList(ResponseType.CODE), clientId, Arrays.asList("openid", "profile", "email"), redirectUri, null); authorizationRequest1.addCustomParameter("mail", userEmail); authorizationRequest1.addCustomParameter("inum", userInum); authorizationRequest1.getPrompts().add(Prompt.NONE); authorizationRequest1.setState("af0ifjsldkj"); authorizationRequest1.setAuthorizationMethod(AuthorizationMethod.FORM_ENCODED_BODY_PARAMETER); authorizationRequest1.setRequestSessionState(true); AuthorizeClient authorizeClient1 = new AuthorizeClient(authorizationEndpoint); authorizeClient1.setRequest(authorizationRequest1); AuthorizationResponse authorizationResponse1 = authorizeClient1.exec(clientExecutor); showClient(authorizeClient1); assertEquals( authorizationResponse1.getStatus(), 302, "Unexpected response code: " + authorizationResponse1.getStatus()); assertNotNull(authorizationResponse1.getLocation(), "The location is null"); assertNotNull(authorizationResponse1.getCode(), "The authorization code is null"); assertNotNull(authorizationResponse1.getSessionState(), "The session id is null"); assertNotNull(authorizationResponse1.getState(), "The state is null"); assertNotNull(authorizationResponse1.getScope(), "The scope is null"); String authorizationCode1 = authorizationResponse1.getCode(); String sessionState = authorizationResponse1.getSessionState(); TokenRequest tokenRequest1 = new TokenRequest(GrantType.AUTHORIZATION_CODE); tokenRequest1.setCode(authorizationCode1); tokenRequest1.setRedirectUri(redirectUri); tokenRequest1.setAuthUsername(clientId); tokenRequest1.setAuthPassword(clientSecret); tokenRequest1.setAuthenticationMethod(AuthenticationMethod.CLIENT_SECRET_POST); TokenClient tokenClient1 = new TokenClient(tokenEndpoint); tokenClient1.setRequest(tokenRequest1); TokenResponse tokenResponse1 = tokenClient1.exec(); showClient(tokenClient1); assertEquals( tokenResponse1.getStatus(), 200, "Unexpected response code: " + tokenResponse1.getStatus()); assertNotNull(tokenResponse1.getEntity(), "The entity is null"); assertNotNull(tokenResponse1.getAccessToken(), "The access token is null"); assertNotNull(tokenResponse1.getExpiresIn(), "The expires in value is null"); assertNotNull(tokenResponse1.getTokenType(), "The token type is null"); assertNotNull(tokenResponse1.getRefreshToken(), "The refresh token is null"); // User wants to authenticate on B2 (without sending its credentials) AuthorizationRequest authorizationRequest2 = new AuthorizationRequest( Arrays.asList(ResponseType.CODE), clientId, Arrays.asList("openid", "profile", "email"), redirectUri, null); authorizationRequest2.getPrompts().add(Prompt.NONE); authorizationRequest2.setState("af0ifjsldkj"); authorizationRequest2.setSessionState(sessionState); AuthorizeClient authorizeClient2 = new AuthorizeClient(authorizationEndpoint); authorizeClient2.setRequest(authorizationRequest2); AuthorizationResponse authorizationResponse2 = authorizeClient2.exec(clientExecutor); showClient(authorizeClient2); assertEquals( authorizationResponse2.getStatus(), 302, "Unexpected response code: " + authorizationResponse2.getStatus()); assertNotNull(authorizationResponse2.getLocation(), "The location is null"); assertNotNull(authorizationResponse2.getCode(), "The authorization code is null"); assertNotNull(authorizationResponse2.getState(), "The state is null"); assertNotNull(authorizationResponse2.getScope(), "The scope is null"); String authorizationCode2 = authorizationResponse2.getCode(); TokenRequest tokenRequest2 = new TokenRequest(GrantType.AUTHORIZATION_CODE); tokenRequest2.setCode(authorizationCode2); tokenRequest2.setRedirectUri(redirectUri); tokenRequest2.setAuthUsername(clientId); tokenRequest2.setAuthPassword(clientSecret); tokenRequest2.setAuthenticationMethod(AuthenticationMethod.CLIENT_SECRET_POST); TokenClient tokenClient2 = new TokenClient(tokenEndpoint); tokenClient2.setRequest(tokenRequest2); TokenResponse tokenResponse2 = tokenClient2.exec(); showClient(tokenClient2); assertEquals( tokenResponse2.getStatus(), 200, "Unexpected response code: " + tokenResponse2.getStatus()); assertNotNull(tokenResponse2.getEntity(), "The entity is null"); assertNotNull(tokenResponse2.getAccessToken(), "The access token is null"); assertNotNull(tokenResponse2.getExpiresIn(), "The expires in value is null"); assertNotNull(tokenResponse2.getTokenType(), "The token type is null"); assertNotNull(tokenResponse2.getRefreshToken(), "The refresh token is null"); // User wants to authenticate on B3 (without sending its credentials) AuthorizationRequest authorizationRequest3 = new AuthorizationRequest( Arrays.asList(ResponseType.CODE), clientId, Arrays.asList("openid", "profile", "email"), redirectUri, null); authorizationRequest3.getPrompts().add(Prompt.NONE); authorizationRequest3.setState("af0ifjsldkj"); authorizationRequest3.setSessionState(sessionState); AuthorizeClient authorizeClient3 = new AuthorizeClient(authorizationEndpoint); authorizeClient3.setRequest(authorizationRequest3); AuthorizationResponse authorizationResponse3 = authorizeClient2.exec(clientExecutor); showClient(authorizeClient3); assertEquals( authorizationResponse3.getStatus(), 302, "Unexpected response code: " + authorizationResponse3.getStatus()); assertNotNull(authorizationResponse3.getLocation(), "The location is null"); assertNotNull(authorizationResponse3.getCode(), "The authorization code is null"); assertNotNull(authorizationResponse3.getState(), "The state is null"); assertNotNull(authorizationResponse3.getScope(), "The scope is null"); String authorizationCode3 = authorizationResponse3.getCode(); TokenRequest tokenRequest3 = new TokenRequest(GrantType.AUTHORIZATION_CODE); tokenRequest3.setCode(authorizationCode3); tokenRequest3.setRedirectUri(redirectUri); tokenRequest3.setAuthUsername(clientId); tokenRequest3.setAuthPassword(clientSecret); tokenRequest3.setAuthenticationMethod(AuthenticationMethod.CLIENT_SECRET_POST); TokenClient tokenClient3 = new TokenClient(tokenEndpoint); tokenClient3.setRequest(tokenRequest3); TokenResponse tokenResponse3 = tokenClient3.exec(); showClient(tokenClient3); assertEquals( tokenResponse3.getStatus(), 200, "Unexpected response code: " + tokenResponse3.getStatus()); assertNotNull(tokenResponse3.getEntity(), "The entity is null"); assertNotNull(tokenResponse3.getAccessToken(), "The access token is null"); assertNotNull(tokenResponse3.getExpiresIn(), "The expires in value is null"); assertNotNull(tokenResponse3.getTokenType(), "The token type is null"); assertNotNull(tokenResponse3.getRefreshToken(), "The refresh token is null"); }
public TriggeredExecutionDetailsVO run10x( String selectedFlowUUID, List<OOArg> argsToUse, String urlString, String timeout, BuildListener listener, String runName) throws IOException, InterruptedException { final HttpPost httpPost = new HttpPost(urlString + EXECUTIONS_API); // Convert inputs to the required type Map<String, String> inputs = new HashMap<String, String>(); for (OOArg arg : argsToUse) { inputs.put(arg.getName(), arg.getValue()); } // Create the POST object and add the parameters ExecutionVO executionVO = new ExecutionVO(); executionVO.setUuid(selectedFlowUUID); if (runName != null && !runName.equals("")) executionVO.setRunName(runName); executionVO.setInputs(inputs); String body = gson.toJson(executionVO); StringEntity entity = new StringEntity(body, "UTF-8"); httpPost.setEntity(entity); // Authenticate if (OOBuildStep.getEncodedCredentials() != null) { httpPost.addHeader( "Authorization", "Basic " + new String(OOBuildStep.getEncodedCredentials())); } // Add relevant headers httpPost.setHeader( "Content-Type", "application/json"); // this is mandatory in order for the request to work // Handle CSRF tokens cookies client.setCookieStore(handleCsrfCookies(client.getCookieStore())); // Execute the request HttpResponse response = client.execute(httpPost); // Verify the response is 201 Assert.isTrue( response.getStatusLine().getStatusCode() == 201, "Invalid response code [" + response.getStatusLine().getStatusCode() + "]"); // Read the response body String responseBody = EntityUtils.toString(response.getEntity()); // HttpEntity responseEntity = response.getEntity(); // InputStream is = responseEntity.getContent(); // Extract data from response // JsonObject element = (JsonObject) // (parser.parse(OOAccessibilityUtils.convertStreamToString(is))); TriggeredExecutionDetailsVO triggeredExecutionDetailsVO = gson.fromJson(responseBody, TriggeredExecutionDetailsVO.class); runId = triggeredExecutionDetailsVO.getExecutionId(); listener.getLogger().println("Run ID : " + runId); runURL = triggeredExecutionDetailsVO.getFeedUrl().split("/oo/")[0] + "/oo/#/runtimeWorkspace/runs/" + triggeredExecutionDetailsVO.getExecutionId(); listener.getLogger().println("Execution URL " + runURL); return triggeredExecutionDetailsVO; }
public static File fileDownLoad( String uri, String fileDirect, String fileName, final Context context, ProgressDialog pd) { File file = null; DefaultHttpClient client = new DefaultHttpClient(); HttpParams httParams = client.getParams(); HttpConnectionParams.setConnectionTimeout(httParams, 20000); HttpConnectionParams.setSoTimeout(httParams, 20000); HttpProtocolParams.setContentCharset(httParams, HTTP.UTF_8); HttpProtocolParams.setUseExpectContinue(httParams, false); if (OrongApplication.cookieStore != null) { client.setCookieStore(OrongApplication.cookieStore); } HttpGet get = new HttpGet(uri); try { HttpResponse responese = client.execute(get); int responeseCode = responese.getStatusLine().getStatusCode(); if (responeseCode == HttpStatus.SC_OK) { HttpEntity httpentity = responese.getEntity(); int max = (int) httpentity.getContentLength(); pd.setMax(max); if (fileDirect != null) { File dire = new File(fileDirect); if (!dire.exists()) { dire.mkdirs(); } if (dire.exists()) { if (fileName == null) { fileName = uri.substring(uri.lastIndexOf("/")); if (!fileName.endsWith(".apk")) { fileName = fileName + ".apk"; } } else { fileName = "/" + fileName; } file = new File(dire + fileName); file.createNewFile(); InputStream is = httpentity.getContent(); FileOutputStream fos = new FileOutputStream(file); byte[] buffer = new byte[1024]; int len = 0; int total = 0; while ((len = is.read(buffer)) != -1) { fos.write(buffer, 0, len); total += len; pd.setProgress(total); } if (total == max) { pd.dismiss(); } fos.flush(); fos.close(); is.close(); } } } } catch (ClientProtocolException e) { e.printStackTrace(); return null; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } return file; }