package com.campus.prime.core.service; import java.io.IOException; import org.apache.http.NameValuePair; import org.apache.http.client.ClientProtocolException; import static com.campus.prime.constant.AppConstant.TAG; import com.campus.prime.app.Auth; import com.campus.prime.core.MessagePage; import com.campus.prime.core.client.CampusClient; import com.campus.prime.core.client.CampusRequest; import com.campus.prime.core.client.CampusResponse; import com.campus.prime.core.client.Urls; import com.campus.prime.utils.CommonLog; import com.campus.prime.utils.LogFactory; public class MessageService extends CampusService { CommonLog log = LogFactory.createLog(TAG); public MessageService() { // TODO Auto-generated constructor stub super(); } public MessageService(CampusClient client){ super(client); } /** * get public timeline * @return * @throws ClientProtocolException * @throws IOException */ public MessagePage getPublic() throws ClientProtocolException, IOException{ CampusRequest request = createRequest(); request.setUri(Urls.MESSAGES_PULBIC_TIMELINE) .setParams(null) .setType(MessagePage.class); CampusResponse response = getClient().get(request); return (MessagePage)response.getBody(); } /** * get user's timeline * @param userId * @return * @throws ClientProtocolException * @throws IOException */ public MessagePage getUserById(int userId) throws ClientProtocolException, IOException{ MessagePage result; try { String url = Urls.MESSAGES_USER_TIMELINE_BY_ID + userId + '/'; log.i(url); result = getClient().setCredential(Auth.token).get(url,MessagePage.class,(NameValuePair[])null); log.i(result.toString()); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } return result; } /** * get username's timeline * @param username * @return */ public MessagePage getUserByName(String username){ MessagePage result; String url = Urls.MESSAGES_USER_TIMELINE_NY_NAME + username + '/'; log.i(url); try { result = getClient().setCredential(Auth.token).get(url,MessagePage.class,(NameValuePair[])null); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } return result; } /** * get current authed user's timeline * @return */ public MessagePage getUser(){ return getUserByName(Auth.username); } /** * get currentpage's next page * @param url * @return */ public MessagePage getNext(String url){ MessagePage result; try { result = getClient().get(url,MessagePage.class,(NameValuePair[])null); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } return result; } /** * get group's timeline * @param id * @return */ public MessagePage getGroup(int id){ MessagePage result; try{ String url = Urls.MESSAGES_GROUP_TIMELINE + id + '/'; log.i(url); result = getClient().setCredential(Auth.token).get(url,MessagePage.class,(NameValuePair[])null); }catch(Exception e){ e.printStackTrace(); return null; } return result; } /** * create a message * @return */ public MessagePage createMessage(){ return null; } /** * delete a message */ public void deleteMessage(){ } }