public void handleResponse(JSONObject jo) {
		try {
			String op = jo.getString(Field.OPERATION_TYPE);
			if (op.equals(OperationTypes.COMM_RESP)) {
				boolean succeed = jo.getBoolean(Field.SUCCEED);
				String msg = jo.getString(Field.MESSAGE);
				if (succeed) {
					out.println("Succeed!");
				} else {
					out.println("Failed!");
				}
				out.println(msg);
			} else if (op.equals(OperationTypes.LOGIN_RESP)) {
				boolean succeed = jo.getBoolean(Field.SUCCEED);
				String msg = jo.getString(Field.MESSAGE);
				if (succeed) {
					isLoggedIn = true;
					out.println("Succeed!");
				} else {
					out.println("Failed!");
				}
				out.println(msg);
			} else if (op.equals(OperationTypes.LOGOUT_RESP)) {
				boolean succeed = jo.getBoolean(Field.SUCCEED);
				String msg = jo.getString(Field.MESSAGE);
				if (succeed) {
					isLoggedIn = false;
					out.println("Succeed!");
				} else {
					out.println("Failed!");
				}
				out.println(msg);
			} else if (op.equals(OperationTypes.FEED_RESP)) {
				JSONArray feeds = jo.getJSONArray(Field.FEEDS);
				for (int i = 0, n = feeds.length(); i < n; ++i) {
					JSONObject f = feeds.getJSONObject(i);
					out.print(f.getString(Field.AUTHOR));
					out.println(f.getString(Field.DATETIME));
					out.println(f.getString(Field.CONTENT));
				}
			}
		} catch (JSONException e) {
			e.printStackTrace();
		}
	}