diff --git a/presenter/src/main/java/com/foke/together/presenter/viewmodel/HomeViewModel.kt b/presenter/src/main/java/com/foke/together/presenter/viewmodel/HomeViewModel.kt index 1487d99..ea415f2 100644 --- a/presenter/src/main/java/com/foke/together/presenter/viewmodel/HomeViewModel.kt +++ b/presenter/src/main/java/com/foke/together/presenter/viewmodel/HomeViewModel.kt @@ -1,11 +1,43 @@ package com.foke.together.presenter.viewmodel import androidx.lifecycle.ViewModel +import androidx.lifecycle.viewModelScope +import com.foke.together.domain.interactor.web.GetCurrentUserInformationUseCase +import com.foke.together.domain.interactor.web.SignInUseCase +import com.foke.together.util.AppLog +import com.foke.together.util.di.IODispatcher import dagger.hilt.android.lifecycle.HiltViewModel +import kotlinx.coroutines.CoroutineDispatcher +import kotlinx.coroutines.launch import javax.inject.Inject @HiltViewModel class HomeViewModel @Inject constructor( + @IODispatcher private val ioDispatcher: CoroutineDispatcher, + private val signInUseCase: SignInUseCase, + private val getCurrentUserInformationUseCase: GetCurrentUserInformationUseCase + ): ViewModel() { - // TODO: add viewmodel code here + init { + viewModelScope.launch(ioDispatcher) { + // TODO: this is test code. remove later + signInUseCase( + "test@test.com", + "1234" + ) + // TODO: this is test code. remove later + getCurrentUserInformationUseCase() + .onSuccess { + AppLog.e(TAG, "init", "user name: ${it.name}") + AppLog.e(TAG, "init", "user email: ${it.email}") + + }.onFailure { + AppLog.e(TAG, "init", "failure: $it") + } + } + } + + companion object { + private val TAG = HomeViewModel::class.java.simpleName + } } \ No newline at end of file