private static ApplicationMetaData readMetaData(File appDir) { ApplicationMetaData defaultMetaData = new ApplicationMetaData(appDir, "n/a", "n/a", 0l, false, "", 0l, 0l); File metaFile = new File(appDir, META_FILE_NAME); if (!metaFile.exists()) { return defaultMetaData; } try (FileReader reader = new FileReader(metaFile)) { return ApplicationMetaData.fromJsonString(IOUtils.readAll(reader)); } catch (Exception e) { // Not a big deal, return default return defaultMetaData; } }
@Override public void getConfig(ApplicationMetadataConfig.Builder builder) { if (applicationMetaData != null) { builder.name(applicationMetaData.getApplicationName()). user(applicationMetaData.getDeployedByUser()). path(applicationMetaData.getDeployPath()). timestamp(applicationMetaData.getDeployTimestamp()). checksum(applicationMetaData.getCheckSum()). generation(applicationMetaData.getGeneration()); } }
@Override public void writeMetaData() throws IOException { File metaFile = new File(appDir, META_FILE_NAME); IOUtils.writeFile(metaFile, metaData.asJsonString(), false); }
protected MockApplicationPackage(File root, String hosts, String services, List<String> searchDefinitions, String searchDefinitionDir, String deploymentSpec, String validationOverrides, boolean failOnValidateXml, String queryProfile, String queryProfileType) { this.root = root; this.hostsS = hosts; this.servicesS = services; this.searchDefinitions = searchDefinitions; this.searchDefinitionDir = searchDefinitionDir; this.deploymentSpec = Optional.ofNullable(deploymentSpec); this.validationOverrides = Optional.ofNullable(validationOverrides); this.failOnValidateXml = failOnValidateXml; queryProfileRegistry = new QueryProfileXMLReader().read(asNamedReaderList(queryProfileType), asNamedReaderList(queryProfile)); applicationMetaData = new ApplicationMetaData("user", "dir", 0L, false, "application", "checksum", 1L, 0L); }
public static ApplicationMetaData fromJsonString(String jsonString) { try { Slime data = new Slime(); new JsonDecoder().decode(data, Utf8.toBytes(jsonString)); Inspector root = data.get(); Inspector deploy = root.field("deploy"); Inspector app = root.field("application"); return new ApplicationMetaData(deploy.field("user").asString(), deploy.field("from").asString(), deploy.field("timestamp").asLong(), booleanField("internalRedeploy", false, deploy), app.field("name").asString(), app.field("checksum").asString(), app.field("generation").asLong(), app.field("previousActiveGeneration").asLong()); } catch (Exception e) { throw new IllegalArgumentException("Error parsing json metadata", e); } }
public String getApplicationName() { return metaData.getApplicationName(); }
private static ApplicationMetaData metaDataFromDeployData(File appDir, DeployData deployData) { return new ApplicationMetaData(deployData.getDeployedByUser(), deployData.getDeployedFromDir(), deployData.getDeployTimestamp(), deployData.isInternalRedeploy(), deployData.getApplicationName(), computeCheckSum(appDir), deployData.getGeneration(), deployData.getCurrentlyActiveGeneration()); }