@Override void serialize(AbstractHessianOutput out, Object obj, Field field) throws IOException { java.util.Date value = null; try { value = (java.util.Date) field.get(obj); } catch (IllegalAccessException e) { log.log(Level.FINE, e.toString(), e); } if (value == null) out.writeNull(); else out.writeUTCDate(value.getTime()); } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if(obj == null) { out.writeNull(); return; } T handle = null; try { Constructor<T> constructor = handleType.getConstructor(Object.class); handle = constructor.newInstance(obj); } catch (Exception e) { throw new RuntimeException("the class :" + handleType.getName() + " construct failed:" + e.getMessage(), e); } out.writeObject(handle); } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Calendar cal = (Calendar) obj; out.writeObject(new CalendarHandle(cal.getClass(), cal.getTimeInMillis())); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Locale locale = (Locale) obj; out.writeObject(new LocaleHandle(locale.toString())); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) { out.writeNull(); } else { out.writeObject(new ZoneIdHandle(obj)); } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { InputStream is = (InputStream) obj; if (is == null) out.writeNull(); else { byte[] buf = new byte[1024]; int len; while ((len = is.read(buf, 0, buf.length)) > 0) { out.writeByteBufferPart(buf, 0, len); } out.writeByteBufferEnd(buf, 0, 0); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) { out.writeNull(); } else { try { Field field = EnumSet.class.getDeclaredField("elementType"); field.setAccessible(true); Class type = (Class) field.get(obj); EnumSet enumSet = (EnumSet) obj; Object[] objects = enumSet.toArray(); out.writeObject(new EnumSetHandler(type, objects)); } catch (Throwable t) { throw new IOException(t); } } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Class cl = obj.getClass(); if (out.addRef(obj)) return; int ref = out.writeObjectBegin(cl.getName()); if (ref < -1) { out.writeString("value"); out.writeUTCDate(((Date) obj).getTime()); out.writeMapEnd(); } else { if (ref == -1) { out.writeInt(1); out.writeString("value"); out.writeObjectBegin(cl.getName()); } out.writeUTCDate(((Date) obj).getTime()); } } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { if (out.addRef(obj)) return; Class cl = obj.getClass(); int ref = out.writeObjectBegin(cl.getName()); if (ref < -1) { out.writeString("value"); out.writeString(obj.toString()); out.writeMapEnd(); } else { if (ref == -1) { out.writeInt(1); out.writeString("value"); out.writeObjectBegin(cl.getName()); } out.writeString(obj.toString()); } } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { Class cl = (Class) obj; if (cl == null) { out.writeNull(); } else if (out.addRef(obj)) { return; } else { int ref = out.writeObjectBegin("java.lang.Class"); if (ref < -1) { out.writeString("name"); out.writeString(cl.getName()); out.writeMapEnd(); } else { if (ref == -1) { out.writeInt(1); out.writeString("name"); out.writeObjectBegin("java.lang.Class"); } out.writeString(cl.getName()); } } } }
out.writeNull(); break;
public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { Optional optional = (Optional) obj; if (optional == null || !optional.isPresent()) out.writeNull(); else { out.writeObject(optional.get()); } } }
public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { Optional optional = (Optional) obj; if (optional == null || !optional.isPresent()) out.writeNull(); else { out.writeObject(optional.get()); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Calendar cal = (Calendar) obj; out.writeObject(new CalendarHandle(cal.getClass(), cal.getTimeInMillis())); } } }
public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Calendar cal = (Calendar) obj; out.writeObject(new CalendarHandle(cal.getClass(), cal.getTimeInMillis())); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Calendar cal = (Calendar) obj; out.writeObject(new CalendarHandle(cal.getClass(), cal.getTimeInMillis())); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Locale locale = (Locale) obj; out.writeObject(new LocaleHandle(locale.toString())); } } }
public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) out.writeNull(); else { Locale locale = (Locale) obj; out.writeObject(new LocaleHandle(locale.toString())); } } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) { out.writeNull(); } else { out.writeObject(new ZoneIdHandle(obj)); } }
@Override public void writeObject(Object obj, AbstractHessianOutput out) throws IOException { if (obj == null) { out.writeNull(); } else { out.writeObject(new ZoneIdHandle(obj)); } }