- From: Mercurial notifier <nobody@w3.org>
- Date: Wed, 08 Sep 2010 19:55:32 +0000
- To: Unicorn Updates <www-validator-cvs@w3.org>
changeset: 1480:64aa677ff0e8 tag: tip user: Thomas Gambet <tgambet@w3.org> date: Wed Sep 08 15:55:10 2010 -0400 files: src/org/w3c/unicorn/UnicornCall.java src/org/w3c/unicorn/contract/CallMethod.java src/org/w3c/unicorn/contract/WADLUnmarshallerXPath.java description: ~ change type of mapOfCallParameter to an ArrayList to allow several parameters with the same name (keys were useless here) diff -r 3703fcba4aeb -r 64aa677ff0e8 src/org/w3c/unicorn/UnicornCall.java --- a/src/org/w3c/unicorn/UnicornCall.java Tue Sep 07 13:06:32 2010 -0400 +++ b/src/org/w3c/unicorn/UnicornCall.java Wed Sep 08 15:55:10 2010 -0400 @@ -98,7 +98,7 @@ logger.debug("Map of string parameter : " + mapOfStringParameter + "."); MimeType aMimeType = inputParameter.getMimeType(); - if (!aTask.getSupportedMimeTypes().contains(aMimeType.toString())) + if (aMimeType != null && !aTask.getSupportedMimeTypes().contains(aMimeType.toString())) throw new UnicornException(Message.ERROR, "$message_unsupported_mime_type", null, aMimeType.toString()); doNode(inputParameter, aTask.getTree()); @@ -212,8 +212,8 @@ aRequestList.addRequest(aRequest, aObserver.getID()); // Add fixed parameter - for (final CallParameter aCallParameter : aObserver.getCallMethod( - aInputMethod.getMethod()).getMapOfCallParameter().values()) { + for (final CallParameter aCallParameter : aObserver.getCallMethod(aInputMethod.getMethod()) + .getListOfCallParameter()) { if (aCallParameter.isRequired() && aCallParameter.isFixed()) { aRequest.addParameter(aCallParameter.getName(), aCallParameter.getFixed()); diff -r 3703fcba4aeb -r 64aa677ff0e8 src/org/w3c/unicorn/contract/CallMethod.java --- a/src/org/w3c/unicorn/contract/CallMethod.java Tue Sep 07 13:06:32 2010 -0400 +++ b/src/org/w3c/unicorn/contract/CallMethod.java Wed Sep 08 15:55:10 2010 -0400 @@ -4,7 +4,7 @@ package org.w3c.unicorn.contract; import java.net.URL; -import java.util.Map; +import java.util.ArrayList; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -44,8 +44,8 @@ /** * whether the call is sent or not */ - private Map<String, CallParameter> mapOfCallParameter; - + ArrayList<CallParameter> callParameters; + /** * Set the parameter for the object call * @@ -62,16 +62,16 @@ */ public CallMethod(final URL aURL, final boolean bPost, final String sName, final String sID, - final Map<String, CallParameter> mapOfCallParameter) { + final ArrayList<CallParameter> callParameters) { logger.trace("Constructor\n" + "URL : " + aURL + ".\n" + "Post : " + bPost + ".\n" + "Name : " + sName + ".\n" + "ID : " + sID + ".\n" + - "Map of call parameter : " + mapOfCallParameter + "."); + "Map of call parameter : " + callParameters + "."); this.aURL = aURL; - this.mapOfCallParameter = mapOfCallParameter; + this.callParameters = callParameters; this.bPost = bPost; this.sName = sName; this.sID = sID; @@ -82,8 +82,8 @@ * * @return Returns the parameters. */ - public Map<String, CallParameter> getMapOfCallParameter() { - return this.mapOfCallParameter; + public ArrayList<CallParameter> getListOfCallParameter() { + return this.callParameters; } /** @@ -93,7 +93,7 @@ * a parameter to add */ public void addParameter(final CallParameter aCallParameter) { - this.mapOfCallParameter.put(aCallParameter.getName(), aCallParameter); + this.callParameters.add(aCallParameter); } /** @@ -104,7 +104,10 @@ * @return the Call parameter researched */ public CallParameter getCallParameterByName(final String sName) { - return this.mapOfCallParameter.get(sName); + for (CallParameter param : callParameters) + if (param.getName().equals(sName)) + return param; + return null; } /** @@ -159,7 +162,7 @@ aStringBuffer.append("post=").append(this.bPost); aStringBuffer.append(sVariableSeparator); aStringBuffer.append("parameters=\n"); - aStringBuffer.append(this.mapOfCallParameter) + aStringBuffer.append(this.callParameters) .append(sVariableSeparator); return aStringBuffer.toString(); diff -r 3703fcba4aeb -r 64aa677ff0e8 src/org/w3c/unicorn/contract/WADLUnmarshallerXPath.java --- a/src/org/w3c/unicorn/contract/WADLUnmarshallerXPath.java Tue Sep 07 13:06:32 2010 -0400 +++ b/src/org/w3c/unicorn/contract/WADLUnmarshallerXPath.java Wed Sep 08 15:55:10 2010 -0400 @@ -267,8 +267,7 @@ for (int i = 0; i < aNodeListMethod.getLength(); i++) { final Node aNodeMethod = aNodeListMethod.item(i); - final Map<String, CallParameter> mapOfCallParameter; - mapOfCallParameter = new LinkedHashMap<String, CallParameter>(); + ArrayList<CallParameter> callParameters = new ArrayList<CallParameter>(); // URI of the resource (will be appended to the base URI) final String sResourceURI; @@ -340,14 +339,13 @@ .getAttributes().item(0).getNodeValue()); } - mapOfCallParameter.put(new String(aCallParameter.getName()), - aCallParameter); + callParameters.add(aCallParameter); } // iterate over query_variable list final CallMethod aCallMethod = new CallMethod(new URL(sBaseURI + sResourceURI), bPost, sName, sMethodID, - mapOfCallParameter); + callParameters); this.listOfCallMethod.add(aCallMethod); // fill mapOfInputMethod
Received on Wednesday, 8 September 2010 19:55:34 UTC