@Test public void testUploadWebServerConfig() throws IOException { UploadWebServerTemplateRequest request = mock(UploadWebServerTemplateRequest.class); final String metaData = "{\"deployPath\":\"d:/httpd-data\",\"deployFileName\":\"httpd.conf\"}"; when(request.getMetaData()).thenReturn(metaData); ResourceTemplateMetaData mockMetaData = mock(ResourceTemplateMetaData.class); when(mockMetaData.getDeployPath()).thenReturn("d:/httpd-data"); when(mockMetaData.getDeployFileName()).thenReturn("httpd.conf"); when(Config.mockResourceService.getTokenizedMetaData(anyString(), Matchers.anyObject(), anyString())) .thenReturn(mockMetaData); when(Config.mockResourceService.getMetaData(metaData)).thenReturn(mockMetaData); wsService.uploadWebServerConfig(mockWebServer, "httpd.conf", "test content", metaData, group.getName(), testUser); verify(Config.mockResourceService).createResource(any(ResourceIdentifier.class), any(ResourceTemplateMetaData.class), any(InputStream.class)); }
@Override @Transactional public void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user) { try { ResourceTemplateMetaData metaData = resourceService.getMetaData(metaDataStr); ResourceIdentifier resourceId = new ResourceIdentifier.Builder() .setResourceName(metaData.getDeployFileName()) .setGroupName(groupName) .setWebServerName(webServer.getName()).build(); resourceService.createResource(resourceId, metaData, IOUtils.toInputStream(templateContent)); } catch (IOException e) { LOGGER.error("Failed to map meta data when uploading web server config {} for {}", templateName, webServer, e); throw new InternalErrorException(FaultType.BAD_STREAM, "Unable to map the meta data for template " + templateName, e); } }
WebServerServiceImpl implements WebServerService { @Override @Transactional public void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user) { try { ResourceTemplateMetaData metaData = resourceService.getMetaData(metaDataStr); ResourceIdentifier resourceId = new ResourceIdentifier.Builder() .setResourceName(metaData.getDeployFileName()) .setGroupName(groupName) .setWebServerName(webServer.getName()).build(); resourceService.createResource(resourceId, metaData, IOUtils.toInputStream(templateContent)); } catch (IOException e) { LOGGER.error("Failed to map meta data when uploading web server config {} for {}", templateName, webServer, e); throw new InternalErrorException(FaultType.BAD_STREAM, "Unable to map the meta data for template " + templateName, e); } } }
WebServerServiceImpl implements WebServerService { @Override @Transactional public void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user) { try { ResourceTemplateMetaData metaData = resourceService.getMetaData(metaDataStr); ResourceIdentifier resourceId = new ResourceIdentifier.Builder() .setResourceName(metaData.getDeployFileName()) .setGroupName(groupName) .setWebServerName(webServer.getName()).build(); resourceService.createResource(resourceId, metaData, IOUtils.toInputStream(templateContent)); } catch (IOException e) { LOGGER.error("Failed to map meta data when uploading web server config {} for {}", templateName, webServer, e); throw new InternalErrorException(FaultType.BAD_STREAM, "Unable to map the meta data for template " + templateName, e); } } WebServerServiceImpl(final WebServerPersistenceService webServerPersistenceService,
                                final ResourceService resourceService,
                                @Qualifier("webServerInMemoryStateManagerService")
                                final InMemoryStateManagerService<Identifier<WebServer>, WebServerReachableState> inMemoryStateManagerService,
                                final String templatePath,
                                final BinaryDistributionLockManager binaryDistributionLockManager); }
