package org.ntlab.radishforandroidstudio.CactusCleanArchitecture.Controller; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import net.arnx.jsonic.JSON; import net.arnx.jsonic.TypeReference; import org.ntlab.radishforandroidstudio.CactusCleanArchitecture.Entities.Cactus; import org.ntlab.radishforandroidstudio.CactusCleanArchitecture.Entities.URIAddressedAccount; import org.ntlab.radishforandroidstudio.CactusCleanArchitecture.UseCases.LoginResponseControllerBoundary; import org.ntlab.radishforandroidstudio.CactusCleanArchitecture.UseCases.LoginResponseUseCase; public class LoginResponseController implements LoginResponseControllerBoundary { private FragmentActivity fragmentActivity; private FragmentManager manager; public LoginResponseController(FragmentActivity fragmentActivity, FragmentManager manager) { this.fragmentActivity = fragmentActivity; this.manager = manager; } @Override public void onResponse(String response) { URIAddressedAccount lac = JSON.decode(response, new TypeReference<URIAddressedAccount>() { }); System.out.println(response); LoginResponsePresenter loginResponsePresenter = new LoginResponsePresenter(fragmentActivity, manager); LoginResponseUseCase loginResponseUseCase = new LoginResponseUseCase((Cactus) (fragmentActivity.getApplication()), loginResponsePresenter); loginResponseUseCase.inputData(lac); loginResponseUseCase.proc(); } }