thelittlewozniak

Untitled

Jan 12th, 2019
500
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.71 KB | None | 0 0
  1. package com.thelittlewozniak.theitguys;
  2.  
  3. import android.app.Activity;
  4. import android.content.Intent;
  5. import android.os.AsyncTask;
  6.  
  7. import com.fasterxml.jackson.core.type.TypeReference;
  8. import com.fasterxml.jackson.databind.ObjectMapper;
  9. import com.thelittlewozniak.theitguys.pojo.Utilisateur;
  10.  
  11. import java.io.DataOutputStream;
  12. import java.io.IOException;
  13. import java.io.InputStream;
  14. import java.io.InputStreamReader;
  15. import java.net.HttpURLConnection;
  16. import java.net.URL;
  17. import java.util.Scanner;
  18.  
  19. /**
  20.  * Created by natha on 1/12/2019.
  21.  */
  22.  
  23. public class LoginAsyncTask extends AsyncTask<String,String,Utilisateur> {
  24.     private Activity activity;
  25.     private Intent intent;
  26.     public LoginAsyncTask(Activity act){
  27.         this.activity=act;
  28.     }
  29.     @Override
  30.     protected Utilisateur doInBackground(String... strings) {
  31.         Utilisateur u=null;
  32.         try{
  33.             URL url=new URL("http://androidweb.azurewebsites.net/api/Utilisateur/Login");
  34.             HttpURLConnection urlConnection=(HttpURLConnection) url.openConnection();
  35.             urlConnection.setDoOutput(true);
  36.             urlConnection.setInstanceFollowRedirects(false);
  37.             urlConnection.setRequestMethod("POST");
  38.             urlConnection.setRequestProperty("Content-Type","application/x-www-form-urlencoded");
  39.             byte[] tab=("pseudo="+strings[0]+"&motDePasse="+strings[1]).getBytes();
  40.             urlConnection.setRequestProperty("Content-Length",Integer.toString(tab.length));
  41.             urlConnection.setUseCaches(false);
  42.             DataOutputStream wri=new DataOutputStream(urlConnection.getOutputStream());
  43.             wri.write(tab);
  44.             urlConnection.setConnectTimeout(100000);
  45.             urlConnection.connect();
  46.             if(urlConnection.getResponseCode()==200){
  47.                 InputStream stream =urlConnection.getInputStream();
  48.                 InputStreamReader inputStreamReader=new InputStreamReader(stream,"UTF-8");
  49.                 Scanner scanner=new Scanner(inputStreamReader);
  50.                 try{
  51.                     u=new ObjectMapper().readValue(scanner.next(), new TypeReference<Utilisateur>() {});
  52.                 }
  53.                 catch (IOException e){
  54.                     e.printStackTrace();
  55.                 }
  56.             }
  57.             urlConnection.disconnect();
  58.         }
  59.         catch (Exception e){
  60.             e.printStackTrace();
  61.         }
  62.         return u;
  63.     }
  64.  
  65.     @Override
  66.     protected void onPostExecute(Utilisateur utilisateur) {
  67.         super.onPostExecute(utilisateur);
  68.         if(utilisateur!=null){
  69.             intent=new Intent(activity,ConversationListActivity.class);
  70.             intent.putExtra("user",String.valueOf(utilisateur.getId()));
  71.             new ConversationListAsync(activity).execute();
  72.         }
  73.     }
  74. }
Advertisement
Add Comment
Please, Sign In to add comment