public void addError(String message, String location) { this.addError(new PluginError(message, location)); }
public JsonConfigCollection parseFiles(File baseDir, String[] files) { JsonConfigCollection collection = new JsonConfigCollection(); for (String file : files) { try { parseStream(collection, new FileInputStream(new File(baseDir, file)), file); } catch (FileNotFoundException ex) { collection.addError("File matching GoCD YAML pattern disappeared", file); } } return collection; }
public void parseStream(JsonConfigCollection result, InputStream input, String location) { try (InputStreamReader contentReader = new InputStreamReader(input)) { if (input.available() < 1) { result.addError("File is empty", location); return; } YamlConfig config = new YamlConfig(); config.setAllowDuplicates(false); YamlReader reader = new YamlReader(contentReader, config); Object rootObject = reader.read(); JsonConfigCollection filePart = rootTransform.transform(rootObject, location); result.append(filePart); } catch (YamlReader.YamlReaderException e) { result.addError(e.getMessage(), location); } catch (IOException e) { result.addError(e.getMessage() + " : " + e.getCause().getMessage() + " : ", location); } } }
partialConfig.addPipeline(jsonPipeline, location); } catch (Exception ex) { partialConfig.addError(new PluginError( String.format("Failed to parse pipeline %s; %s", pipe.getKey(), ex.getMessage()), location)); partialConfig.addEnvironment(jsonEnvironment, location); } catch (Exception ex) { partialConfig.addError(new PluginError( String.format("Failed to parse environment %s; %s", env.getKey(), ex.getMessage()), location));
private GoPluginApiResponse handlingErrors(Supplier<GoPluginApiResponse> exec) { try { return exec.get(); } catch (ParsedRequest.RequestParseException e) { return badRequest(e.getMessage()); } catch (Exception e) { LOGGER.error("Unexpected error occurred in YAML configuration plugin.", e); JsonConfigCollection config = new JsonConfigCollection(); config.addError(new PluginError(e.toString(), "YAML config plugin")); return error(gson.toJson(config.getJsonObject())); } }