1 package jp.sourceforge.stigmata.command;
3 import java.io.FileWriter;
4 import java.io.IOException;
5 import java.io.PrintWriter;
7 import jp.sourceforge.stigmata.BirthmarkContext;
8 import jp.sourceforge.stigmata.Stigmata;
9 import jp.sourceforge.stigmata.printer.BirthmarkServicePrinter;
10 import jp.sourceforge.stigmata.spi.BirthmarkService;
11 import jp.sourceforge.stigmata.spi.ResultPrinterService;
15 * @author Haruaki Tamada
17 public class ListBirthmarksCommand extends AbstractStigmataCommand{
19 public String getCommandString(){
20 return "list-birthmarks";
24 public boolean perform(Stigmata stigmata, BirthmarkContext context, String[] args){
25 BirthmarkService[] spis = context.getEnvironment().findServices();
26 ResultPrinterService spi = stigmata.getPrinterManager().getService(context.getFormat());
27 BirthmarkServicePrinter formatter = spi.getBirthmarkServicePrinter();
32 out = new PrintWriter(System.out);
35 String target = validateTarget(args[0], context.getFormat());
36 out = new PrintWriter(new FileWriter(target));
38 formatter.printResult(out, spis);
39 }catch(IOException e){
45 private String validateTarget(String fileName, String format){
46 if(!fileName.endsWith("." + format)){
47 fileName = fileName + "." + format;