mirror of
https://github.com/zaaarf/lillero-mapping-writer.git
synced 2024-11-22 16:14:58 +01:00
fix: don't bother with error catching
This commit is contained in:
parent
5bd9f685b1
commit
4cb9bb46e0
1 changed files with 48 additions and 51 deletions
|
@ -21,60 +21,57 @@ public class MappingWriter {
|
||||||
/**
|
/**
|
||||||
* The main function, must be passed exactly two arguments
|
* The main function, must be passed exactly two arguments
|
||||||
* @param args the command line arguments
|
* @param args the command line arguments
|
||||||
* @throws IOException if something goes wrong
|
* @throws IOException if something goes wrong while writing the file
|
||||||
|
* @throws ParseException if something goes wrong while parsin arguments
|
||||||
*/
|
*/
|
||||||
public static void main(String[] args) throws IOException, ParseException {
|
public static void main(String[] args) throws IOException, ParseException {
|
||||||
try {
|
Options options = new Options()
|
||||||
Options options = new Options()
|
.addOption("r", "reverse", false, "Writes down inverted mappings");
|
||||||
.addOption("r", "reverse", false, "Writes down inverted mappings");
|
DefaultParser parser = new DefaultParser();
|
||||||
DefaultParser parser = new DefaultParser();
|
CommandLine cmdLine = parser.parse(options, args);
|
||||||
CommandLine cmdLine = parser.parse(options, args);
|
args = cmdLine.getArgs();
|
||||||
args = cmdLine.getArgs();
|
|
||||||
|
|
||||||
if(args.length != 3) {
|
if(args.length != 3) {
|
||||||
System.err.println("Bad argument count!");
|
System.err.println("Bad argument count!");
|
||||||
System.err.println("java -jar mapping-writer.jar [-r] <location> <format> <output>");
|
System.err.println("java -jar mapping-writer.jar [-r] <location> <format> <output>");
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
//load the mapper
|
|
||||||
List<String> lines = MapperProvider.fetchFromLocalOrRemote(args[0]);
|
|
||||||
IMapper mapper = MapperProvider.getMapper(lines);
|
|
||||||
mapper.populate(lines, false);
|
|
||||||
if(cmdLine.hasOption("reverse"))
|
|
||||||
mapper = mapper.getInverted();
|
|
||||||
|
|
||||||
//load the writers
|
|
||||||
Map<String, IWriter> writerMap = new HashMap<>();
|
|
||||||
for(IWriter w : ServiceLoader.load(IWriter.class))
|
|
||||||
writerMap.put(w.uniqueId(), w);
|
|
||||||
|
|
||||||
//get the one we need
|
|
||||||
IWriter writer = writerMap.get(args[1]);
|
|
||||||
if(writer == null) {
|
|
||||||
System.err.printf("%s was not recognised as a valid format!", args[1]);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
//now for the file
|
|
||||||
File targetFile = new File(args[2]);
|
|
||||||
|
|
||||||
if(!targetFile.createNewFile()) {
|
|
||||||
System.out.println("File already exists!");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(!targetFile.canWrite()) {
|
|
||||||
System.out.println("Failed to write to file: access denied.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
//call the writer
|
|
||||||
PrintWriter printWriter = new PrintWriter(new FileWriter(targetFile));
|
|
||||||
writer.write(mapper, printWriter);
|
|
||||||
printWriter.close();
|
|
||||||
} catch(ParseException ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//load the mapper
|
||||||
|
List<String> lines = MapperProvider.fetchFromLocalOrRemote(args[0]);
|
||||||
|
IMapper mapper = MapperProvider.getMapper(lines);
|
||||||
|
mapper.populate(lines, false);
|
||||||
|
if(cmdLine.hasOption("reverse"))
|
||||||
|
mapper = mapper.getInverted();
|
||||||
|
|
||||||
|
//load the writers
|
||||||
|
Map<String, IWriter> writerMap = new HashMap<>();
|
||||||
|
for(IWriter w : ServiceLoader.load(IWriter.class))
|
||||||
|
writerMap.put(w.uniqueId(), w);
|
||||||
|
|
||||||
|
//get the one we need
|
||||||
|
IWriter writer = writerMap.get(args[1]);
|
||||||
|
if(writer == null) {
|
||||||
|
System.err.printf("%s was not recognised as a valid format!", args[1]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//now for the file
|
||||||
|
File targetFile = new File(args[2]);
|
||||||
|
|
||||||
|
if(!targetFile.createNewFile()) {
|
||||||
|
System.out.println("File already exists!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!targetFile.canWrite()) {
|
||||||
|
System.out.println("Failed to write to file: access denied.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//call the writer
|
||||||
|
PrintWriter printWriter = new PrintWriter(new FileWriter(targetFile));
|
||||||
|
writer.write(mapper, printWriter);
|
||||||
|
printWriter.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue