/** * Loads the configuration file in workspace or global * * @param info * @return configuration */ public QosMainConfiguration getConfiguration(ServiceInfo info) { Resource resource = getResource(info); // if doesn't exists, return a deactivated default config object if (resource.getType().equals(Resource.Type.UNDEFINED)) { return buildDeactivatedConfig(); } QosMainConfiguration conf = null; XStream xstream = XstreamQosFactory.getInstance(); try (InputStream is = resource.in()) { conf = (QosMainConfiguration) xstream.fromXML(is); } catch (IOException e) { throw new RuntimeException(e); } return conf; }
response.setHeader("Resource-Parent", href(resource.parent().path())); response.setHeader("Resource-Type", resource.getType().toString().toLowerCase());
Resource cssResource = dataDir.get(si, filenameCss); if (!cssResource.getType().equals(Resource.Type.UNDEFINED)) {
/** * Create from resource. The class must be static for serialization, but output is request * dependent so passing on self. */ protected ResourceMetadataInfo( Resource resource, HttpServletRequest request, boolean isDir) { if (!resource.path().isEmpty()) { parent = new ResourceParentInfo( "/" + resource.parent().path(), new AtomLink( href(resource.parent().path()), "alternate", getFormat(request).toString())); } lastModified = new Date(resource.lastmodified()); type = isDir ? null : resource.getType().toString().toLowerCase(); name = resource.name(); }
private static List<WhitelistRule> loadWhitelist(Resource input) throws IOException { Resource parent = input.parent(); if (!(parent.getType().equals(Resource.Type.DIRECTORY) && input.getType().equals(Resource.Type.RESOURCE))) { return newArrayList(); } try (Reader reader = new InputStreamReader(input.in(), Charsets.UTF_8)) { return (List<WhitelistRule>) getConfigredXstream().fromXML(reader); } catch (Exception e) { String msg = "Unable to load whitelist " + input.name(); LOGGER.log(Level.WARNING, msg, e); throw new IOException(msg, e); } }
private Resource findOrCreateConfigResource() throws IOException { Resource dirResource = resourceStore.get(CONFIG_DIR_NAME); Resource configResource = dirResource.get(CONFIG_FILE_NAME); copySampleInitSript(dirResource, "mysql.sql"); copySampleInitSript(dirResource, "postgresql.sql"); copySampleInitSript(dirResource, "postgresql.properties"); copySampleInitSript(dirResource, "sqlite.sql"); copySampleInitSript(dirResource, "hsqldb.sql"); copySampleInitSript(dirResource, "hsqldb.properties"); if (configResource.getType().equals(Resource.Type.UNDEFINED)) { createDefaultConfig(configResource); } return configResource; }
private Resource resolveScript(String scriptProp, Resource configResource) { Resource scriptResource = resourceStore.get(scriptProp); if (scriptResource.getType().equals(Resource.Type.UNDEFINED)) { scriptResource = configResource.parent().get(scriptProp); checkArgument( scriptResource.getType().equals(Resource.Type.RESOURCE), "Script file %s does not exist", scriptResource.path()); } return scriptResource; }
/** Delete resource */ @DeleteMapping public void resourceDelete(HttpServletRequest request) { Resource resource = resource(request); if (Type.UNDEFINED.equals(resource.getType())) { throw new ResourceNotFoundException("Resource '" + resource.path() + "' not found"); } boolean removed = resource.delete(); if (!removed) { throw new RestException( "Resource '" + resource.path() + "' not removed", HttpStatus.INTERNAL_SERVER_ERROR); } }
static void copySampleInitSript(Resource configDirectory, String scriptName) throws IOException { Resource resource = configDirectory.get(scriptName); if (!resource.getType().equals(Resource.Type.UNDEFINED)) { return; } try (OutputStream out = resource.out()) { Resources.copy(LogStoreInitializer.class.getResource(scriptName), out); } }