WebServerServiceImpl implements WebServerService { @Override @Transactional public void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user) { try { ResourceTemplateMetaData metaData = resourceService.getMetaData(metaDataStr); ResourceIdentifier resourceId = new ResourceIdentifier.Builder() .setResourceName(metaData.getDeployFileName()) .setGroupName(groupName) .setWebServerName(webServer.getName()).build(); resourceService.createResource(resourceId, metaData, IOUtils.toInputStream(templateContent)); } catch (IOException e) { LOGGER.error("Failed to map meta data when uploading web server config {} for {}", templateName, webServer, e); throw new InternalErrorException(FaultType.BAD_STREAM, "Unable to map the meta data for template " + templateName, e); } } WebServerServiceImpl(final WebServerPersistenceService webServerPersistenceService,
                                final ResourceService resourceService,
                                @Qualifier("webServerInMemoryStateManagerService")
                                final InMemoryStateManagerService<Identifier<WebServer>, WebServerReachableState> inMemoryStateManagerService,
                                final String templatePath,
                                final BinaryDistributionLockManager binaryDistributionLockManager); @Override @Transactional WebServer createWebServer(final CreateWebServerRequest createWebServerRequest,
                                     final User aCreatingUser); @Override @Transactional(readOnly = true) WebServer getWebServer(final Identifier<WebServer> aWebServerId); @Override @Transactional(readOnly = true) WebServer getWebServer(final String aWebServerName); @Override @Transactional(readOnly = true) List<WebServer> getWebServers(); @Override @Transactional(propagation = Propagation.REQUIRES_NEW) List<WebServer> getWebServersPropagationNew(); @Override @Transactional(readOnly = true) List<WebServer> findWebServers(final Identifier<Group> aGroupId); @Override @Transactional WebServer updateWebServer(final UpdateWebServerRequest anUpdateWebServerCommand,
                                     final User anUpdatingUser); @Override @Transactional void deleteWebServer(final Identifier<WebServer> id, final boolean hardDelete, final User user); @Override boolean isStarted(WebServer webServer); @Override @Transactional(propagation = Propagation.REQUIRES_NEW) void updateState(final Identifier<WebServer> id, final WebServerReachableState state, final String errorStatus); @Override String generateInstallServiceScript(WebServer webServer); @Override @Transactional(readOnly = true) List<String> getResourceTemplateNames(String webServerName); @Override @Transactional(readOnly = true) String getResourceTemplate(final String webServerName, final String resourceTemplateName,
                                      final boolean tokensReplaced, final ResourceGroup resourceGroup); @Override String getResourceTemplateMetaData(String aWebServerName, String resourceTemplateName); @Override @Transactional void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user); @Override @Transactional String updateResourceTemplate(final String wsName, final String resourceTemplateName, final String template); @Override @Transactional(readOnly = true) String previewResourceTemplate(final String fileName, final String webServerName, final String groupName, final String template); @Override @Transactional(readOnly = true) Long getWebServerStartedCount(final String groupName); @Override @Transactional(readOnly = true) Long getWebServerCount(final String groupName); @Override Long getWebServerStoppedCount(final String groupName); @Override WebServer generateAndDeployFile(String webServerName, String fileName, User user); }
WebServerServiceImpl implements WebServerService { @Override @Transactional public void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user) { try { ResourceTemplateMetaData metaData = resourceService.getMetaData(metaDataStr); ResourceIdentifier resourceId = new ResourceIdentifier.Builder() .setResourceName(metaData.getDeployFileName()) .setGroupName(groupName) .setWebServerName(webServer.getName()).build(); resourceService.createResource(resourceId, metaData, IOUtils.toInputStream(templateContent)); } catch (IOException e) { LOGGER.error("Failed to map meta data when uploading web server config {} for {}", templateName, webServer, e); throw new InternalErrorException(FaultType.BAD_STREAM, "Unable to map the meta data for template " + templateName, e); } } WebServerServiceImpl(final WebServerPersistenceService webServerPersistenceService,
                                final ResourceService resourceService,
                                @Qualifier("webServerInMemoryStateManagerService")
                                final InMemoryStateManagerService<Identifier<WebServer>, WebServerReachableState> inMemoryStateManagerService,
                                final String templatePath,
                                final BinaryDistributionLockManager binaryDistributionLockManager); @Override @Transactional WebServer createWebServer(final CreateWebServerRequest createWebServerRequest,
                                     final User aCreatingUser); @Override @Transactional(readOnly = true) WebServer getWebServer(final Identifier<WebServer> aWebServerId); @Override @Transactional(readOnly = true) WebServer getWebServer(final String aWebServerName); @Override @Transactional(readOnly = true) List<WebServer> getWebServers(); @Override @Transactional(propagation = Propagation.REQUIRES_NEW) List<WebServer> getWebServersPropagationNew(); @Override @Transactional(readOnly = true) List<WebServer> findWebServers(final Identifier<Group> aGroupId); @Override @Transactional WebServer updateWebServer(final UpdateWebServerRequest anUpdateWebServerCommand,
                                     final User anUpdatingUser); @Override @Transactional void deleteWebServer(final Identifier<WebServer> id, final boolean hardDelete, final User user); @Override boolean isStarted(WebServer webServer); @Override @Transactional(propagation = Propagation.REQUIRES_NEW) void updateState(final Identifier<WebServer> id, final WebServerReachableState state, final String errorStatus); @Override String generateInstallServiceScript(WebServer webServer); @Override @Transactional(readOnly = true) List<String> getResourceTemplateNames(String webServerName); @Override @Transactional(readOnly = true) String getResourceTemplate(final String webServerName, final String resourceTemplateName,
                                      final boolean tokensReplaced, final ResourceGroup resourceGroup); @Override String getResourceTemplateMetaData(String aWebServerName, String resourceTemplateName); @Override @Transactional void uploadWebServerConfig(WebServer webServer, String templateName, String templateContent, String metaDataStr, String groupName, User user); @Override @Transactional String updateResourceTemplate(final String wsName, final String resourceTemplateName, final String template); @Override @Transactional(readOnly = true) String previewResourceTemplate(final String fileName, final String webServerName, final String groupName, final String template); @Override @Transactional(readOnly = true) Long getWebServerStartedCount(final String groupName); @Override @Transactional(readOnly = true) Long getWebServerCount(final String groupName); @Override Long getWebServerStoppedCount(final String groupName); @Override WebServer generateAndDeployFile(String webServerName, String fileName, User user); static final String INSTALL_SERVICE_SCRIPT_NAME; }