package test.annoparams;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;

import net.sf.annoparams.Param;
import net.sf.annoparams.ParamParser;

/** Simple usage examlple*/
public class Simple {
 
public static void main(String[] args) throws Exception{
   
Cmd cmd = new Cmd();
    ParamParser parser =
new ParamParser();
    parser.parseDefault
(args, cmd);
   
   
if(cmd.restParams == null){
     
System.out.println("You must specify a file as the last parameter");
      System.exit
(100);
   
}
   
//print all lines from this file
   
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(cmd.restParams[0])));
    String line =
null;
   
while((line=br.readLine()) != null){
     
if(cmd.all ||  !"".equals(line) )
       
System.out.print(cmd.prefix);
      System.out.println
(line);
     
   
}
  }
 
 
public static class Cmd{
   
@Param(shortHelp="prefix all lines (including blank ones)")
   
public boolean all;
   
@Param(shortHelp="prefix to be printed")
   
public String prefix;
   
//this a naming convention, a field named like this receives rest of the parameters
   
public File[] restParams;
 
}
}