#74 viewmodel of a feed
This commit is contained in:
		
							parent
							
								
									f7b5d5170d
								
							
						
					
					
						commit
						190c3467ec
					
				
					 1 changed files with 34 additions and 1 deletions
				
			
		|  | @ -1,4 +1,37 @@ | ||||||
| package be.ugent.sel.studeez.screens.home | package be.ugent.sel.studeez.screens.home | ||||||
| 
 | 
 | ||||||
| class FeedViewModel { | import androidx.lifecycle.viewModelScope | ||||||
|  | import be.ugent.sel.studeez.data.SelectedTask | ||||||
|  | import be.ugent.sel.studeez.data.local.models.FeedEntry | ||||||
|  | import be.ugent.sel.studeez.domain.FeedDAO | ||||||
|  | import be.ugent.sel.studeez.domain.LogService | ||||||
|  | import be.ugent.sel.studeez.domain.TaskDAO | ||||||
|  | import be.ugent.sel.studeez.navigation.StudeezDestinations | ||||||
|  | import be.ugent.sel.studeez.screens.StudeezViewModel | ||||||
|  | import dagger.hilt.android.lifecycle.HiltViewModel | ||||||
|  | import kotlinx.coroutines.flow.Flow | ||||||
|  | import kotlinx.coroutines.launch | ||||||
|  | import javax.inject.Inject | ||||||
|  | 
 | ||||||
|  | @HiltViewModel | ||||||
|  | class FeedViewModel @Inject constructor( | ||||||
|  |     private val feedDAO: FeedDAO, | ||||||
|  |     private val taskDAO: TaskDAO, | ||||||
|  |     private val selectedTask: SelectedTask, | ||||||
|  |     logService: LogService | ||||||
|  | ) : StudeezViewModel(logService) { | ||||||
|  | 
 | ||||||
|  |     private val entries: Flow<List<FeedEntry>> = feedDAO.getFeedEntries() | ||||||
|  | 
 | ||||||
|  |     fun getFeedEntries(): Flow<List<FeedEntry>> { | ||||||
|  |         return entries | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     fun continueWithTask(open: (String) -> Unit, subjectId: String, taskId: String) { | ||||||
|  |         viewModelScope.launch { | ||||||
|  |             val task = taskDAO.getTask(subjectId, taskId) | ||||||
|  |             selectedTask.set(task) | ||||||
|  |             open(StudeezDestinations.TIMER_SELECTION_SCREEN) | ||||||
|  |         } | ||||||
|  |     } | ||||||
| } | } | ||||||
		Reference in a new issue
	
	 lbarraga
						lbarraga