1 package org.objectweb.celtix.tools; 2 3 import java.util.HashSet ; 4 5 import javax.wsdl.Definition; 6 7 import org.objectweb.celtix.common.i18n.Message; 8 import org.objectweb.celtix.tools.common.ProcessorEnvironment; 9 import org.objectweb.celtix.tools.common.ToolConstants; 10 import org.objectweb.celtix.tools.common.ToolException; 11 import org.objectweb.celtix.tools.common.toolspec.ToolRunner; 12 import org.objectweb.celtix.tools.common.toolspec.ToolSpec; 13 import org.objectweb.celtix.tools.common.toolspec.parser.BadUsageException; 14 import org.objectweb.celtix.tools.common.toolspec.parser.ErrorVisitor; 15 import org.objectweb.celtix.tools.processors.java2.JavaToWSDLProcessor; 16 17 public class JavaToWSDL extends AbstractCeltixToolContainer { 18 19 private static final String TOOL_NAME = "java2wsdl"; 20 private static String [] args; 21 private static Definition definition; 22 23 public JavaToWSDL(ToolSpec toolspec) throws Exception { 24 super(TOOL_NAME, toolspec); 25 } 26 27 public void execute(boolean exitOnFinish) throws ToolException { 28 JavaToWSDLProcessor processor = new JavaToWSDLProcessor(); 29 30 try { 31 super.execute(exitOnFinish); 32 if (!hasInfoOption()) { 33 ProcessorEnvironment env = new ProcessorEnvironment(); 34 env.setParameters(getParametersMap(new HashSet ())); 35 if (isVerboseOn()) { 36 env.put(ToolConstants.CFG_VERBOSE, Boolean.TRUE); 37 } 38 processor.setEnvironment(env); 39 processor.process(); 40 definition = processor.getModel().getDefinition(); 41 } 42 } catch (ToolException ex) { 43 if (ex.getCause() instanceof BadUsageException) { 44 getInstance().printUsageException(TOOL_NAME, (BadUsageException)ex.getCause()); 45 } 46 throw ex; 47 } catch (Exception ex) { 48 throw new ToolException(ex.getMessage(), ex.getCause()); 49 } 50 } 51 52 public static void main(String [] pargs) { 53 try { 54 runTool(pargs); 55 } catch (BadUsageException ex) { 56 System.err.println("Error : " + ex.getMessage()); 57 getInstance().printUsageException(TOOL_NAME, ex); 58 if (getInstance().isVerboseOn()) { 59 ex.printStackTrace(); 60 } 61 } catch (Exception ex) { 62 System.err.println("Error : " + ex.getMessage()); 63 System.err.println(); 64 if (getInstance().isVerboseOn()) { 65 ex.printStackTrace(); 66 } 67 } 68 } 69 70 public static void runTool(String [] pargs) throws Exception { 71 args = pargs; 72 ToolRunner.runTool(JavaToWSDL.class, JavaToWSDL.class 73 .getResourceAsStream(ToolConstants.TOOLSPECS_BASE + "java2wsdl.xml"), false, args); 74 } 75 76 public void checkParams(ErrorVisitor errors) throws ToolException { 77 if (errors.getErrors().size() > 0) { 78 Message msg = new Message("PARAMETER_MISSSING", LOG); 79 throw new ToolException(msg, new BadUsageException(getUsage(), errors)); 80 } 81 } 82 83 84 public static Definition getDefinition() { 85 return definition; 86 } 87 } 88 | Popular Tags |