X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fde%2Ftodesbaum%2Fjsite%2Fmain%2FCLI.java;h=40f16df00e660679bbed47a44207fc21eb8fe108;hb=a6bda7a82aa1b2cfd0313fb28d3dcca68ca516c5;hp=668720be5b068e2e55eb03f86eee92f2c0fab8fe;hpb=dae57ff296a55b4e523fb38ec6cd00f7211e4fd5;p=jSite.git diff --git a/src/de/todesbaum/jsite/main/CLI.java b/src/de/todesbaum/jsite/main/CLI.java index 668720b..40f16df 100644 --- a/src/de/todesbaum/jsite/main/CLI.java +++ b/src/de/todesbaum/jsite/main/CLI.java @@ -1,6 +1,5 @@ /* - * jSite - - * Copyright (C) 2006 David Roden + * jSite - CLI.java - Copyright © 2006–2011 David Roden * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -89,11 +88,11 @@ public class CLI implements InsertListener { } } - Configuration configuration = new Configuration(configFile); - if (!configuration.createLockFile()) { - outputWriter.println("Lock file found!"); - return; + ConfigurationLocator configurationLocator = new ConfigurationLocator(); + if (configFile != null) { + configurationLocator.setCustomLocation(configFile); } + Configuration configuration = new Configuration(configurationLocator, configurationLocator.findPreferredLocation()); projectInserter.addInsertListener(this); projects = configuration.getProjects(); @@ -107,6 +106,10 @@ public class CLI implements InsertListener { Project currentProject = null; for (String argument : args) { + if (argument.startsWith("--config-file=")) { + /* we already parsed this one. */ + continue; + } String value = argument.substring(argument.indexOf('=') + 1).trim(); if (argument.startsWith("--node=")) { Node newNode = getNode(value); @@ -153,9 +156,11 @@ public class CLI implements InsertListener { } } + int errorCode = 1; if (currentProject != null) { if (insertProject(currentProject)) { outputWriter.println("Project \"" + currentProject.getName() + "\" successfully inserted."); + errorCode = 0; } else { outputWriter.println("Project \"" + currentProject.getName() + "\" was not successfully inserted."); } @@ -163,6 +168,8 @@ public class CLI implements InsertListener { configuration.setProjects(projects); configuration.save(); + + System.exit(errorCode); } /** @@ -244,7 +251,7 @@ public class CLI implements InsertListener { * {@inheritDoc} */ public void projectUploadFinished(Project project) { - outputWriter.println("Project \"" + project.getName() + "\" has ben uploaded, starting insert..."); + outputWriter.println("Project \"" + project.getName() + "\" has been uploaded, starting insert..."); } /**