@EventHandler("add-new-container") public void addNewContainer(final ClickEvent event) { presenter.addNewContainer(); }
@EventHandler("copy-current-server-template") public void copyTemplate(final ClickEvent event) { presenter.copyTemplate(); }
public void onDelete( @Observes final ServerInstanceDeleted serverInstanceDeleted ) { if ( serverInstanceDeleted != null && serverInstanceDeleted.getServerInstanceId() != null && serverTemplatePresenter.getCurrentServerTemplate() != null ) { final String deletedServerInstanceId = serverInstanceDeleted.getServerInstanceId(); for ( final ServerInstanceKey serverInstanceKey : serverTemplatePresenter.getCurrentServerTemplate().getServerInstanceKeys() ) { if ( deletedServerInstanceId.equals( serverInstanceKey.getServerInstanceId() ) ) { refreshList( new ServerTemplateListRefresh( serverTemplatePresenter.getCurrentServerTemplate().getId() ) ); break; } } } else { logger.warn( "Illegal event argument." ); } }
private void setup( final ServerTemplate serverTemplate, final String selectContainerId ) { this.view.setServerTemplate( serverTemplatePresenter.getView() ); ContainerSpec firstContainerSpec = null; if ( serverTemplate.getContainersSpec().isEmpty() ) { serverContainerEmptyPresenter.setTemplate( serverTemplate ); this.view.setContent( serverContainerEmptyPresenter.getView() ); firstContainerSpec = null; } else { if ( selectContainerId != null ) { for ( final ContainerSpec containerSpec : serverTemplate.getContainersSpec() ) { if ( containerSpec.getId().equals( selectContainerId ) ) { firstContainerSpec = containerSpec; break; } } } if ( firstContainerSpec == null ) { firstContainerSpec = serverTemplate.getContainersSpec().iterator().next(); } } serverTemplatePresenter.setup( serverTemplate, firstContainerSpec ); }
@Test public void testCopyTemplate() { final String newTemplateName = "NewTemplateName"; doAnswer( new Answer<Void>() { @Override public Void answer( final InvocationOnMock invocation ) throws Throwable { final ParameterizedCommand command = (ParameterizedCommand) invocation.getArguments()[ 0 ]; if ( command != null ) { command.execute( newTemplateName ); } return null; } } ).when( copyPresenter ).copy( any( ParameterizedCommand.class ) ); final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateKeyId", "ServerTemplateKeyName" ); presenter.setup( serverTemplate, null ); assertEquals( serverTemplate, presenter.getCurrentServerTemplate() ); presenter.copyTemplate(); verify( specManagementService ).copyServerTemplate( serverTemplate.getId(), newTemplateName, newTemplateName ); verify( copyPresenter ).hide(); final ArgumentCaptor<ServerTemplateListRefresh> serverTemplateCaptor = ArgumentCaptor.forClass( ServerTemplateListRefresh.class ); verify( serverTemplateListRefreshEvent ).fire( serverTemplateCaptor.capture() ); assertEquals( newTemplateName, serverTemplateCaptor.getValue().getSelectServerTemplateId() ); doThrow( new RuntimeException() ).when( specManagementService ).copyServerTemplate( serverTemplate.getId(), newTemplateName, newTemplateName ); presenter.copyTemplate(); verify( specManagementService, times( 2 ) ).copyServerTemplate( serverTemplate.getId(), newTemplateName, newTemplateName ); verify( copyPresenter ).errorDuringProcessing( anyString() ); }
@Test public void testOnServerInstanceUpdated() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); presenter.setup( serverTemplate, null ); assertEquals( serverTemplate, presenter.getCurrentServerTemplate() ); final ServerInstance serverInstance = new ServerInstance( serverTemplate.getId(), "serverName", "serverInstanceId", "url", "1.0", Collections.<Message>emptyList(), Collections.<Container>emptyList() ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); verify( view ).addServerInstance( eq( serverInstance.getServerTemplateId() ), eq( serverInstance.getServerInstanceId() ), eq( serverInstance.getServerName() ), any( Command.class ) ); presenter.onServerInstanceDeleted( new ServerInstanceDeleted( serverInstance.getServerInstanceId() ) ); presenter.onServerInstanceUpdated( new ServerInstanceUpdated( serverInstance ) ); verify( view, times( 2 ) ).addServerInstance( eq( serverInstance.getServerTemplateId() ), eq( serverInstance.getServerInstanceId() ), eq( serverInstance.getServerName() ), any( Command.class ) ); }
@Test public void testSetupCapabilities() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateKeyId", "ServerTemplateKeyName" ); serverTemplate.getCapabilities().add( Capability.PROCESS.toString() ); serverTemplate.getCapabilities().add( Capability.PLANNING.toString() ); serverTemplate.getCapabilities().add( Capability.RULE.toString() ); presenter.setup( serverTemplate, null ); assertEquals( serverTemplate, presenter.getCurrentServerTemplate() ); verify( view ).clear(); verify( view ).setTemplate( serverTemplate.getId(), serverTemplate.getName() ); verify( view ).setProcessCapability( true ); verify( view ).setRulesCapability( true ); verify( view ).setPlanningCapability( true ); }
@Test public void testRemoveTemplate() { when( view.getRemoveTemplateErrorMessage() ).thenReturn( "ERROR" ); doAnswer( new Answer<Void>() { @Override public Void answer( final InvocationOnMock invocation ) throws Throwable { Command command = (Command) invocation.getArguments()[ 0 ]; if ( command != null ) { command.execute(); } return null; } } ).when( view ).confirmRemove( any( Command.class ) ); final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateKeyId", "ServerTemplateKeyName" ); presenter.setup( serverTemplate, null ); presenter.removeTemplate(); verify( specManagementService ).deleteServerTemplate( serverTemplate.getId() ); verify( serverTemplateListRefreshEvent ).fire( any( ServerTemplateListRefresh.class ) ); doThrow( new RuntimeException() ).when( specManagementService ).deleteServerTemplate( serverTemplate.getId() ); presenter.removeTemplate(); verify( specManagementService, times( 2 ) ).deleteServerTemplate( serverTemplate.getId() ); verify( serverTemplateListRefreshEvent, times( 2 ) ).fire( any( ServerTemplateListRefresh.class ) ); verify( notification ).fire( new NotificationEvent( "ERROR", NotificationEvent.NotificationType.ERROR ) ); }
@EventHandler("remove-current-server-template") public void removeTemplate(final ClickEvent event) { presenter.removeTemplate(); }
public void setup( final ServerTemplate serverTemplate, final ContainerSpec firstContainerSpec ) { view.clear(); this.serverTemplate = serverTemplate; view.setTemplate( serverTemplate.getId(), serverTemplate.getName() ); view.setProcessCapability( serverTemplate.getCapabilities().contains( Capability.PROCESS.toString() ) ); view.setRulesCapability( serverTemplate.getCapabilities().contains( Capability.RULE.toString() ) ); view.setPlanningCapability( serverTemplate.getCapabilities().contains( Capability.PLANNING.toString() ) ); if ( firstContainerSpec != null ) { addContainer( firstContainerSpec ); for ( final ContainerSpec containerSpec : serverTemplate.getContainersSpec() ) { if ( !containerSpec.getId().equals( firstContainerSpec.getId() ) ) { addContainer( containerSpec ); } } containerSpecSelectedEvent.fire( new ContainerSpecSelected( firstContainerSpec ) ); } for ( final ServerInstanceKey serverInstanceKey : serverTemplate.getServerInstanceKeys() ) { addServerInstance( serverInstanceKey ); } }
public void onServerInstanceUpdated( @Observes final ServerInstanceUpdated serverInstanceUpdated ) { if ( serverInstanceUpdated != null && serverInstanceUpdated.getServerInstance() != null ) { final ServerInstance updatedServerInstance = serverInstanceUpdated.getServerInstance(); if ( serverTemplate != null && updatedServerInstance.getServerTemplateId().equals( serverTemplate.getId() ) && !serverInstances.contains( updatedServerInstance.getServerInstanceId() ) ) { addServerInstance( updatedServerInstance ); } } else { logger.warn( "Illegal event argument." ); } }
@Before public void init() { specManagementServiceCaller = new CallerMock<SpecManagementService>( specManagementService ); doNothing().when( notification ).fire( any( NotificationEvent.class ) ); doNothing().when( addNewContainerEvent ).fire( any( AddNewContainer.class ) ); doNothing().when( containerSpecSelectedEvent ).fire( any( ContainerSpecSelected.class ) ); doNothing().when( serverInstanceSelectedEvent ).fire( any( ServerInstanceSelected.class ) ); doNothing().when( serverTemplateListRefreshEvent ).fire( any( ServerTemplateListRefresh.class ) ); presenter = spy( new ServerTemplatePresenter( logger, view, copyPresenter, specManagementServiceCaller, notification, addNewContainerEvent, containerSpecSelectedEvent, serverInstanceSelectedEvent, serverTemplateListRefreshEvent ) ); }
@Test public void testOnSelectedServerTemplate() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); final ServerTemplateKey serverTemplateKey = new ServerTemplateKey( "ServerTemplateKeyId", "ServerTemplateKeyName" ); when( specManagementService.getServerTemplate( serverTemplateKey.getId() ) ).thenReturn( serverTemplate ); final ServerTemplatePresenter.View serverView = mock( ServerTemplatePresenter.View.class ); when( serverTemplatePresenter.getView() ).thenReturn( serverView ); final ServerContainerEmptyPresenter.View serverEmptyView = mock( ServerContainerEmptyPresenter.View.class ); when( serverContainerEmptyPresenter.getView() ).thenReturn( serverEmptyView ); presenter.onSelected( new ServerTemplateSelected( serverTemplateKey ) ); verify( view ).setServerTemplate( serverView ); verify( specManagementService ).getServerTemplate( serverTemplateKey.getId() ); verify( serverContainerEmptyPresenter ).setTemplate( serverTemplate ); verify( view ).setContent( serverEmptyView ); verify( serverTemplatePresenter ).setup( serverTemplate, null ); }
serverTemplate.addContainerSpec( containerSpec1 ); presenter.setup( serverTemplate, containerSpec ); assertEquals( serverTemplate, presenter.getCurrentServerTemplate() );
@Test public void testOnSelectedNonEmptyServerTemplate() { final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); final ContainerSpec toBeSelected = mock( ContainerSpec.class ); serverTemplate.addContainerSpec( toBeSelected ); when( toBeSelected.getId() ).thenReturn( "other-id" ); final ContainerSpec forcedToBeSelected = mock( ContainerSpec.class ); when( forcedToBeSelected.getId() ).thenReturn( "container-id" ); serverTemplate.addContainerSpec( forcedToBeSelected ); final ServerTemplateKey serverTemplateKey = new ServerTemplateKey( "ServerTemplateKeyId", "ServerTemplateKeyName" ); when( specManagementService.getServerTemplate( serverTemplateKey.getId() ) ).thenReturn( serverTemplate ); final ServerTemplatePresenter.View serverView = mock( ServerTemplatePresenter.View.class ); when( serverTemplatePresenter.getView() ).thenReturn( serverView ); presenter.onSelected( new ServerTemplateSelected( serverTemplateKey ) ); verify( view ).setServerTemplate( serverView ); verify( specManagementService ).getServerTemplate( serverTemplateKey.getId() ); verify( serverTemplatePresenter ).setup( serverTemplate, toBeSelected ); presenter.onSelected( new ServerTemplateSelected( serverTemplateKey, "container-id" ) ); verify( serverTemplatePresenter ).setup( serverTemplate, forcedToBeSelected ); }
@Test public void testAddNewContainer() { presenter.addNewContainer(); verify( addNewContainerEvent ).fire( any( AddNewContainer.class ) ); }
@Test public void testOnDelete() { final ServerInstanceKey serverInstanceKey = new ServerInstanceKey( "serverInstanceKeyId", "serverName", "serverInstanceId", "url" ); final ServerTemplate serverTemplate = new ServerTemplate( "ServerTemplateId", "ServerTemplateName" ); serverTemplate.addServerInstance( serverInstanceKey ); when( serverTemplatePresenter.getCurrentServerTemplate() ).thenReturn( serverTemplate ); final ServerTemplateKey serverTemplateKey = new ServerTemplateKey( "ServerTemplateKeyId", "ServerTemplateKeyName" ); final List<ServerTemplateKey> serverTemplateKeys = Collections.singletonList( serverTemplateKey ); when( specManagementService.listServerTemplateKeys() ).thenReturn( new ServerTemplateKeyList(serverTemplateKeys) ); presenter.onDelete( new ServerInstanceDeleted( serverInstanceKey.getServerInstanceId() ) ); verify( navigationPresenter ).setup( serverTemplateKey, serverTemplateKeys ); final ArgumentCaptor<ServerTemplateSelected> templateSelectedCaptor = ArgumentCaptor.forClass( ServerTemplateSelected.class ); verify( serverTemplateSelectedEvent ).fire( templateSelectedCaptor.capture() ); assertEquals( serverTemplateKey, templateSelectedCaptor.getValue().getServerTemplateKey() ); }