mirror of
https://github.com/pierre42100/ComunicAndroid
synced 2024-11-23 13:59:29 +00:00
Can retrieve user informations on the server
This commit is contained in:
parent
6089b20b9a
commit
fe945c32e6
@ -44,15 +44,16 @@ public class MainActivity extends AppCompatActivity {
|
||||
//DEVELOPMENT : Try to get information about a user over the network
|
||||
GetUsersInfos uInfos = new GetUsersInfos(this, null);
|
||||
|
||||
//Get infos... about me!
|
||||
int uID = 1;
|
||||
//Get infos... about me! :)
|
||||
final int uID = 1;
|
||||
uInfos.get(uID, new GetUsersInfos.getUserInfosCallback() {
|
||||
@Override
|
||||
public void callback(UserInfo info) {
|
||||
if(info == null)
|
||||
Toast.makeText(MainActivity.this, "Failure !", Toast.LENGTH_SHORT).show();
|
||||
else
|
||||
Toast.makeText(MainActivity.this, "Success !", Toast.LENGTH_SHORT).show();
|
||||
else {
|
||||
Toast.makeText(MainActivity.this, uID + " is " + info.getFullName() + "!", Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -148,6 +148,8 @@ public abstract class APIRequestTask extends AsyncTask<APIRequestParameters, Voi
|
||||
|
||||
/**
|
||||
* Add the login tokens to an API request object
|
||||
*
|
||||
* @param params The parameters of the request to update
|
||||
*/
|
||||
private void addLoginTokens(APIRequestParameters params){
|
||||
|
||||
|
@ -6,6 +6,8 @@ import org.communiquons.android.comunic.client.api.APIRequestParameters;
|
||||
import org.communiquons.android.comunic.client.api.APIRequestTask;
|
||||
import org.communiquons.android.comunic.client.api.APIResponse;
|
||||
import org.communiquons.android.comunic.client.data.DatabaseHelper;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
/**
|
||||
* This class handles informations requests about user informations
|
||||
@ -61,10 +63,9 @@ public class GetUsersInfos {
|
||||
*
|
||||
* @param id The ID of the user to get informations from
|
||||
*/
|
||||
public void get(int id, getUserInfosCallback callback){
|
||||
public void get(final int id, final getUserInfosCallback callback){
|
||||
|
||||
//Perform a request on the API server
|
||||
|
||||
//Setup the request
|
||||
APIRequestParameters requestParameters = new APIRequestParameters(context, "user/getInfos");
|
||||
requestParameters.addParameter("userID", ""+id);
|
||||
@ -75,7 +76,25 @@ public class GetUsersInfos {
|
||||
@Override
|
||||
protected void onPostExecute(APIResponse result) {
|
||||
|
||||
UserInfo userInfos = null;
|
||||
|
||||
try {
|
||||
|
||||
//Try to extract user informations
|
||||
JSONObject userObject = result.getJSONObject().getJSONObject(""+id);
|
||||
|
||||
//Continue only if we could extract required informations
|
||||
if (userObject != null) {
|
||||
//Parse user informations
|
||||
userInfos = parse_user_json(userObject);
|
||||
}
|
||||
|
||||
} catch (JSONException e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
//Go to the next function
|
||||
callback.callback(userInfos);
|
||||
|
||||
}
|
||||
|
||||
@ -83,4 +102,37 @@ public class GetUsersInfos {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse a JSON object into a user object
|
||||
*
|
||||
* @param userObject Informations about the user in an object
|
||||
* @return User object in case of success, null else
|
||||
*/
|
||||
private UserInfo parse_user_json(JSONObject userObject){
|
||||
|
||||
//Check if the JSON object passed is null or not
|
||||
if(userObject == null)
|
||||
return null; //Failure
|
||||
|
||||
UserInfo userInfos = new UserInfo();
|
||||
|
||||
//Try to retrieve user informations
|
||||
try {
|
||||
|
||||
//Retrieve all user informations
|
||||
userInfos.setId(userObject.getInt("userID"));
|
||||
userInfos.setFirstName(userObject.getString("firstName"));
|
||||
userInfos.setLastName(userObject.getString("lastName"));
|
||||
userInfos.setAccountImageURL(userObject.getString("accountImage"));
|
||||
|
||||
} catch (JSONException e){
|
||||
e.printStackTrace();
|
||||
return null;
|
||||
}
|
||||
|
||||
//Return result
|
||||
return userInfos;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user