diff options
author | Alex Ning <chineseperson5@gmail.com> | 2018-12-27 05:54:19 +0000 |
---|---|---|
committer | Alex Ning <chineseperson5@gmail.com> | 2018-12-27 05:54:19 +0000 |
commit | 807ddf5a6e595d2368579008bb8132296be54ea2 (patch) | |
tree | c1f4fc8c398768f949dd656cd37c9e72d912eddd /app/src/main/java/SubredditDatabase/SubredditViewModel.java | |
parent | 5603df75469929ee122edd93d9d55774375182b0 (diff) | |
download | infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar.gz infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar.bz2 infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar.lz infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar.xz infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.tar.zst infinity-for-reddit-807ddf5a6e595d2368579008bb8132296be54ea2.zip |
Move several classes to other packages.
Diffstat (limited to 'app/src/main/java/SubredditDatabase/SubredditViewModel.java')
-rw-r--r-- | app/src/main/java/SubredditDatabase/SubredditViewModel.java | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/app/src/main/java/SubredditDatabase/SubredditViewModel.java b/app/src/main/java/SubredditDatabase/SubredditViewModel.java new file mode 100644 index 00000000..10135401 --- /dev/null +++ b/app/src/main/java/SubredditDatabase/SubredditViewModel.java @@ -0,0 +1,48 @@ +package SubredditDatabase; + +import android.app.Application; +import android.arch.lifecycle.AndroidViewModel; +import android.arch.lifecycle.LiveData; +import android.arch.lifecycle.ViewModel; +import android.arch.lifecycle.ViewModelProvider; +import android.support.annotation.NonNull; + +public class SubredditViewModel extends AndroidViewModel { + private SubredditRepository mSubredditRepository; + private LiveData<SubredditData> mSubredditLiveData; + + SubredditViewModel(Application application, String id, boolean isId) { + super(application); + mSubredditRepository = new SubredditRepository(application, id, isId); + mSubredditLiveData = mSubredditRepository.getSubredditLiveData(); + } + + public LiveData<SubredditData> getSubredditLiveData() { + return mSubredditLiveData; + } + + public void insert(SubredditData subredditData) { + mSubredditRepository.insert(subredditData); + } + + public static class Factory extends ViewModelProvider.NewInstanceFactory { + + @NonNull + private final Application mApplication; + + private final String value; + private final boolean isId; + + public Factory(@NonNull Application application, String value, boolean isId) { + mApplication = application; + this.value = value; + this.isId = isId; + } + + @Override + public <T extends ViewModel> T create(Class<T> modelClass) { + //noinspection unchecked + return (T) new SubredditViewModel(mApplication, value, isId); + } + } +} |