From 5d9a7c3229a10d6eb47b8ff5b7ad1afce37c5555 Mon Sep 17 00:00:00 2001 From: John Woodlock Date: Fri, 11 May 2012 10:48:04 +1000 Subject: [PATCH] wip api --- .../platform/api/ExtraDataApiResource.java | 38 +++++++++++++------ 1 file changed, 27 insertions(+), 11 deletions(-) diff --git a/mifosng-provider/src/main/java/org/mifosng/platform/api/ExtraDataApiResource.java b/mifosng-provider/src/main/java/org/mifosng/platform/api/ExtraDataApiResource.java index bc42ac061..a50de6559 100644 --- a/mifosng-provider/src/main/java/org/mifosng/platform/api/ExtraDataApiResource.java +++ b/mifosng-provider/src/main/java/org/mifosng/platform/api/ExtraDataApiResource.java @@ -1,6 +1,7 @@ package org.mifosng.platform.api; import java.util.ArrayList; +import java.util.Enumeration; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -92,20 +93,35 @@ public class ExtraDataApiResource { @Path("{datasetType}/{datasetName}/{datasetPKValue}") @Consumes({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML }) @Produces({ MediaType.APPLICATION_JSON}) - public Response saveExtraData(@PathParam("datasetType") final String datasetType,@PathParam("datasetName") final String datasetName, @PathParam("datasetPKValue") final String datasetPKValue, @Context HttpServletRequest uriInfo) { + public Response saveExtraData(@PathParam("datasetType") final String datasetType,@PathParam("datasetName") final String datasetName, @PathParam("datasetPKValue") final String datasetPKValue, @Context HttpServletRequest req) { try { - //uriInfo.getParameterNames() - MultivaluedMap incomingParams = uriInfo.getQueryParameters(); + + //MultivaluedMap incomingParams = uriInfo.getQueryParameters(); Map queryParams = new HashMap(); - - Set keys = incomingParams.keySet(); - for (String key : keys) { - String pValue = incomingParams.get(key).get(0); - queryParams.put(key, pValue); - logger.info(key + " - " + pValue); - } - + + //Set keys = incomingParams.keySet(); + + logger.info("Request JPW: " + req.toString()); + Enumeration paramNames = req.getParameterNames(); + String pValue = ""; + String pName; + String[] paramValues; + while(paramNames.hasMoreElements()) { + pName = (String) paramNames.nextElement(); + paramValues = req.getParameterValues(pName); + if (paramValues.length > 1) { + logger.info("Unexpected Parameter Error: " + pName + " has " + paramValues.length + " value(s)"); + } else { + if (paramValues.length == 1) { + pValue = paramValues[0]; + } else { + pValue = ""; + } + } + logger.info(pName + " - " + pValue); + queryParams.put(pName, pValue); + } this.readPlatformService.tempSaveExtraData(datasetType, datasetName, datasetPKValue, queryParams);