private void endHttpClientActivity(HttpClientActivity httpClientActivity) { if (httpClientActivity != null) { httpClientActivity.endActivity(); } }
public RatingInfo getRateForServiceAsync(HashMap params) { String sessionIdFromRequest = params.get("SessionId").toString(); HttpClientActivity clientActivity = null; try { clientActivity = raSbbInterface.createHttpClientActivity(true, null); } catch (StartActivityException e) { tracer.severe("[xx] Failed creating HTTP Client Activity to send HTTP Request to Rating Engine."); return new RatingInfo(-1, sessionIdFromRequest); } ActivityContextInterface clientAci = httpClientAci.getActivityContextInterface(clientActivity); clientAci.attach(sbbContext.getSbbLocalObject()); params.put("startTime", System.currentTimeMillis()); HttpPost httpPost = buildHTTPRequest(params); // Asynchronous call clientActivity.execute(httpPost, params); tracer.info("[>>] Sent HTTP Request to Rating Client in asynchronous mode."); return null; }
public RatingInfo getRateForServiceSync(HashMap params) { String sessionIdFromRequest = params.get("SessionId").toString(); HttpClient client = raSbbInterface.getHttpClient(); long bmStart = System.currentTimeMillis(); HttpPost httpPost = buildHTTPRequest(params); // Synchronous call HttpResponse response = null; try { tracer.info("[>>] Sending HTTP Request to Rating Client in synchronous mode."); response = client.execute(httpPost); } catch (IOException e) { tracer.severe("[xx] Failed to send HTTP Request to Rating Engine."); return new RatingInfo(-1, sessionIdFromRequest); } tracer.info("[%%] Response from Rating Engine took " + (System.currentTimeMillis() - bmStart) + " milliseconds."); return buildRatingInfo(response, params); }
public void onResponseEvent(ResponseEvent event, ActivityContextInterface aci) { HttpResponse response = event.getHttpResponse(); if (tracer.isInfoEnabled()) { tracer.info("[<<] Received HTTP Response. Status Code = " + response.getStatusLine().getStatusCode()); if (tracer.isFineEnabled()) { try { tracer.fine("[<<] Received HTTP Response. Response Body = [" + EntityUtils.toString(response.getEntity()) + "]"); } catch (Exception e) { tracer.severe("[xx] Failed reading response body", e); } } } // end http activity ((HttpClientActivity) aci.getActivity()).endActivity(); // call back parent HashMap params = (HashMap) event.getRequestApplicationData(); RatingInfo ratInfo = buildRatingInfo(response, params); final DiameterChargingServer parent = (DiameterChargingServer) sbbContext.getSbbLocalObject().getParent(); parent.getRateForServiceResult(ratInfo); }
/** * Private methods */ private void sendXmlPayload(byte[] data) throws Exception { HttpClientActivity httpClientActivity = this.getHTTPClientActivity(); if (httpClientActivity == null) { httpClientActivity = this.httpClientProvider.createHttpClientActivity(false, null); this.httpClientActivityContextInterfaceFactory.getActivityContextInterface(httpClientActivity).attach( this.sbbContext.getSbbLocalObject()); } this.httpClientActivityContextInterfaceFactory.getActivityContextInterface(httpClientActivity).attach( this.sbbContext.getSbbLocalObject()); String route = this.getNetworkRoutingRule().getRuleUrl(); HttpPost uriRequest = createRequest(route, null, ACCEPTED_CONTENT_TYPE, null); // NOTE: here we assume that its text/xml utf8 encoded... bum. pushContent(uriRequest, ACCEPTED_CONTENT_TYPE, CONTENT_ENCODING, data); if (logger.isFineEnabled()) { logger.fine("Executing HttpPost=" + uriRequest + "\n" + new String(data)); } httpClientActivity.execute(uriRequest, null); }
HttpClientActivity activity = httpProvider.createHttpClientActivity( true, null); ActivityContextInterface aci = httpClientActivityContextInterfaceFactory .getActivityContextInterface(activity); aci.attach(this.sbbContext.getSbbLocalObject()); activity.execute(httpRequest, request);
HttpClientActivity activity = httpProvider.createHttpClientActivity( true, null); ActivityContextInterface aci = httpClientActivityContextInterfaceFactory .getActivityContextInterface(activity); aci.attach(this.sbbContext.getSbbLocalObject()); activity.execute(httpRequest, request);