Package fi.sportti.app.ui.viewmodels
Class MainViewModel
- java.lang.Object
-
- androidx.lifecycle.ViewModel
-
- androidx.lifecycle.AndroidViewModel
-
- fi.sportti.app.ui.viewmodels.MainViewModel
-
@RequiresApi(api=26) public class MainViewModel extends androidx.lifecycle.AndroidViewModel
Main view model to distance our database from the ui.
-
-
Field Summary
Fields Modifier and Type Field Description static int
DAILY_MINUTES
Constant variable used to tell how you want exercise times to be summed up in HashMap.static int
MONTHLY_MINUTES
Constant variable used to tell how you want exercise times to be summed up in HashMap.
-
Constructor Summary
Constructors Constructor Description MainViewModel(android.app.Application application)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deleteExercise(Exercise uselessExercise)
androidx.lifecycle.LiveData<java.util.List<Exercise>>
getAllExercises()
int
getExerciseTimeForThisWeek()
Returns total exercise times of each day of current week.java.util.HashMap<java.time.ZonedDateTime,java.lang.Integer>
getExerciseTimesForGraph(int type)
Go through all exercises and sum up total exercise time of each day.User
getFirstUser()
java.util.List<Exercise>
getSortedExerciseList()
Returns exercises sorted by date.void
insertExercise(Exercise newExercise)
void
insertUser(User newUser)
void
updateUser(User user)
-
-
-
Field Detail
-
DAILY_MINUTES
public static final int DAILY_MINUTES
Constant variable used to tell how you want exercise times to be summed up in HashMap.- See Also:
- Constant Field Values
-
MONTHLY_MINUTES
public static final int MONTHLY_MINUTES
Constant variable used to tell how you want exercise times to be summed up in HashMap.- See Also:
- Constant Field Values
-
-
Method Detail
-
getFirstUser
public User getFirstUser()
-
updateUser
public void updateUser(User user)
-
insertUser
public void insertUser(User newUser)
-
getAllExercises
public androidx.lifecycle.LiveData<java.util.List<Exercise>> getAllExercises()
-
insertExercise
public void insertExercise(Exercise newExercise)
-
deleteExercise
public void deleteExercise(Exercise uselessExercise)
-
getExerciseTimesForGraph
public java.util.HashMap<java.time.ZonedDateTime,java.lang.Integer> getExerciseTimesForGraph(int type)
Go through all exercises and sum up total exercise time of each day.- Parameters:
type
- Use constants in this class. DAILY_MINUTES if you want to get total exercise time of each day. MONTHLY_MINUTES if you want to get total exercise time of each month.- Returns:
- dataMap
-
getSortedExerciseList
public java.util.List<Exercise> getSortedExerciseList()
Returns exercises sorted by date. From most recent to oldest.- Returns:
- list
-
getExerciseTimeForThisWeek
public int getExerciseTimeForThisWeek()
Returns total exercise times of each day of current week.- Returns:
- exerciseTimeInMinutes
-
-