Android Open Source - nl.fhict.intellicloud.answers.android Server Accessor






From Project

Back to project page nl.fhict.intellicloud.answers.android.

License

The source code is released under:

Apache License

If you think the Android project nl.fhict.intellicloud.answers.android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package nl.fhict.intellicloud.answers.backendcommunication;
/*ww  w.j a  v  a2 s  . co  m*/
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpStatus;
import org.apache.http.NameValuePair;
import org.apache.http.auth.AuthenticationException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnManagerParams;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
import org.apache.http.util.EntityUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import nl.fhict.intellicloud.answers.*;
import nl.fhict.intellicloud.answers.backendcommunication.IntellicloudDbContract.QuestionsEntry;
import nl.fhict.intellicloud.answers.backendcommunication.oauth.AuthenticationManager;

import android.accounts.Account;
import android.accounts.AccountManager;
import android.accounts.AuthenticatorException;
import android.accounts.OperationCanceledException;
import android.content.ContentProviderClient;
import android.content.ContentValues;
import android.content.Context;
import android.content.SharedPreferences;
import android.database.Cursor;
import android.net.ParseException;
import android.net.Uri;
import android.os.RemoteException;
import android.util.Base64;
import android.util.Log;

public class ServerAccessor {
  private final String TAG = "SyncAdapter";

  private static final String INTELLICLOUD_BASE_URL = "http://81.204.121.229/intellicloudservice/";
  private static final String INTELLICLOUD_NEW_BASE_URL = "http://81.204.121.229/intellicloudservicenew/";
  private static final String URI_GET_QUESTIONS = INTELLICLOUD_NEW_BASE_URL + "QuestionService.svc/questions?state=0";
  private static final String URI_GET_ANSWERS = INTELLICLOUD_NEW_BASE_URL + "AnswerService.svc/answers?state=0&search=null";
  private static final String URI_POST_ANSWERS = INTELLICLOUD_NEW_BASE_URL + "AnswerService.svc/answers";
  private static final String URI_GET_REVIEWS = INTELLICLOUD_NEW_BASE_URL + "ReviewService.svc/reviews";
  private static final String URI_POST_REVIEWS = INTELLICLOUD_NEW_BASE_URL + "ReviewService.svc/reviews";
  private static final String URI_GET_USERS = INTELLICLOUD_NEW_BASE_URL + "UserService.svc/users?after=2000-01-01T19:20:30";
  private static final String URI_GET_FEEDBACK = INTELLICLOUD_NEW_BASE_URL + "FeedbackService.svc/feedback";
  
  
  Context context;
  AccountManager accountManager;
  Account account;
  ContentProviderClient contentProviderClient;
  
  public ServerAccessor(Context context, AccountManager accountManager, ContentProviderClient contentProviderClient, Account account)
  {
    this.context = context;
    this.accountManager = accountManager;
    this.account = account;
    this.contentProviderClient = contentProviderClient;
    
    
    
    
  }
  public void syncQuestions() throws AuthenticationException, ParseException, OperationCanceledException, AuthenticatorException, JSONException, IOException, RemoteException
  {
    JSONArray questionResultArray = SyncHelper.performNetworkGetRequest(URI_GET_QUESTIONS, context);
    if (questionResultArray != null)
    {
      //Log.d("ServerAccessor", questionIdArray.toString());
      QuestionsSync questionsSync = new QuestionsSync(context, contentProviderClient);
      questionsSync.syncQuestions(questionResultArray);
    }
  }
  public void syncUsers() throws AuthenticationException, ParseException, OperationCanceledException, AuthenticatorException, JSONException, IOException, RemoteException
  {
    JSONArray userResultArray = SyncHelper.performNetworkGetRequest(URI_GET_USERS, context);
    if (userResultArray != null)
    {
      UserSync userSync = new UserSync(context, contentProviderClient);
      userSync.syncUsers(userResultArray);
    }
  }
  public void syncAnswers() throws AuthenticationException, ParseException, OperationCanceledException, AuthenticatorException, JSONException, IOException, RemoteException
  {
    JSONArray answerResultArray = SyncHelper.performNetworkGetRequest(URI_GET_ANSWERS, context);
    if (answerResultArray != null)
    {
      AnswerSync answerSync = new AnswerSync(context, contentProviderClient);
      ArrayList<JSONObject> newAnswers = answerSync.syncAnswers(answerResultArray);
      for (JSONObject sendObject : newAnswers)
      {
        SyncHelper.performNetworkPostRequest(URI_POST_ANSWERS, sendObject, context);
      }
    }
    
  }
  public void syncReviews() throws AuthenticationException, ParseException, OperationCanceledException, AuthenticatorException, JSONException, IOException, RemoteException
  {
    JSONArray answerResultArray = SyncHelper.performNetworkGetRequest(URI_GET_REVIEWS, context);
    
    ReviewSync reviewSync = new ReviewSync(context, contentProviderClient);
    ArrayList<JSONObject> newAnswers = reviewSync.syncReviews(answerResultArray);
    for (JSONObject sendObject : newAnswers)
    {
      SyncHelper.performNetworkPostRequest(URI_POST_REVIEWS, sendObject, context);
    }
    
  }
  
}




