java/sql-dk/src/info/globalcode/sql/dk/CLIStarter.java
branchv_0
changeset 63 3b9ec9c23a37
parent 56 29f45ab3b959
child 64 fcc499518dc7
equal deleted inserted replaced
62:7a88ac6ba40c 63:3b9ec9c23a37
    27 import info.globalcode.sql.dk.formatting.FormatterContext;
    27 import info.globalcode.sql.dk.formatting.FormatterContext;
    28 import info.globalcode.sql.dk.formatting.FormatterException;
    28 import info.globalcode.sql.dk.formatting.FormatterException;
    29 import java.io.IOException;
    29 import java.io.IOException;
    30 import java.sql.SQLException;
    30 import java.sql.SQLException;
    31 import java.util.logging.Level;
    31 import java.util.logging.Level;
       
    32 import java.util.logging.LogRecord;
    32 import java.util.logging.Logger;
    33 import java.util.logging.Logger;
    33 import javax.xml.bind.JAXBContext;
    34 import javax.xml.bind.JAXBContext;
    34 import javax.xml.bind.Unmarshaller;
    35 import javax.xml.bind.Unmarshaller;
    35 
    36 
    36 /**
    37 /**
    47 	private Configuration configuration;
    48 	private Configuration configuration;
    48 
    49 
    49 	public static void main(String[] args) {
    50 	public static void main(String[] args) {
    50 		log.log(Level.FINE, "Starting " + Constants.PROGRAM_NAME);
    51 		log.log(Level.FINE, "Starting " + Constants.PROGRAM_NAME);
    51 		int exitCode = EXIT_EXPECTED_ERROR;
    52 		int exitCode = EXIT_EXPECTED_ERROR;
    52 		
    53 
    53 		if (args.length == 0) {
    54 		if (args.length == 0) {
    54 			args = new String[]{CLIParser.Tokens.INFO_HELP};
    55 			args = new String[]{CLIParser.Tokens.INFO_HELP};
    55 		}
    56 		}
    56 
    57 
    57 		try {
    58 		try {
    66 		} catch (CLIParserException e) {
    67 		} catch (CLIParserException e) {
    67 			log.log(Level.SEVERE, "Unable to parse CLI options", e);
    68 			log.log(Level.SEVERE, "Unable to parse CLI options", e);
    68 		} catch (InvalidOptionsException e) {
    69 		} catch (InvalidOptionsException e) {
    69 			log.log(Level.SEVERE, "Invalid CLI options", e);
    70 			log.log(Level.SEVERE, "Invalid CLI options", e);
    70 			for (InvalidOptionsException.OptionProblem p : e.getProblems()) {
    71 			for (InvalidOptionsException.OptionProblem p : e.getProblems()) {
    71 				log.log(Level.SEVERE, "Option problem: {0}", p.getDescription());
    72 				LogRecord r = new LogRecord(Level.SEVERE, "Option problem: {0}");
       
    73 				r.setThrown(p.getException());
       
    74 				r.setParameters(new Object[]{p.getDescription()});
       
    75 				log.log(r);
    72 			}
    76 			}
    73 		} catch (ConfigurationException e) {
    77 		} catch (ConfigurationException e) {
    74 			log.log(Level.SEVERE, "Configuration problem", e);
    78 			log.log(Level.SEVERE, "Configuration problem", e);
    75 		} catch (SQLException e) {
    79 		} catch (SQLException e) {
    76 			log.log(Level.SEVERE, "SQL problem", e);
    80 			log.log(Level.SEVERE, "SQL problem", e);