Android Open Source - nl.fhict.intellicloud.answers.android Send Answer Activity






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;
//from w w w .jav  a2 s .com
import nl.fhict.intellicloud.answers.backendcommunication.AnswerDataSource;
import nl.fhict.intellicloud.answers.backendcommunication.IAnswerService;
import nl.fhict.intellicloud.answers.backendcommunication.IQuestionService;
import nl.fhict.intellicloud.answers.backendcommunication.IUserService;
import nl.fhict.intellicloud.answers.backendcommunication.QuestionDataSource;
import nl.fhict.intellicloud.answers.backendcommunication.UserDataSource;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class SendAnswerActivity extends Activity {
  private final String PREFERENCES_NAME = "nl.fhict.intellicloud.answers";
  private final String PREFERENCES_USER_DB_ID = "USER_ID";
    IQuestionService qService;
    IAnswerService aService;
    IUserService uService;

    int questionInt;

    Answer answer;
    Question question;
    EditText etAnswer;
    
    private User getAnswerer()
    {
      uService = new UserDataSource(this);
      SharedPreferences prefs = this.getSharedPreferences(PREFERENCES_NAME, Context.MODE_MULTI_PROCESS);
      int id = prefs.getInt(PREFERENCES_USER_DB_ID, -1);
      if (id > -1)
      {
        return uService.GetUser(id);
      }
      return null;
    }
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_send_answer);
    getActionBar().setDisplayHomeAsUpEnabled(true);

        qService = new QuestionDataSource(this);
        aService = new AnswerDataSource(this);

        questionInt = getIntent().getExtras().getInt("questionInt");
        question = qService.GetQuestion(questionInt);


        TextView tvQuestion = (TextView) findViewById(R.id.tvQuestion);
        tvQuestion.setText(question.getQuestion());
        TextView tvQuestionDetail = (TextView) findViewById(R.id.tvQuestionDetail);
        tvQuestionDetail.setText(question.getQuestion());

        Button btnAddAnswer = (Button) findViewById(R.id.btnAddAnswer);
        Button btnRequestReview = (Button) findViewById(R.id.btnRequestReview);
        etAnswer = (EditText) findViewById(R.id.etAnswer);

        btnAddAnswer.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                addAnswer(); onBackPressed();
            }
        });
        btnRequestReview.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                askFeedback(); onBackPressed();

            }
        });
  }

    /**
     * Sends the answer to the backend to be added to the database
     */
    protected void addAnswer(){
        String answerText = etAnswer.getText().toString();
        
        answer = new Answer(answerText, getAnswerer(), AnswerState.UnderReview);
        aService.CreateAnswer(answer, questionInt);
    }
    
    protected void askFeedback(){
      //TODO
        String answerText = etAnswer.getText().toString();
        answer = new Answer(answerText,  getAnswerer(), AnswerState.UnderReview);
        question = new Question(question.getId(), question.getQuestion(), question.getAsker(), getAnswerer(), QuestionState.UpForFeedback, null);
        question.setAnswer(answer);
        qService.UpdateQuestion(question);
        aService.CreateAnswer(answer, questionInt);
    }
}




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