/** * Finds the directory for the resource assuming a 1.x style data directory. * * <p>Something like: * * <pre> * featureTypes/states_shapefile_states * coverages/sfdem_dem * </pre> * * @param resource The resource. * @return The directory for the resource, or null if it could not be found. */ public File findLegacyResourceDir(ResourceInfo resource) throws IOException { StoreInfo store = resource.getStore(); String dirname = store.getName() + "_" + resource.getName(); File dir = null; if (resource instanceof FeatureTypeInfo) { dir = resourceLoader.find("featureTypes", dirname); } else if (resource instanceof CoverageInfo) { dir = resourceLoader.find("coverages", dirname); } return dir != null ? dir : null; }
private File getFile(final String tileLayerId, final boolean create) throws IOException { final String fileName = FilePathGenerator.filteredLayerName(tileLayerId) + ".xml"; final File base = resourceLoader.findOrCreateDirectory(baseDirectory); File file = resourceLoader.find(base, fileName); if (null == file && create) { return resourceLoader.createFile(base, fileName); } return file; }
File file = loader.find(reqPath);
@Override protected void readConfiguration(GeoServer geoServer, XStreamPersister xp) throws Exception { // look for legacy services.xml File f = resourceLoader.find("services.xml"); if (f != null) { // load configuration LegacyConfigurationImporter importer = new LegacyConfigurationImporter(); importer.setConfiguration(geoServer); importer.imprt(resourceLoader.getBaseDirectory()); } else { LOGGER.warning("No configuration file found."); } } }
@Override protected void readCatalog(Catalog catalog, XStreamPersister xp) throws Exception { catalog.setResourceLoader(resourceLoader); // look for legacy catalog.xml File f = resourceLoader.find("catalog.xml"); if (f != null) { LegacyCatalogImporter catalogImporter = new LegacyCatalogImporter(); catalogImporter.setResourceLoader(resourceLoader); catalogImporter.setCatalog(catalog); catalogImporter.imprt(resourceLoader.getBaseDirectory()); } else { LOGGER.warning("No catalog file found."); } }
} else { File f = loader.find("services.xml"); if (f != null) { LegacyLoggingImporter loggingImporter = new LegacyLoggingImporter();
@Test public void testRemoveSettings() throws Exception { testAddSettings(); WorkspaceInfo ws = catalog.getWorkspaceByName("acme"); File f = catalog.getResourceLoader().find("workspaces", ws.getName(), "settings.xml"); assertNotNull(f); SettingsInfo settings = getGeoServer().getSettings(ws); getGeoServer().remove(settings); f = catalog.getResourceLoader().find("workspaces", ws.getName(), "settings.xml"); assertNull(f); }
@Test public void testAddSettings() throws Exception { testAddWorkspace(); WorkspaceInfo ws = catalog.getWorkspaceByName("acme"); SettingsInfo settings = getGeoServer().getFactory().createSettings(); settings.setTitle("ACME"); settings.setWorkspace(ws); File f = catalog.getResourceLoader().find("workspaces", ws.getName(), "settings.xml"); assertNull(f); getGeoServer().add(settings); f = catalog.getResourceLoader().find("workspaces", ws.getName(), "settings.xml"); assertNotNull(f); Document dom = dom(f); assertXpathEvaluatesTo("ACME", "/settings/title", dom); }
@Test public void testModifySettingsChangeWorkspace() throws Exception { testAddSettings(); WorkspaceInfo ws1 = catalog.getWorkspaceByName("acme"); WorkspaceInfo ws2 = catalog.getFactory().createWorkspace(); ws2.setName("foo"); catalog.add(ws2); SettingsInfo settings = getGeoServer().getSettings(ws1); settings.setWorkspace(ws2); getGeoServer().save(settings); File f = catalog.getResourceLoader().find("workspaces", ws1.getName(), "settings.xml"); assertNull(f); f = catalog.getResourceLoader().find("workspaces", ws2.getName(), "settings.xml"); assertNotNull(f); Document dom = dom(f); assertXpathEvaluatesTo(ws2.getId(), "/settings/workspace/id", dom); }
@Test public void testModifySettings() throws Exception { testAddSettings(); WorkspaceInfo ws = catalog.getWorkspaceByName("acme"); SettingsInfo settings = getGeoServer().getSettings(ws); settings.setTitle("FOO"); getGeoServer().save(settings); File f = catalog.getResourceLoader().find("workspaces", ws.getName(), "settings.xml"); assertNotNull(f); Document dom = dom(f); assertXpathEvaluatesTo("FOO", "/settings/title", dom); }
/** * @return the config file or {@code null} if it does not exist * @throws IOException */ File findConfigFile() throws IOException { final File configFile = resourceLoader.find(GWC_CONFIG_FILE); return configFile; }
private File findConfigFile() throws IOException { File configFile = resourceLoader.find(CONFIG_FILE_NAME); if (configFile == null) { configFile = new File(resourceLoader.getBaseDirectory(), CONFIG_FILE_NAME); } return configFile; }
File toFile(String value) { if (value == null || "".equals(value)) { return null; } try { // first try as a url to strip off url protocol prefix try { URL url = new URL(value); if ("file".equals(url.getProtocol())) { value = url.getFile(); } } catch (MalformedURLException e) { } File file = new File(value); if (file.isAbsolute()) { return file; } return resourceLoader.find(value); } catch (IOException e) { LOGGER.log(Level.WARNING, "Error converting \"" + value + "\" to File", e); } return null; }
@Override protected Collection<FreemarkerTemplateInfo> handleListGet() throws Exception { File directory = catalog.getResourceLoader().find(FreemarkerTemplateResource.getDirectoryPath(getRequest())); File[] files = directory.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { return name.endsWith(".ftl"); } }); List<FreemarkerTemplateInfo> list = new ArrayList<FreemarkerTemplateInfo>(); for (File file : files) { list.add(new FreemarkerTemplateInfo(file)); } return list; }
public void testPrecondition() throws Exception { // gwc-gs.xml shall exists, it's GWCInitializer responsibility when(resourceLoader.find(eq(GWCConfigPersister.GWC_CONFIG_FILE))).thenReturn(null); try { persister.getConfig(); fail("Expected assertion error"); } catch (RuntimeException e) { assertTrue(e.getMessage().contains(GWCConfigPersister.GWC_CONFIG_FILE)); } }
private File getTemplateFile() { try { File directory = catalog.getResourceLoader().find(getDirectoryPath(getRequest())); File templateFile = catalog.getResourceLoader().find(directory, getAttribute("template") + "." + MEDIATYPE_FTL_EXTENSION); if (templateFile == null) { if (LOGGER.isLoggable(Level.INFO)) { LOGGER.info("File not found: " + getDirectoryPathAsString(getRequest()) + "/" + getAttribute("template") + "." + MEDIATYPE_FTL_EXTENSION); } throw new RestletException("File Not Found", Status.CLIENT_ERROR_NOT_FOUND); } else { return templateFile; } } catch (IOException e) { throw new RestletException(e.getMessage(), Status.CLIENT_ERROR_NOT_FOUND, e); } }
@Test public void testDeleteFromWorkspaceWithPurge() throws Exception { testPostAsSLDToWorkspace(); Catalog cat = getCatalog(); assertNotNull(cat.getStyleByName("gs", "foo")); GeoServerResourceLoader rl = getResourceLoader(); assertNotNull(rl.find("workspaces", "gs", "styles", "foo.sld")); MockHttpServletResponse response = deleteAsServletResponse( RestBaseController.ROOT_PATH + "/workspaces/gs/styles/foo?purge=true"); assertEquals(200, response.getStatus()); assertNull(cat.getStyleByName("gs", "foo")); assertNull(rl.find("workspaces", "gs", "styles", "foo.sld")); }
@Test public void testConfiguration() throws IOException { // store the properties into a temp folder and relaod assertTrue(monitor.getConfig().getFileLocations().isEmpty()); File tmpDir = createTempDir(); GeoServerResourceLoader resourceLoader = new GeoServerResourceLoader(tmpDir); monitor.getConfig().saveConfiguration(resourceLoader); Resource controlFlowProps = Files.asResource(resourceLoader.find("monitor.properties")); assertTrue(Resources.exists(controlFlowProps)); PropertyFileWatcher savedProps = new PropertyFileWatcher(controlFlowProps); assertEquals(savedProps.getProperties(), monitor.getConfig().getProperties()); }
@Test public void testPostAsSLDToWorkspace() throws Exception { assertNull(catalog.getStyleByName("gs", "foo")); String xml = newSLDXML(); MockHttpServletResponse response = postAsServletResponse( RestBaseController.ROOT_PATH + "/workspaces/gs/styles", xml, SLDHandler.MIMETYPE_10); assertEquals(201, response.getStatus()); assertNotNull(response.getHeader("Location")); assertTrue(response.getHeader("Location").endsWith("/workspaces/gs/styles/foo")); assertNotNull(catalog.getStyleByName("gs", "foo")); GeoServerResourceLoader rl = getResourceLoader(); assertNotNull(rl.find("workspaces", "gs", "styles", "foo.sld")); }