/** * Reads the object as a map. */ public Deserializer getListDeserializer(String type) throws HessianProtocolException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer; else if (_arrayListDeserializer != null) return _arrayListDeserializer; else { _arrayListDeserializer = new CollectionDeserializer(ArrayList.class); return _arrayListDeserializer; } }
/** * Reads the object as a map. */ public Deserializer getObjectDeserializer(String type) throws HessianProtocolException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer; else if (_hashMapDeserializer != null) return _hashMapDeserializer; else { _hashMapDeserializer = new MapDeserializer(HashMap.class); return _hashMapDeserializer; } }
/** * Reads the object as a map. */ public Deserializer getListDeserializer(String type, Class cl) throws HessianProtocolException { Deserializer reader = getListDeserializer(type); if (cl == null || cl.equals(reader.getType()) || cl.isAssignableFrom(reader.getType())) { return reader; } if (log.isLoggable(Level.FINE)) { log.fine("hessian: expected '" + cl.getName() + "' at '" + type + "' (" + reader.getType().getName() + ")"); } return getDeserializer(cl); }
Deserializer subDeserializer = getDeserializer(type.substring(1)); try { Class cl = Class.forName(type, false, _loader); deserializer = getDeserializer(cl); } catch (Exception e) { log.warning("Hessian/Burlap: '" + type + "' is an unknown class in " + _loader + ":\n" + e);
protected void doReadMap(AbstractHessianInput in, Map map, Class<?> keyType, Class<?> valueType) throws IOException { Deserializer keyDeserializer = null, valueDeserializer = null; SerializerFactory factory = findSerializerFactory(in); if(keyType != null){ keyDeserializer = factory.getDeserializer(keyType.getName()); } if(valueType != null){ valueDeserializer = factory.getDeserializer(valueType.getName()); } while (!in.isEnd()) { map.put(keyDeserializer != null ? keyDeserializer.readObject(in) : in.readObject(), valueDeserializer != null? valueDeserializer.readObject(in) : in.readObject()); } }
/** * Reads the object as a map. */ public Deserializer getObjectDeserializer(String type, Class cl) throws HessianProtocolException { Deserializer reader = getObjectDeserializer(type); if (cl == null || cl.equals(reader.getType()) || cl.isAssignableFrom(reader.getType()) || HessianHandle.class.isAssignableFrom(reader.getType())) { return reader; } if (log.isLoggable(Level.FINE)) { log.fine("hessian: expected '" + cl.getName() + "' at '" + type + "' (" + reader.getType().getName() + ")"); } return getDeserializer(cl); }
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
@Override public Object readLengthList(AbstractHessianInput in, int length, Class<?> expectType) throws IOException { Collection list = createList(); in.addRef(list); Deserializer deserializer = null; SerializerFactory factory = findSerializerFactory(in); if(expectType != null){ deserializer = factory.getDeserializer(expectType.getName()); } for (; length > 0; length--) list.add(deserializer != null ? deserializer.readObject(in) : in.readObject()); return list; }
@Override public Object readList(AbstractHessianInput in, int length, Class<?> expectType) throws IOException { Collection list = createList(); in.addRef(list); Deserializer deserializer = null; SerializerFactory factory = findSerializerFactory(in); if(expectType != null){ deserializer = factory.getDeserializer(expectType.getName()); } while (!in.isEnd()) list.add(deserializer != null ? deserializer.readObject(in) : in.readObject()); in.readEnd(); return list; }
/** * Reads the object as a map. */ public Object readMap(AbstractHessianInput in, String type, Class<?> expectKeyType, Class<?> expectValueType) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readMap(in); else if (_hashMapDeserializer != null) return _hashMapDeserializer.readMap(in, expectKeyType, expectValueType); else { _hashMapDeserializer = new MapDeserializer(HashMap.class); return _hashMapDeserializer.readMap(in, expectKeyType, expectValueType); } }
/** * Reads the object as a map. */ public Object readObject(AbstractHessianInput in, String type, String[] fieldNames) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readObject(in, fieldNames); else if (_hashMapDeserializer != null) return _hashMapDeserializer.readObject(in, fieldNames); else { _hashMapDeserializer = new MapDeserializer(HashMap.class); return _hashMapDeserializer.readObject(in, fieldNames); } }
reader = _serializerFactory.getDeserializer(cl); return reader.readList(this, length); reader = _serializerFactory.getDeserializer(cl); Object value = _serializerFactory.getDeserializer(cl).readObject(this);
reader = findSerializerFactory().getDeserializer(Map.class);
Deserializer reader = findSerializerFactory().getDeserializer(expectedClass); reader = findSerializerFactory().getDeserializer(expectedClass); Object value = findSerializerFactory().getDeserializer(expectedClass).readObject(this); return value;
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
/** * Reads the object as a list. */ public Object readList(AbstractHessianInput in, int length, String type) throws HessianProtocolException, IOException { Deserializer deserializer = getDeserializer(type); if (deserializer != null) return deserializer.readList(in, length); else return new CollectionDeserializer(ArrayList.class).readList(in, length); }
@Override public Object readLengthList(AbstractHessianInput in, int length, Class<?> expectType) throws IOException { Collection list = createList(); in.addRef(list); Deserializer deserializer = null; SerializerFactory factory = findSerializerFactory(in); if (expectType != null) { deserializer = factory.getDeserializer(expectType.getName()); } for (; length > 0; length--) list.add(deserializer != null ? deserializer.readObject(in) : in.readObject()); return list; }