TIM v2.3.1版本的 MD5 值为:d6957e3ee7ce901ccc491cefdea0da8c

以下内容为反编译后的 c.java 源代码,内容仅作参考


package com.tencent.tmassistantbase.network;

import android.util.Log;
import java.io.InputStream;
import java.net.ConnectException;
import java.net.SocketTimeoutException;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.ConnectTimeoutException;
import org.apache.http.entity.ByteArrayEntity;
import org.apache.http.util.ByteArrayBuffer;
public class c implements Runnable {
    final byte[] f96824a;
    final PostHttpRequest f96825b;

    public c(PostHttpRequest postHttpRequest, byte[] bArr) {
        this.f96825b = postHttpRequest;
        this.f96824a = bArr;
    }

    @Override
    public void run() {
        Object obj;
        HttpEntity entity;
        HttpClient httpClient = null;
        obj = this.f96825b.mLock;
        synchronized (obj) {
            this.f96825b.mHttpPost = new HttpPost("http://masdk.3g.qq.com/");
            Log.i("BaseHttpRequest", "halleyTest serverUrl=http://masdk.3g.qq.com/");
            this.f96825b.mHttpPost.addHeader("User-Agent", "AssistantDownloader");
            this.f96825b.mHttpPost.setEntity(new ByteArrayEntity(this.f96824a));
            try {
                try {
                    try {
                        httpClient = HttpClientUtil.createHttpClient();
                        HttpClientUtil.setProxy(httpClient);
                        HttpResponse execute = httpClient.execute(this.f96825b.mHttpPost);
                        if (execute != null && execute.getStatusLine().getStatusCode() == 200 && (entity = execute.getEntity()) != null) {
                            ByteArrayBuffer byteArrayBuffer = new ByteArrayBuffer((int) entity.getContentLength());
                            InputStream content = entity.getContent();
                            byte[] bArr = new byte[2048];
                            while (true) {
                                int read = content.read(bArr);
                                if (read == -1) {
                                    break;
                                }
                                byteArrayBuffer.append(bArr, 0, read);
                            }
                            byte[] buffer = byteArrayBuffer.buffer();
                            if (buffer != null && buffer.length > 4) {
                                this.f96825b.onFinished(this.f96824a, buffer, 0);
                                this.f96825b.mHttpPost = null;
                                if (httpClient != null) {
                                    httpClient.getConnectionManager().shutdown();
                                }
                                return;
                            }
                        }
                        this.f96825b.mHttpPost = null;
                        if (httpClient != null) {
                            httpClient.getConnectionManager().shutdown();
                        }
                    } catch (ConnectTimeoutException e) {
                        e.printStackTrace();
                        this.f96825b.onFinished(this.f96824a, null, 601);
                        this.f96825b.mHttpPost = null;
                        if (httpClient != null) {
                            httpClient.getConnectionManager().shutdown();
                        }
                    }
                } catch (ConnectException e2) {
                    e2.printStackTrace();
                    this.f96825b.onFinished(this.f96824a, null, 1);
                    this.f96825b.mHttpPost = null;
                    if (httpClient != null) {
                        httpClient.getConnectionManager().shutdown();
                    }
                }
            } catch (SocketTimeoutException e3) {
                e3.printStackTrace();
                this.f96825b.onFinished(this.f96824a, null, 602);
                this.f96825b.mHttpPost = null;
                if (httpClient != null) {
                    httpClient.getConnectionManager().shutdown();
                }
            } catch (Exception e4) {
                e4.printStackTrace();
                this.f96825b.onFinished(this.f96824a, null, 604);
                this.f96825b.mHttpPost = null;
                if (httpClient != null) {
                    httpClient.getConnectionManager().shutdown();
                }
            }
        }
    }
}