Search in sources :

Example 1 with GetUserProgramUIDUseCase

use of org.eyeseetea.malariacare.domain.usecase.GetUserProgramUIDUseCase in project pictureapp by EyeSeeTea.

the class SurveyService method getProgramUID.

private void getProgramUID(final Callback callback) {
    if (mProgramUID != null) {
        callback.onSuccess(mProgramUID);
    } else {
        IProgramRepository programLocalDataSource = new ProgramLocalDataSource();
        IMainExecutor mainExecutor = new UIThreadExecutor();
        IAsyncExecutor asyncExecutor = new AsyncExecutor();
        GetUserProgramUIDUseCase getUserProgramUIDUseCase = new GetUserProgramUIDUseCase(programLocalDataSource, mainExecutor, asyncExecutor);
        getUserProgramUIDUseCase.execute(new GetUserProgramUIDUseCase.Callback() {

            @Override
            public void onSuccess(String uid) {
                mProgramUID = uid;
                callback.onSuccess(uid);
            }

            @Override
            public void onError() {
                Log.e(TAG, "error getting user program");
            }
        });
    }
}
Also used : IProgramRepository(org.eyeseetea.malariacare.domain.boundary.repositories.IProgramRepository) GetUserProgramUIDUseCase(org.eyeseetea.malariacare.domain.usecase.GetUserProgramUIDUseCase) ProgramLocalDataSource(org.eyeseetea.malariacare.data.database.datasources.ProgramLocalDataSource) UIThreadExecutor(org.eyeseetea.malariacare.presentation.executors.UIThreadExecutor) IAsyncExecutor(org.eyeseetea.malariacare.domain.boundary.executors.IAsyncExecutor) IMainExecutor(org.eyeseetea.malariacare.domain.boundary.executors.IMainExecutor) AsyncExecutor(org.eyeseetea.malariacare.presentation.executors.AsyncExecutor) IAsyncExecutor(org.eyeseetea.malariacare.domain.boundary.executors.IAsyncExecutor)

Aggregations

ProgramLocalDataSource (org.eyeseetea.malariacare.data.database.datasources.ProgramLocalDataSource)1 IAsyncExecutor (org.eyeseetea.malariacare.domain.boundary.executors.IAsyncExecutor)1 IMainExecutor (org.eyeseetea.malariacare.domain.boundary.executors.IMainExecutor)1 IProgramRepository (org.eyeseetea.malariacare.domain.boundary.repositories.IProgramRepository)1 GetUserProgramUIDUseCase (org.eyeseetea.malariacare.domain.usecase.GetUserProgramUIDUseCase)1 AsyncExecutor (org.eyeseetea.malariacare.presentation.executors.AsyncExecutor)1 UIThreadExecutor (org.eyeseetea.malariacare.presentation.executors.UIThreadExecutor)1