Java Source Code List

nl.fhict.intellicloud.answers.AddReviewActivity.java
nl.fhict.intellicloud.answers.AnswerState.java
nl.fhict.intellicloud.answers.Answer.java
nl.fhict.intellicloud.answers.AuthorizationActivity.java
nl.fhict.intellicloud.answers.FeedbackState.java
nl.fhict.intellicloud.answers.FeedbackType.java
nl.fhict.intellicloud.answers.Feedback.java
nl.fhict.intellicloud.answers.FilterList.java
nl.fhict.intellicloud.answers.GetUserIdTask.java
nl.fhict.intellicloud.answers.IUserFoundObserver.java
nl.fhict.intellicloud.answers.IncomingQuestionsListAdapter.java
nl.fhict.intellicloud.answers.ListFragment.java
nl.fhict.intellicloud.answers.MainActivity.java
nl.fhict.intellicloud.answers.OriginalAnswerActivity.java
nl.fhict.intellicloud.answers.QuestionListOnClickListener.java
nl.fhict.intellicloud.answers.QuestionState.java
nl.fhict.intellicloud.answers.Question.java
nl.fhict.intellicloud.answers.RejectedAnswerActivity.java
nl.fhict.intellicloud.answers.ReviewListAdapter.java
nl.fhict.intellicloud.answers.ReviewOverviewActivity.java
nl.fhict.intellicloud.answers.ReviewState.java
nl.fhict.intellicloud.answers.Review.java
nl.fhict.intellicloud.answers.SendAnswerActivity.java
nl.fhict.intellicloud.answers.SlidingMenuListAdapter.java
nl.fhict.intellicloud.answers.UserType.java
nl.fhict.intellicloud.answers.User.java
nl.fhict.intellicloud.answers.backendcommunication.AnswerDataSource.java
nl.fhict.intellicloud.answers.backendcommunication.AnswerSync.java
nl.fhict.intellicloud.answers.backendcommunication.AuthenticatorService.java
nl.fhict.intellicloud.answers.backendcommunication.Authenticator.java
nl.fhict.intellicloud.answers.backendcommunication.BackendContentProvider.java
nl.fhict.intellicloud.answers.backendcommunication.BackendSyncAdapter.java
nl.fhict.intellicloud.answers.backendcommunication.BackendSyncService.java
nl.fhict.intellicloud.answers.backendcommunication.DummyBackend.java
nl.fhict.intellicloud.answers.backendcommunication.IAnswerService.java
nl.fhict.intellicloud.answers.backendcommunication.IClaimService.java
nl.fhict.intellicloud.answers.backendcommunication.IQuestionService.java
nl.fhict.intellicloud.answers.backendcommunication.IReviewService.java
nl.fhict.intellicloud.answers.backendcommunication.IUserService.java
nl.fhict.intellicloud.answers.backendcommunication.IntellicloudDbContract.java
nl.fhict.intellicloud.answers.backendcommunication.LocalStorageSQLiteHelper.java
nl.fhict.intellicloud.answers.backendcommunication.QuestionDataSource.java
nl.fhict.intellicloud.answers.backendcommunication.QuestionsSync.java
nl.fhict.intellicloud.answers.backendcommunication.ReviewDataSource.java
nl.fhict.intellicloud.answers.backendcommunication.ReviewSync.java
nl.fhict.intellicloud.answers.backendcommunication.ServerAccessor.java
nl.fhict.intellicloud.answers.backendcommunication.SyncHelper.java
nl.fhict.intellicloud.answers.backendcommunication.UserDataSource.java
nl.fhict.intellicloud.answers.backendcommunication.UserSync.java
nl.fhict.intellicloud.answers.backendcommunication.oauth.AuthenticationManager.java