コード例 #1
0
    public void writeTo(OutputStream outstream) throws IOException {
      outstream.write(topBytes);
      try {
        InputStream mediaStream = AppMonk.getContentResolver().openInputStream(media);
        IOTricks.copyStreamToStream(mediaStream, outstream, 32 * 1024);
        mediaStream.close();
      } catch (Exception e) {
      }

      outstream.write(bottomBytes);
    }
コード例 #2
0
    public long getContentLength() {
      int size = 0;

      size += topBytes.length;

      try {
        InputStream mediaStream = AppMonk.getContentResolver().openInputStream(media);
        size += IOTricks.countBytesInStream(mediaStream);
        mediaStream.close();
      } catch (Exception e) {
        return 0;
      }

      size += bottomBytes.length;

      return size;
    }
コード例 #3
0
  protected HttpUriRequest prepareRequest(
      int method, String baseUri, String path, HttpEntity paramsEntity) {
    URI uri = null;
    HttpUriRequest request = null;

    try {
      StringBuffer sb = new StringBuffer();

      if (method == GET) {
        sb.append(baseUri);
        sb.append(path);

        if (paramsEntity != null) {
          sb.append("?");
          try {
            IOTricks.copyStreamToStringBuffer(paramsEntity.getContent(), sb);
          } catch (IllegalStateException e) {
            Log.e(TAG, "Error preparing url", e);
            return null;
          } catch (IOException e) {
            Log.e(TAG, "Error preparing url", e);
            return null;
          }
        }
        uri = new URI(sb.toString());

        if (SimpleHttpClient.debug) Log.i(TAG, "GET " + uri.toString());
        if (SimpleHttpClient.debug && paramsEntity != null)
          Log.i(TAG, "-- " + IOTricks.StreamToString(paramsEntity.getContent()));

        request = new HttpGet(uri);
      } else if (method == POST) {
        sb.append(baseUri);
        sb.append(path);

        uri = new URI(sb.toString());

        if (SimpleHttpClient.debug) Log.i(TAG, "POST " + uri.toString());
        if (SimpleHttpClient.debug && paramsEntity != null)
          try {
            Log.i(TAG, "-- " + IOTricks.StreamToString(paramsEntity.getContent()));
          } catch (Exception e) {
          }

        request = new HttpPost(uri);

        request.getParams().setBooleanParameter("http.protocol.expect-continue", false);

        if (paramsEntity != null) {
          request.addHeader(paramsEntity.getContentType());
          ((HttpPost) request).setEntity(paramsEntity);
        } else {
          request.addHeader("Content-Type", "application/x-www-form-urlencoded");
        }
      } else if (method == PUT) {
        sb.append(baseUri);
        sb.append(path);

        uri = new URI(sb.toString());

        if (SimpleHttpClient.debug) Log.i(TAG, "PUT " + uri.toString());
        if (SimpleHttpClient.debug && paramsEntity != null)
          Log.i(TAG, "-- " + IOTricks.StreamToString(paramsEntity.getContent()));

        request = new HttpPut(uri);

        request.addHeader("Content-Type", "application/x-www-form-urlencoded");
        request.getParams().setBooleanParameter("http.protocol.expect-continue", false);

        if (paramsEntity != null) {
          request.addHeader(paramsEntity.getContentType());
          ((HttpPut) request).setEntity(paramsEntity);
        } else {
          request.addHeader("Content-Type", "application/x-www-form-urlencoded");
        }
      } else if (method == DELETE) {
        sb.append(baseUri);
        sb.append(path);

        if (paramsEntity != null) {
          sb.append("?");
          try {
            IOTricks.copyStreamToStringBuffer(paramsEntity.getContent(), sb);
          } catch (IllegalStateException e) {
            Log.e(TAG, "Error preparing url", e);
            return null;
          } catch (IOException e) {
            Log.e(TAG, "Error preparing url", e);
            return null;
          }
        }
        uri = new URI(sb.toString());

        if (SimpleHttpClient.debug) Log.i(TAG, "DELETE " + uri.toString());
        if (SimpleHttpClient.debug && paramsEntity != null)
          Log.i(TAG, "-- " + IOTricks.StreamToString(paramsEntity.getContent()));

        request = new HttpDelete(uri);
      }

      request.addHeader("User-Agent", userAgent());
    } catch (URISyntaxException e) {
      Log.e(TAG, "Invalid URI for " + baseUri + " / " + path + " ...", e);
    } catch (IllegalStateException e) {
      Log.e(TAG, "Illegal State for " + baseUri + " / " + path + " ...", e);
    } catch (IOException e) {
      Log.e(TAG, "IOException for " + baseUri + " / " + path + " ...", e);
    }

    return request;
  }