private void initParams(List params) throws ClassNotFoundException { NamedParameter param; for (Iterator iterator = params.iterator(); iterator.hasNext(); ) { String s = (String) iterator.next(); for (StringTokenizer tokenizer = new StringTokenizer(s, ";"); tokenizer.hasMoreTokens(); ) { String name = tokenizer.nextToken(); String type = tokenizer.nextToken(); if (name.equalsIgnoreCase("return")) { returnType = NamedParameter.createQName(type); } else if (name.equalsIgnoreCase("returnClass")) { returnClass = ClassHelper.loadClass(type, getClass()); } else { String mode = tokenizer.nextToken(); QName paramName = (QName) converter.convert(QName.class, name); QName qtype = null; if (type.startsWith("qname{")) { qtype = (QName) converter.convert(QName.class, name); } else { qtype = NamedParameter.createQName(type); } param = new NamedParameter(paramName, qtype, mode); addNamedParameter(param); } } } }
/** * Creates a Soap Method using the param string set in the MUle configuration file * * @param methodName the name of the method * @param params the param string to parse */ public SoapMethod(String methodName, List params) throws ClassNotFoundException { this((QName) converter.convert(QName.class, methodName), params); }