mirror of
https://github.com/zaaarf/lillero-mapping-writer.git
synced 2024-11-22 16:24:57 +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
|
||||
* @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 {
|
||||
try {
|
||||
Options options = new Options()
|
||||
.addOption("r", "reverse", false, "Writes down inverted mappings");
|
||||
DefaultParser parser = new DefaultParser();
|
||||
CommandLine cmdLine = parser.parse(options, args);
|
||||
args = cmdLine.getArgs();
|
||||
Options options = new Options()
|
||||
.addOption("r", "reverse", false, "Writes down inverted mappings");
|
||||
DefaultParser parser = new DefaultParser();
|
||||
CommandLine cmdLine = parser.parse(options, args);
|
||||
args = cmdLine.getArgs();
|
||||
|
||||
if(args.length != 3) {
|
||||
System.err.println("Bad argument count!");
|
||||
System.err.println("java -jar mapping-writer.jar [-r] <location> <format> <output>");
|
||||
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();
|
||||
if(args.length != 3) {
|
||||
System.err.println("Bad argument count!");
|
||||
System.err.println("java -jar mapping-writer.jar [-r] <location> <format> <output>");
|
||||
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();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue