private static int calculateSize(final Map val, EncoderImpl encoder) { int len = 0; Iterator<Map.Entry> iter = val.entrySet().iterator(); while(iter.hasNext()) { Map.Entry element = iter.next(); TypeEncoding elementEncoding = encoder.getType(element.getKey()).getEncoding(element.getKey()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getKey()); elementEncoding = encoder.getType(element.getValue()).getEncoding(element.getValue()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getValue()); } return len; }
@Override public <V> void register(AMQPType<V> type) { register(type.getTypeClass(), type); }
@SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void writeObject(final Object o) { if (o != null) { AMQPType type = _typeRegistry.get(o.getClass()); if(type != null) { type.write(o); } else { writeUnregisteredType(o); } } else { _buffer.put(EncodingCodes.NULL); } }
return underlyingType.getCanonicalEncoding(); underlyingType = encoder.getType(val[0]); TypeEncoding underlyingEncoding = underlyingType.getEncoding(val[0]); TypeEncoding canonicalEncoding = underlyingType.getCanonicalEncoding(); TypeEncoding elementEncoding = underlyingType.getEncoding(val[i]); if(elementEncoding != underlyingEncoding && !underlyingEncoding.encodesSuperset(elementEncoding))
return underlyingType.getCanonicalEncoding(); underlyingType = encoder.getType(val[0]); TypeEncoding underlyingEncoding = underlyingType.getEncoding(val[0]); TypeEncoding canonicalEncoding = underlyingType.getCanonicalEncoding(); TypeEncoding elementEncoding = underlyingType.getEncoding(val[i]); if(elementEncoding != underlyingEncoding && !underlyingEncoding.encodesSuperset(elementEncoding))
private static int calculateSize(final Map val, EncoderImpl encoder) { int len = 0; Iterator<Map.Entry> iter = val.entrySet().iterator(); while(iter.hasNext()) { Map.Entry element = iter.next(); TypeEncoding elementEncoding = encoder.getType(element.getKey()).getEncoding(element.getKey()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getKey()); elementEncoding = encoder.getType(element.getValue()).getEncoding(element.getValue()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getValue()); } return len; }
return underlyingType.getCanonicalEncoding(); underlyingType = encoder.getType(val[0]); TypeEncoding underlyingEncoding = underlyingType.getEncoding(val[0]); TypeEncoding canonicalEncoding = underlyingType.getCanonicalEncoding(); TypeEncoding elementEncoding = underlyingType.getEncoding(val[i]); if(elementEncoding != underlyingEncoding && !underlyingEncoding.encodesSuperset(elementEncoding))
@Override public <V> void register(AMQPType<V> type) { register(type.getTypeClass(), type); }
private static int calculateSize(final Map val, EncoderImpl encoder) { int len = 0; Iterator<Map.Entry> iter = val.entrySet().iterator(); while(iter.hasNext()) { Map.Entry element = iter.next(); TypeEncoding elementEncoding = encoder.getType(element.getKey()).getEncoding(element.getKey()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getKey()); elementEncoding = encoder.getType(element.getValue()).getEncoding(element.getValue()); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element.getValue()); } return len; }
return underlyingType.getCanonicalEncoding(); underlyingType = encoder.getType(val[0]); TypeEncoding underlyingEncoding = underlyingType.getEncoding(val[0]); TypeEncoding canonicalEncoding = underlyingType.getCanonicalEncoding(); TypeEncoding elementEncoding = underlyingType.getEncoding(val[i]); if(elementEncoding != underlyingEncoding && !underlyingEncoding.encodesSuperset(elementEncoding))
@Override public <V> void register(AMQPType<V> type) { register(type.getTypeClass(), type); }
type.write(o);
public TypeEncoding<T> getEncoding(final T val) { M asUnderlying = wrap(val); TypeEncoding<M> underlyingEncoding = _encoder.getType(asUnderlying).getEncoding(asUnderlying); TypeEncoding<T> encoding = _encodings.get(underlyingEncoding); if(encoding == null) { encoding = new DynamicDescribedTypeEncoding(underlyingEncoding); _encodings.put(underlyingEncoding, encoding); } return encoding; }
@Override public <V> void register(AMQPType<V> type) { register(type.getTypeClass(), type); }
public TypeEncoding<T> getEncoding(final T val) { M asUnderlying = wrap(val); TypeEncoding<M> underlyingEncoding = _encoder.getType(asUnderlying).getEncoding(asUnderlying); TypeEncoding<T> encoding = _encodings.get(underlyingEncoding); if(encoding == null) { encoding = new DynamicDescribedTypeEncoding(underlyingEncoding); _encodings.put(underlyingEncoding, encoding); } return encoding; }
public TypeEncoding<T> getEncoding(final T val) { M asUnderlying = wrap(val); TypeEncoding<M> underlyingEncoding = _encoder.getType(asUnderlying).getEncoding(asUnderlying); TypeEncoding<T> encoding = _encodings.get(underlyingEncoding); if(encoding == null) { encoding = new DynamicDescribedTypeEncoding(underlyingEncoding); _encodings.put(underlyingEncoding, encoding); } return encoding; }
public TypeEncoding<T> getEncoding(final T val) { M asUnderlying = wrap(val); TypeEncoding<M> underlyingEncoding = _encoder.getType(asUnderlying).getEncoding(asUnderlying); TypeEncoding<T> encoding = _encodings.get(underlyingEncoding); if(encoding == null) { encoding = new DynamicDescribedTypeEncoding(underlyingEncoding); _encodings.put(underlyingEncoding, encoding); } return encoding; }
private static int calculateSize(final List val, EncoderImpl encoder) { int len = 0; final int count = val.size(); for(int i = 0; i < count; i++) { Object element = val.get(i); AMQPType type = encoder.getType(element); if(type == null) { throw new IllegalArgumentException("No encoding defined for type: " + element.getClass()); } TypeEncoding elementEncoding = type.getEncoding(element); len += elementEncoding.getConstructorSize()+elementEncoding.getValueSize(element); } return len; }