From f5d5711581bc838b4a4e8067bc0474b56437f430 Mon Sep 17 00:00:00 2001
From: Vietanh Le Trung <vietanh.le.trung@ericsson.com>
Date: Sun, 25 Nov 2018 03:01:53 +0100
Subject: [PATCH] minden perzisztens

---
 .../viet/posseidon/MainActivity.java          |  5 ++-
 .../viet/posseidon/SubjectActivity.java       | 35 ++++++++++++++++++-
 .../viet/posseidon/adapter/EventAdapter.java  |  6 ++++
 3 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/com/ireallydontcare/viet/posseidon/MainActivity.java b/app/src/main/java/com/ireallydontcare/viet/posseidon/MainActivity.java
index cf55070..10bab13 100644
--- a/app/src/main/java/com/ireallydontcare/viet/posseidon/MainActivity.java
+++ b/app/src/main/java/com/ireallydontcare/viet/posseidon/MainActivity.java
@@ -51,14 +51,13 @@ public class MainActivity extends AppCompatActivity
                 "subject-list"
         ).build();
 
-
         subjectRecyclerView = (RecyclerView) findViewById(R.id.SubjectRecyclerView);
 
         // use this setting to improve performance if you know that changes
         // in content do not change the layout size of the RecyclerView
         subjectRecyclerView.setHasFixedSize(true);
 
-        loadItemsInBackground();
+
         // use a linear layout manager
         subjectLayoutManager = new LinearLayoutManager(this);
 
@@ -69,7 +68,7 @@ public class MainActivity extends AppCompatActivity
         subjectAdapter = new SubjectAdapter(this);
 
         subjectRecyclerView.setAdapter(subjectAdapter);
-
+        loadItemsInBackground();
     }
 
     @Override
diff --git a/app/src/main/java/com/ireallydontcare/viet/posseidon/SubjectActivity.java b/app/src/main/java/com/ireallydontcare/viet/posseidon/SubjectActivity.java
index 7efda5d..69fb00d 100644
--- a/app/src/main/java/com/ireallydontcare/viet/posseidon/SubjectActivity.java
+++ b/app/src/main/java/com/ireallydontcare/viet/posseidon/SubjectActivity.java
@@ -1,6 +1,7 @@
 package com.ireallydontcare.viet.posseidon;
 
 import android.app.DatePickerDialog;
+import android.arch.persistence.room.Room;
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.support.design.widget.FloatingActionButton;
@@ -12,12 +13,14 @@ import android.support.v7.widget.Toolbar;
 import android.view.View;
 
 import com.ireallydontcare.viet.posseidon.adapter.EventAdapter;
+import com.ireallydontcare.viet.posseidon.data.EventDatabase;
 import com.ireallydontcare.viet.posseidon.fragments.NewDialogEventFragment;
 import com.ireallydontcare.viet.posseidon.fragments.NewDialogSubjectFragment;
 import com.ireallydontcare.viet.posseidon.model.Event;
 import com.ireallydontcare.viet.posseidon.model.Subject;
 
 import java.util.Calendar;
+import java.util.List;
 
 public class SubjectActivity extends AppCompatActivity
     implements NewDialogEventFragment.NewEventDialogListener {
@@ -29,6 +32,10 @@ public class SubjectActivity extends AppCompatActivity
     private RecyclerView eventRecyclerView;
     private EventAdapter eventAdapter;
     private RecyclerView.LayoutManager eventLayoutManager;
+    private EventDatabase database;
+
+
+
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -49,6 +56,8 @@ public class SubjectActivity extends AppCompatActivity
 
         eventRecyclerView = (RecyclerView) findViewById(R.id.EventRecyclerView);
         eventRecyclerView.setHasFixedSize(true);
+
+
         eventLayoutManager = new LinearLayoutManager(this);
 
 
@@ -57,6 +66,13 @@ public class SubjectActivity extends AppCompatActivity
         eventAdapter = new EventAdapter();
         eventRecyclerView.setAdapter(eventAdapter);
 
+        database = Room.databaseBuilder(
+                getApplicationContext(),
+                EventDatabase.class,
+                "event-list"
+        ).build();
+
+        loadItemsInBackground();
     }
 
     @Override
@@ -65,7 +81,7 @@ public class SubjectActivity extends AppCompatActivity
 
             @Override
             protected Event doInBackground(Void... voids) {
-                //newItem.id = database.SubjectDao().insert(newItem);
+                database.EventDao().insert(eventitem);
                 return eventitem;
             }
 
@@ -75,4 +91,21 @@ public class SubjectActivity extends AppCompatActivity
             }
         }.execute();
     };
+
+    private void loadItemsInBackground(){
+        new AsyncTask<Void, Void, List<Event>>() {
+
+            @Override
+            protected List<Event> doInBackground(Void... voids) {
+                List<Event> events = database.EventDao().getAllBySubject(subjectId);
+                return events;
+
+            }
+
+            @Override
+            protected void onPostExecute(List<Event> events) {
+                eventAdapter.update(events);
+            }
+        }.execute();
+    }
 }
diff --git a/app/src/main/java/com/ireallydontcare/viet/posseidon/adapter/EventAdapter.java b/app/src/main/java/com/ireallydontcare/viet/posseidon/adapter/EventAdapter.java
index f6adef2..69a76ac 100644
--- a/app/src/main/java/com/ireallydontcare/viet/posseidon/adapter/EventAdapter.java
+++ b/app/src/main/java/com/ireallydontcare/viet/posseidon/adapter/EventAdapter.java
@@ -71,4 +71,10 @@ public class EventAdapter extends RecyclerView.Adapter<EventAdapter.EventViewHol
         events.add(Event);
         notifyItemInserted(events.size() - 1);
     }
+
+    public void update(List<Event> events){
+        this.events.clear();
+        this.events.addAll(events);
+        notifyDataSetChanged();
+    }
 }
-- 
GitLab