package com.iwedia.service.storage; import java.util.HashMap; import android.util.Log; import com.iwedia.service.IWEDIAService; public class ControllerManager { private final String LOG_TAG = "ControllerManager"; private HashMap<Integer, IController> controllerManager; private IController activeController; private A_DbAdapter dbAdapter; public ControllerManager(A_DbAdapter dbAdapter) { controllerManager = new HashMap<Integer, IController>(); this.dbAdapter = dbAdapter; } public void reinitialize() { } private void addController(int controllerType, IController controller) { controllerManager.put(controllerType, controller); this.activeController = controller; } public void setActiveController(int controllerType) { IController controller = controllerManager.get(controllerType); if (controller == null) { switch (controllerType) { case ControllerType.FAVOURITE_LIST: { if (IWEDIAService.DEBUG) { Log.e(LOG_TAG, "creating favourite list controller"); } addController(ControllerType.FAVOURITE_LIST, new FavouriteListController(dbAdapter)); break; } case ControllerType.RECENTLY_LIST: { if (IWEDIAService.DEBUG) { Log.e(LOG_TAG, "creating RECENTLY_LIST controller"); } addController(ControllerType.RECENTLY_LIST, new RecentlyListController(dbAdapter)); break; } } } else { this.activeController = controller; } } public IController getActiveController() { return activeController; } }