@Inject public ConsolesPanelPresenter( ConsolesPanelView view, EventBus eventBus, DtoFactory dtoFactory, DialogFactory dialogFactory, EntityFactory entityFactory, TerminalFactory terminalFactory, CommandConsoleFactory commandConsoleFactory, CommandTypeRegistry commandTypeRegistry, WorkspaceAgent workspaceAgent, NotificationManager notificationManager, MachineLocalizationConstant localizationConstant, MachineServiceClient machineService, MachineResources resources, AppContext appContext) { this.view = view; this.terminalFactory = terminalFactory; this.workspaceAgent = workspaceAgent; this.commandConsoleFactory = commandConsoleFactory; this.commandTypeRegistry = commandTypeRegistry; this.dtoFactory = dtoFactory; this.dialogFactory = dialogFactory; this.notificationManager = notificationManager; this.localizationConstant = localizationConstant; this.resources = resources; this.entityFactory = entityFactory; this.appContext = appContext; this.machineService = machineService; this.rootChildren = new ArrayList<>(); this.terminals = new HashMap<>(); this.consoles = new HashMap<>(); this.consoleCommands = new HashMap<>(); this.machineNodes = new HashMap<>(); fetchMachines(); this.view.setDelegate(this); this.view.setTitle(localizationConstant.viewConsolesTitle()); eventBus.addHandler( DevMachineStateEvent.TYPE, new DevMachineStateEvent.Handler() { @Override public void onDevMachineStarted(DevMachineStateEvent event) { fetchMachines(); } @Override public void onDevMachineDestroyed(DevMachineStateEvent event) {} }); eventBus.addHandler(ProcessFinishedEvent.TYPE, this); eventBus.addHandler(WorkspaceStoppedEvent.TYPE, this); eventBus.addHandler(MachineStateEvent.TYPE, this); }
@NotNull @Override public String getTitle() { return localizationConstant.viewConsolesTitle(); }