List of usage examples for com.google.gwt.json.client JSONValue isString
public JSONString isString()
From source file:org.emfjson.gwt.map.Values.java
License:Open Source License
public void setOrAdd(EObject owner, EAttribute attribute, JSONValue value) { JSONString stringValue = value.isString(); if (stringValue != null) { EObjects.setOrAdd(owner, attribute, stringValue.stringValue()); }//from www . ja v a 2s .c o m JSONBoolean booleanValue = value.isBoolean(); if (booleanValue != null) { EObjects.setOrAdd(owner, attribute, booleanValue.toString()); } JSONNumber numberValue = value.isNumber(); if (numberValue != null) { EObjects.setOrAdd(owner, attribute, numberValue.toString()); } }
From source file:org.emfjson.gwt.map.ValueSerializer.java
License:Open Source License
public void setOrAdd(EObject owner, EAttribute attribute, JSONValue value) { String asString = null;/* www . ja va2 s . c o m*/ JSONString stringValue = value.isString(); if (stringValue != null) { asString = stringValue.stringValue(); } JSONBoolean booleanValue = value.isBoolean(); if (booleanValue != null) { asString = booleanValue.toString(); } JSONNumber numberValue = value.isNumber(); if (numberValue != null) { asString = numberValue.toString(); } if (asString != null) { Object converted = EcoreUtil.createFromString(attribute.getEAttributeType(), asString); EObjects.setOrAdd(owner, attribute, converted); } }
From source file:org.freemedsoftware.gwt.client.JsonUtil.java
License:Open Source License
@SuppressWarnings({ "unchecked", "rawtypes" }) public static synchronized Object shoehornJson(JSONValue r, String t) { if (r == null || r.toString().equals("null")) return null; if (t.equals("HashMap<String,HashMap<String,String>[]>")) { HashMap<String, HashMap<String, String>[]> oResult = new HashMap<String, HashMap<String, String>[]>(); JSONObject oA = r.isObject();//from www . j av a 2s . com if (oA != null) { Iterator<String> outerIter = oA.keySet().iterator(); while (outerIter.hasNext()) { String innerKey = outerIter.next(); List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>(); JSONArray a = oA.get(innerKey).isArray(); for (int oIter = 0; oIter < a.size(); oIter++) { HashMap<String, String> item = new HashMap<String, String>(); JSONObject obj = a.get(oIter).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { item.put(k, obj.get(k).isString().stringValue()); } } result.add(oIter, item); } oResult.put(innerKey, (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0])); } } return (HashMap<String, HashMap<String, String>[]>) oResult; } if (t.equals("HashMap<String,String>[]")) { List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>(); JSONArray a = r.isArray(); for (int oIter = 0; oIter < a.size(); oIter++) { HashMap<String, String> item = new HashMap<String, String>(); JSONObject obj = a.get(oIter).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { item.put(k, obj.get(k).isString().stringValue()); } } result.add(oIter, item); } return (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0]); } if (t.equals("HashMap<String,Object>[]")) { List<HashMap<?, ?>> result = new ArrayList<HashMap<?, ?>>(); JSONArray a = r.isArray(); for (int oIter = 0; oIter < a.size(); oIter++) { HashMap<String, Object> item = new HashMap<String, Object>(); JSONObject obj = a.get(oIter).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { item.put(k, obj.get(k)); } } result.add(oIter, item); } return (HashMap<String, String>[]) result.toArray(new HashMap<?, ?>[0]); } if (t.equals("HashMap<String,String>[][]")) { List<HashMap<?, ?>[]> result = new ArrayList<HashMap<?, ?>[]>(); JSONArray oArray = r.isArray(); for (int wayOuterIter = 0; wayOuterIter < oArray.size(); wayOuterIter++) { List<HashMap<?, ?>> innerResult = new ArrayList<HashMap<?, ?>>(); JSONArray a = r.isArray(); for (int oIter = 0; oIter < a.size(); oIter++) { HashMap<String, String> item = new HashMap<String, String>(); JSONObject obj = a.get(oIter).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { item.put(k, obj.get(k).isString().stringValue()); } } innerResult.add(oIter, item); } result.add(wayOuterIter, innerResult.toArray(new HashMap<?, ?>[0])); } return (HashMap<String, String>[][]) result.toArray(new HashMap<?, ?>[0][0]); } if (t.equals("HashMap<String,String>")) { JSONObject obj = r.isObject(); HashMap<String, String> result = new HashMap<String, String>(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { result.put(k, obj.get(k).isString().stringValue()); } } return (HashMap<String, String>) result; } if (t.equals("HashMap<String,Object>")) { JSONObject obj = r.isObject(); HashMap<String, Object> result = new HashMap<String, Object>(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k) != null) { result.put(k, obj.get(k)); } } return (HashMap<String, Object>) result; } if (t.equals("HashMap<String,HashMap<String,String>>")) { HashMap<String, HashMap<String, String>> oResult = new HashMap<String, HashMap<String, String>>(); JSONObject oA = r.isObject(); if (oA != null) { Iterator<String> outerIter = oA.keySet().iterator(); while (outerIter.hasNext()) { String innerKey = outerIter.next(); HashMap<String, String> item = new HashMap<String, String>(); JSONObject obj = oA.get(innerKey).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { item.put(k, obj.get(k).isString().stringValue()); } } oResult.put(innerKey, (HashMap<String, String>) item); } } return (HashMap<String, HashMap<String, String>>) oResult; } if (t.equals("HashMap<String,HashMap<String,Integer>>")) { HashMap<String, HashMap<String, Integer>> oResult = new HashMap<String, HashMap<String, Integer>>(); JSONObject oA = r.isObject(); if (oA != null) { Iterator<String> outerIter = oA.keySet().iterator(); while (outerIter.hasNext()) { String innerKey = outerIter.next(); HashMap<String, Integer> item = new HashMap<String, Integer>(); JSONObject obj = oA.get(innerKey).isObject(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isNumber() != null) { item.put(k, (int) obj.get(k).isNumber().doubleValue()); } } oResult.put(innerKey, (HashMap<String, Integer>) item); } } return (HashMap<String, HashMap<String, Integer>>) oResult; } if (t.equals("HashMap<Integer,String>")) { JSONObject obj = r.isObject(); HashMap<Integer, String> result = new HashMap<Integer, String>(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isString() != null) { result.put(Integer.valueOf(k), obj.get(k).isString().stringValue()); } } return (HashMap<Integer, String>) result; } if (t.equals("HashMap<String,Integer>")) { JSONObject obj = r.isObject(); HashMap<String, Integer> result = new HashMap<String, Integer>(); Iterator<String> iter = obj.keySet().iterator(); while (iter.hasNext()) { String k = iter.next(); if (obj.get(k).isNumber() != null) { result.put(k, (int) obj.get(k).isNumber().doubleValue()); } } return (HashMap<String, Integer>) result; } if (t.equals("String[][]")) { JSONArray outer = r.isArray(); List<String[]> x = new ArrayList<String[]>(); if (r.isArray() != null) { for (int oIter = 0; oIter < outer.size(); oIter++) { if (outer.get(oIter).isArray() != null) { JSONArray inner = outer.get(oIter).isArray(); List<String> xI = new ArrayList<String>(); if (inner.isArray() != null) { for (int iIter = 0; iIter < inner.size(); iIter++) { if (inner.get(iIter).isString() != null) { xI.add(iIter, inner.get(iIter).isString().stringValue()); } else if (inner.get(iIter).isNumber() != null) { xI.add(iIter, inner.get(iIter).isNumber().toString()); } } } x.add((String[]) xI.toArray(new String[0])); } } return (String[][]) x.toArray(new String[0][0]); } } if (t.equals("String[]")) { JSONArray a = r.isArray(); List<String> x = new ArrayList<String>(); if (r.isArray() != null) { for (int iter = 0; iter < a.size(); iter++) { if (a.get(iter).isString() != null) { x.add(iter, a.get(iter).isString().stringValue()); } } } return (String[]) x.toArray(new String[0]); } if (t.compareToIgnoreCase("HashMap<String,String[]>") == 0) { HashMap<String, String[]> oResult = new HashMap<String, String[]>(); JSONObject oA = r.isObject(); if (oA != null) { Iterator<String> outerIter = oA.keySet().iterator(); while (outerIter.hasNext()) { String innerKey = outerIter.next(); JSONArray a = oA.get(innerKey).isArray(); String[] x = new String[a.size()]; if (a.isArray() != null) { for (int iter = 0; iter < a.size(); iter++) { if (a.get(iter).isString() != null) { // x.add(iter, // a.get(iter).isString().stringValue()); x[iter] = a.get(iter).isString().stringValue(); } } } oResult.put(innerKey, x); } } return (HashMap<String, String[]>) oResult; } if (t.compareToIgnoreCase("HashMap<String,List>") == 0) { HashMap<String, List> oResult = new HashMap<String, List>(); JSONObject oA = r.isObject(); if (oA != null) { Iterator<String> outerIter = oA.keySet().iterator(); while (outerIter.hasNext()) { String innerKey = outerIter.next(); JSONArray a = oA.get(innerKey).isArray(); List x = new ArrayList(); if (a.isArray() != null) { for (int iter = 0; iter < a.size(); iter++) { if (a.get(iter).isString() != null) { // x.add(iter, // a.get(iter).isString().stringValue()); x.add(a.get(iter).isString().stringValue()); } } } oResult.put(innerKey, x); } } return (HashMap<String, List>) oResult; } if (t.compareToIgnoreCase("String") == 0) { if (r.isString() != null) { return (String) r.isString().stringValue(); } } if (t.compareToIgnoreCase("Integer") == 0) { if (r.isNumber() != null) { return (Integer) new Integer((int) r.isNumber().doubleValue()); } } if (t.compareToIgnoreCase("Float") == 0) { if (r.isNumber() != null) { return (Float) new Float((float) r.isNumber().doubleValue()); } } if (t.compareToIgnoreCase("Boolean") == 0) { if (r.isBoolean() != null) { return (Boolean) r.isBoolean().booleanValue(); } } // If anything else bombs out... GWT.log("Could not parse type " + t, null); return null; }
From source file:org.geomajas.gwt2.client.service.JsonService.java
License:Open Source License
/** * Get a string value from a {@link JSONObject}. * /*from w w w.java 2 s.c o m*/ * @param jsonObject The object to get the key value from. * @param key The name of the key to search the value for. * @return Returns the value for the key in the object or null. * @throws JSONException Thrown in case the key could not be found in the JSON object. */ public static String getStringValue(JSONObject jsonObject, String key) throws JSONException { checkArguments(jsonObject, key); JSONValue value = jsonObject.get(key); if (value != null) { if (value.isString() != null) { return ((JSONString) value).stringValue(); } else { String valueString = value.toString(); if (!"null".equals(valueString)) { if (valueString.charAt(0) == '"') { return valueString.substring(1, valueString.length() - 1); } return valueString; } } } return null; }
From source file:org.geomajas.gwt2.client.service.JsonService.java
License:Open Source License
/** * Get a date value from a {@link JSONObject}. * //from ww w.j a va2 s.co m * @param jsonObject The object to get the key value from. * @param key The name of the key to search the value for. * @return Returns the value for the key in the object or null. * @throws JSONException Thrown in case the key could not be found in the JSON object, or if the date could not be * parsed correctly. */ public static Date getDateValue(JSONObject jsonObject, String key) throws JSONException { checkArguments(jsonObject, key); JSONValue value = jsonObject.get(key); if (value != null && value.isString() != null) { String dateString = getStringValue(jsonObject, key); if (dateString.charAt(0) == '"') { dateString = dateString.substring(1); } if (dateString.endsWith("\"")) { dateString = dateString.substring(0, dateString.length() - 1); } try { return DEFAULT_DATEFORMAT.parse(dateString); } catch (Exception e) { try { long millis = Long.parseLong(dateString); return new Date(millis); } catch (Exception e2) { throw new JSONException("Could not parse the date for key '" + key + "'", e); } } } return null; }
From source file:org.gwm.splice.client.service.json.JSONSerializer.java
License:Apache License
private Object convertValue(JSONValue val) { if (val.isBoolean() != null) { return new Boolean(val.isBoolean().booleanValue()); } else if (val.isNumber() != null) { return new Double(val.isNumber().getValue()); } else if (val.isString() != null) { return val.isString().stringValue(); } else if (val.isObject() != null) { Attributes attrs = new Attributes(); convertAttributes(val.isObject(), attrs); return attrs; } else if (val.isArray() != null) { JSONArray ja = val.isArray(); Object[] array = new Object[ja.size()]; for (int i = 0; i < ja.size(); i++) { array[i] = convertValue(ja.get(i)); }/*from w w w.j av a2 s .c om*/ return array; } return null; }
From source file:org.gwt.json.serialization.client.common.JsonDateSerializer.java
License:Apache License
@Override public Date deSerialize(JSONValue jsonObj) throws JSONException { return jsonObj == null ? null : (jsonObj.isString() == null ? null : DateTimeFormat.getFormat(datePattern).parseStrict(jsonObj.isString().stringValue())); }
From source file:org.gwt.json.serialization.client.common.JsonStringSerializer.java
License:Apache License
public String deSerialize(JSONValue jsonObj) throws JSONException { return jsonObj == null ? null : (jsonObj.isString() == null ? null : jsonObj.isString().stringValue()); }
From source file:org.gwt.json.serialization.client.primitives.JsonCharacterSerializer.java
License:Apache License
@Override public Character deSerialize(JSONValue jsonObj, boolean forcePrimitiveValue) throws JSONException { Character defaultValue = forcePrimitiveValue ? (char) 0 : null; return jsonObj == null ? defaultValue : (jsonObj.isString() == null ? defaultValue : jsonObj.isString().stringValue().charAt(0)); }
From source file:org.gwt.json.serialization.client.utils.JsonHashMapSerializer.java
License:Apache License
@Override public JSONValue serialize(HashMap obj, GenericType[] genericTypes) { if (obj == null) return JSONNull.getInstance(); JSONObject jsonObject = new JSONObject(); GenericType keyType = genericTypes[0]; GenericType valueType = genericTypes[1]; for (Object entry : obj.entrySet()) { Map.Entry objAsEntry = (Map.Entry) entry; JSONValue key = serializer.getSerializerForType(keyType.getName()).serialize(objAsEntry.getKey(), keyType.getTypes());/*from w w w . j av a2 s .c o m*/ JSONValue value = serializer.getSerializerForType(valueType.getName()).serialize(objAsEntry.getValue(), valueType.getTypes()); //if key is a String, everything is just perfect. But if not, hm... let's use key.toString() for now jsonObject.put(key.isString() != null ? key.isString().stringValue() : key.toString(), value); } return jsonObject; }