public static capex.http.HTTPClientRequest forGET(string url) { var v = new capex.http.HTTPClientRequest(); v.setMethod("GET"); v.setUrl(url); return(v); }
public static void execute(capex.http.HTTPClient client, capex.http.HTTPClientRequest request, capex.http.HTTPClientListener listener) { if (!(client != null)) { return; } client.executeRequest(request, listener); }
public static void executeForString(capex.http.HTTPClient client, capex.http.HTTPClientRequest request, System.Action <capex.http.HTTPClientResponse, string> listener) { var ll = new capex.http.HTTPClient.MyListener(); capex.http.HTTPClient.execute(client, request, (capex.http.HTTPClientListener)ll); if (listener != null) { listener(ll.getResponse(), cape.String.forUTF8Buffer(ll.getBuffer())); } }
public static void execute(capex.http.HTTPClient client, capex.http.HTTPClientRequest request, System.Action <capex.http.HTTPClientResponse> listener) { var ll = new capex.http.HTTPClient.MyListener(); capex.http.HTTPClient.execute(client, request, (capex.http.HTTPClientListener)ll); if (listener != null) { listener(ll.getResponse()); } }
public bool openConnection(capex.http.HTTPClientRequest request, capex.http.HTTPClientListener listener) { if (request == null) { if (listener != null) { listener.onError("No request"); } return(false); } return(openConnection(request.getProtocol(), request.getServerAddress(), request.getServerPort(), listener)); }
public override void executeRequest(capex.http.HTTPClientRequest request, capex.http.HTTPClientListener listener) { if (!sendRequest(request, listener)) { return; } if (!readResponse(listener, 30000)) { return; } if (object.Equals(request.getHeader("connection"), "close")) { closeConnection(listener); } }
public static capex.http.HTTPClientRequest forPOST(string url, string mimeType, byte[] data) { var v = new capex.http.HTTPClientRequest(); v.setMethod("POST"); v.setUrl(url); if (cape.String.isEmpty(mimeType) == false) { v.addHeader("Content-Type", mimeType); } if (data != null) { v.setBody((cape.SizedReader)cape.BufferReader.forBuffer(data)); } return(v); }
public virtual bool onStartRequest(capex.http.HTTPClientRequest request) { return(true); }
public bool sendRequest(capex.http.HTTPClientRequest request, capex.http.HTTPClientListener listener) { if (request == null) { if (listener != null) { listener.onError("No request"); } return(false); } if (listener != null && listener.onStartRequest(request) == false) { return(false); } if (openSocket != null) { if (!(object.Equals(request.getServerAddress(), openSocketAddress)) || !(object.Equals(request.getProtocol(), openSocketProtocol)) || request.getServerPort() != openSocketPort) { closeConnection(listener); } } if (openSocket == null) { openConnection(request, listener); if (!(openSocket != null)) { return(false); } } if (listener != null) { listener.onStatus("Sending request headers .."); } var rqs = request.toString(defaultUserAgent); var pww = cape.PrintWriterWrapper.forWriter((cape.Writer)openSocket); var whr = pww.print(rqs); if (listener != null) { listener.onStatus(null); } if (whr == false) { if (listener != null) { listener.onError("Failed to send HTTP request headers"); } closeConnection(listener); return(false); } var body = request.getBody(); if (body != null) { if (listener != null) { listener.onStatus("Sending request body .."); } var rv = true; var bf = new byte[4096 * 4]; while (true) { var r = body.read(bf); if (r < 1) { break; } if (openSocket.write(bf, r) < r) { if (listener != null) { listener.onError("Failed to send request body"); } closeConnection(listener); rv = false; break; } } if (listener != null) { listener.onStatus(null); } if (rv == false) { return(false); } } return(true); }
public abstract void executeRequest(capex.http.HTTPClientRequest request, capex.http.HTTPClientListener listener);