asasas

package com.jleo;

import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.dom4j.Document;
import org.dom4j.io.SAXReader;

public class Authenicator implements Runnable {
	public LoginAction loginAction;
	
	@Override
	public void run() {
		try {
			HttpClient client = new DefaultHttpClient();
			HttpPost request = new HttpPost("http://"+loginAction.getServer() + "/pickitup/login/login");
			List<NameValuePair> postParams = new ArrayList<NameValuePair>();
			postParams.add(new BasicNameValuePair("deviceId", loginAction.getAccount()));
			postParams.add(new BasicNameValuePair("devicePassword", loginAction.getPasswd()));
			UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParams);
			request.setEntity(formEntity);
			HttpResponse response = client.execute(request);
			int statusCode = response.getStatusLine().getStatusCode();
			if (statusCode >= 200 && statusCode <= 299) {
				Document document = new SAXReader().read(response.getEntity().getContent());
				String result = document.getRootElement().element("result").getTextTrim();
				if("failure".equals(result)){
					String reason = document.getRootElement().element("reason").getTextTrim();
					loginAction.onAuthenicateFail(reason);
				}
				else
					loginAction.onAuthenicateSuccess();
			} else {
				loginAction.onAuthenicateFail(statusCode+"");
			}
		} catch (Exception e) {
			loginAction.onAuthenicateFail(e.getMessage());
		} 
		
	}

	public Authenicator(LoginAction loginAction) {
		super();
		this.loginAction = loginAction;
	}

}

你可能感兴趣的:(apache)