/** {@inheritDoc} */ @Override public void setValue(Object instance, String propertyName, Object value) { if (instance == null || propertyName == null) return; Map props = getBeanProperties(instance); if (props.containsKey(propertyName)) { super.setValue(instance, propertyName, value); } else if (instance instanceof Map) { ClassUtil.validateAssignment(instance, propertyName, value); ((Map)instance).put(propertyName, value); } }
/** {@inheritDoc} */ @Override public void setValue(Object instance, String propertyName, Object value) { if (instance == null || propertyName == null) return; Map props = getBeanProperties(instance); if (props.containsKey(propertyName)) { super.setValue(instance, propertyName, value); } else if (instance instanceof Map) { ClassUtil.validateAssignment(instance, propertyName, value); ((Map)instance).put(propertyName, value); } }
if (!name.equals("length")) ClassUtil.validateAssignment(h, name, value); h.put(name, value);
if (!name.equals("length")) ClassUtil.validateAssignment(h, name, value); h.put(name, value);
ClassUtil.validateAssignment(l, i, value); if (l instanceof ArrayList) ((ArrayList)l).add(value);
ClassUtil.validateAssignment(l, i, value); if (l instanceof ArrayList) ((ArrayList)l).add(value);
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Long[]) Array.set(vector, i, item);
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Long[]) Array.set(vector, i, item);
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Double[]) Array.set(vector, i, item);
trace.arrayElement(i); Object item = readObjectOneLevelDown(true); ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Object[]) Array.set(vector, i, item);
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Double[]) Array.set(vector, i, item);
trace.arrayElement(i); Object item = readObjectOneLevelDown(true); ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Object[]) Array.set(vector, i, item);
protected Object readDictionary() throws IOException, ClassNotFoundException { int ref = readUInt29(); if ((ref & 1) == 0) // This is a reference. return getObjectReference(ref >> 1); readBoolean(); // usingWeakTypes - irrelevant in Java. int len = (ref >> 1); Dictionary dictionary = (Hashtable)ClassUtil.createDefaultInstance(Hashtable.class, null, true /*validate*/); objectTable.add(dictionary); // Remember the object. if (isDebug) trace.startAMFDictionary(objectTable.size() - 1); for (int i = 0; i < len; i++) { if (isDebug) trace.startDictionaryElement(); Object key = readObjectOneLevelDown(true); if (isDebug) trace.addDictionaryEquals(); Object value = readObjectOneLevelDown(true); ClassUtil.validateAssignment(dictionary, key != null? key.toString() : null, value); dictionary.put(key, value); } if (isDebug) trace.endAMFDictionary(); return dictionary; }
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Integer[]) Array.set(vector, i, item);
ClassUtil.validateAssignment(vector, i, item); if (vector instanceof Integer[]) Array.set(vector, i, item);
protected Object readDictionary() throws IOException, ClassNotFoundException { int ref = readUInt29(); if ((ref & 1) == 0) // This is a reference. return getObjectReference(ref >> 1); readBoolean(); // usingWeakTypes - irrelevant in Java. int len = (ref >> 1); Dictionary dictionary = (Hashtable)ClassUtil.createDefaultInstance(Hashtable.class, null, true /*validate*/); objectTable.add(dictionary); // Remember the object. if (isDebug) trace.startAMFDictionary(objectTable.size() - 1); for (int i = 0; i < len; i++) { if (isDebug) trace.startDictionaryElement(); Object key = readObjectOneLevelDown(true); if (isDebug) trace.addDictionaryEquals(); Object value = readObjectOneLevelDown(true); ClassUtil.validateAssignment(dictionary, key != null? key.toString() : null, value); dictionary.put(key, value); } if (isDebug) trace.endAMFDictionary(); return dictionary; }
trace.namedElement(name); Object value = readObjectOneLevelDown(true); ClassUtil.validateAssignment(map, name, value); map.put(name, value); trace.arrayElement(i); Object item = readObjectOneLevelDown(true); ClassUtil.validateAssignment(array, i, item); if (array instanceof ArrayList) ((ArrayList)array).add(item); Object item = readObjectOneLevelDown(true); String key = Integer.toString(i); ClassUtil.validateAssignment(map, key, item); map.put(key, item);
trace.namedElement(name); Object value = readObjectOneLevelDown(true); ClassUtil.validateAssignment(map, name, value); map.put(name, value); trace.arrayElement(i); Object item = readObjectOneLevelDown(true); ClassUtil.validateAssignment(array, i, item); if (array instanceof ArrayList) ((ArrayList)array).add(item); Object item = readObjectOneLevelDown(true); String key = Integer.toString(i); ClassUtil.validateAssignment(map, key, item); map.put(key, item);
TypeMarshaller marshaller = TypeMarshallingContext.getTypeMarshaller(); value = marshaller.convert(value, desiredPropClass); ClassUtil.validateAssignment(instance, propertyName, value); bp.set(instance, value);
TypeMarshaller marshaller = TypeMarshallingContext.getTypeMarshaller(); value = marshaller.convert(value, desiredPropClass); ClassUtil.validateAssignment(instance, propertyName, value); bp.set(instance, value);