package com.metis.base.manager; import android.content.Context; import com.google.gson.reflect.TypeToken; import com.metis.base.framework.NetProxy; import com.metis.base.module.SimpleProvince; import com.metis.base.module.User; import com.metis.base.utils.Log; import com.metis.msnetworklib.contract.ReturnInfo; import java.util.List; /** * Created by Beak on 2015/10/10. */ public class UserManager extends AbsManager { private static final String TAG = UserManager.class.getSimpleName(); private static String URL_CENTER = "v1.1/UserCenter/GetUser?userId={userId}", URL_PROVINCE = "v1.1/UserCenter/Province"; private static UserManager sManager = null; public static synchronized UserManager getInstance (Context context) { if (sManager == null) { sManager = new UserManager(context.getApplicationContext()); } return sManager; } private UserManager(Context context) { super(context); } public void getUserInfo (long userId, final RequestCallback<User> callback) { String request = URL_CENTER.replace("{userId}", userId + ""); NetProxy.getInstance(getContext()).doGetRequest(request, new NetProxy.OnResponseListener() { @Override public void onResponse(String result, String requestId) { ReturnInfo<User> returnInfo = getGson().fromJson(result, new TypeToken<ReturnInfo<User>>(){}.getType()); if (callback != null) { callback.callback(returnInfo, requestId); } } }); } public void getProvince (final RequestCallback<List<SimpleProvince>> callback) { NetProxy.getInstance(getContext()).doGetRequest(URL_PROVINCE, new NetProxy.OnResponseListener() { @Override public void onResponse(String result, String requestId) { ReturnInfo<List<SimpleProvince>> returnInfo = getGson().fromJson(result, new TypeToken<ReturnInfo<List<SimpleProvince>>>(){}.getType()); if (callback != null) { callback.callback(returnInfo, requestId); } } }); } }