Refactor UserModule to use constant for injection rather than string literals.

This commit is contained in:
Fernando Cejas
2016-12-22 17:53:19 -03:00
parent f433db9bad
commit 988e02b25b
5 changed files with 11 additions and 5 deletions

View File

@@ -28,6 +28,8 @@ import rx.Observable;
*/
public class GetUserDetails extends UseCase {
public static final String NAME = "userDetails";
private final int userId;
private final UserRepository userRepository;

View File

@@ -28,6 +28,8 @@ import rx.Observable;
*/
public class GetUserList extends UseCase {
public static final String NAME = "userList";
private final UserRepository userRepository;
@Inject

View File

@@ -40,14 +40,14 @@ public class UserModule {
this.userId = userId;
}
@Provides @PerActivity @Named("userList") UseCase provideGetUserListUseCase(
@Provides @PerActivity @Named(GetUserList.NAME) UseCase provideGetUserListUseCase(
GetUserList getUserList) {
return getUserList;
}
@Provides @PerActivity @Named("userDetails") UseCase provideGetUserDetailsUseCase(
@Provides @PerActivity @Named(GetUserDetails.NAME) UseCase provideGetUserDetailsUseCase(
UserRepository userRepository, ThreadExecutor threadExecutor,
PostExecutionThread postExecutionThread) {
return new GetUserDetails(userId, userRepository, threadExecutor, postExecutionThread);
}
}
}

View File

@@ -20,6 +20,7 @@ import com.fernandocejas.android10.sample.domain.User;
import com.fernandocejas.android10.sample.domain.exception.DefaultErrorBundle;
import com.fernandocejas.android10.sample.domain.exception.ErrorBundle;
import com.fernandocejas.android10.sample.domain.interactor.DefaultSubscriber;
import com.fernandocejas.android10.sample.domain.interactor.GetUserDetails;
import com.fernandocejas.android10.sample.domain.interactor.UseCase;
import com.fernandocejas.android10.sample.presentation.exception.ErrorMessageFactory;
import com.fernandocejas.android10.sample.presentation.internal.di.PerActivity;
@@ -43,7 +44,7 @@ public class UserDetailsPresenter implements Presenter {
private final UserModelDataMapper userModelDataMapper;
@Inject
public UserDetailsPresenter(@Named("userDetails") UseCase getUserDetailsUseCase,
public UserDetailsPresenter(@Named(GetUserDetails.NAME) UseCase getUserDetailsUseCase,
UserModelDataMapper userModelDataMapper) {
this.getUserDetailsUseCase = getUserDetailsUseCase;
this.userModelDataMapper = userModelDataMapper;

View File

@@ -20,6 +20,7 @@ import com.fernandocejas.android10.sample.domain.User;
import com.fernandocejas.android10.sample.domain.exception.DefaultErrorBundle;
import com.fernandocejas.android10.sample.domain.exception.ErrorBundle;
import com.fernandocejas.android10.sample.domain.interactor.DefaultSubscriber;
import com.fernandocejas.android10.sample.domain.interactor.GetUserList;
import com.fernandocejas.android10.sample.domain.interactor.UseCase;
import com.fernandocejas.android10.sample.presentation.exception.ErrorMessageFactory;
import com.fernandocejas.android10.sample.presentation.internal.di.PerActivity;
@@ -44,7 +45,7 @@ public class UserListPresenter implements Presenter {
private final UserModelDataMapper userModelDataMapper;
@Inject
public UserListPresenter(@Named("userList") UseCase getUserListUserCase,
public UserListPresenter(@Named(GetUserList.NAME) UseCase getUserListUserCase,
UserModelDataMapper userModelDataMapper) {
this.getUserListUseCase = getUserListUserCase;
this.userModelDataMapper = userModelDataMapper;