public MarshObjectConvertor allocate() { return new MarshObjectConvertor(); }
public MarshObject getMarshObject(Object o) throws IOException { return getMarshObjectInternal(o, false); }
/** * */ public MarshObjectConvertor(ISmartLengthBasedCacheCallback cacheCallback) { _byteArrayCache = createSerializationByteArrayCache(cacheCallback); try { _bao = new GSByteArrayOutputStream(); _oo = getObjectOutputStream(_bao); _bai = new GSByteArrayInputStream(new byte[0]); try { getObject(getMarshObjectInternal("", true)); } catch (ClassNotFoundException e) { if (_logger.isLoggable(Level.SEVERE)) { _logger.log(Level.SEVERE, e.getMessage(), e); } } } catch (IOException e) { if (_logger.isLoggable(Level.SEVERE)) { _logger.log(Level.SEVERE, e.getMessage(), e); } } }
MarshObjectConvertor marshObjectConvertor = new MarshObjectConvertor(); //not thread safe MarshObject marshObject = marshObjectConvertor.getMarshObject(userDetails); AuthenticationToken authenticationToken = new AuthenticationToken(SessionId.generateIdentifier()); AuthenticationToken cachedAuthenticationToken = marshedCache.putIfAbsent(marshObject, authenticationToken);
public Object getObject(MarshObject marsh) throws IOException, ClassNotFoundException { return getObject(marsh.getBytes()); }
public Object getObject(byte[] bytes) throws IOException, ClassNotFoundException { _bai.setBuffer(bytes); if (_oi == null) { _oi = getObjectInputStream(_bai); } Object object = _oi.readObject(); _bai.setBuffer(RESET_BUFFER); _oi.readObject(); return object; }
if (_serUID) { try { basicName = new String(mc.getMarshObject(name).getBytes(), "ISO-8859-1"); validate = false; } catch (IOException e) {
private MarshObject getMarshObjectInternal(Object o, boolean init) throws IOException { byte[] bc; if (init) { bc = serializeToByteArray(o); } else { // We need to reset state and pass this indication to the // deserializing stream _bao.setBuffer(_byteArrayCache.get()); _oo.reset(); bc = serializeToByteArray(o); _byteArrayCache.notifyUsedSize(bc.length); _bao.setBuffer(DUMMY_BUFFER); _oo.reset(); } MarshObject marObj = new MarshObject(bc); return marObj; }
@Override public MarshObjectConvertor allocate( final IMemoryAwareResourcePool resourcePool) { return new MarshObjectConvertor(SmartLengthBasedCache.toCacheCallback(resourcePool)); } }