use of org.jboss.marshalling.ByteBufferInput in project wildfly by wildfly.
the class EjbTimerXmlParser_1_0 method deserialize.
private Object deserialize(final String info) throws IOException, ClassNotFoundException {
byte[] data = Base64.getDecoder().decode(info.trim());
Unmarshaller unmarshaller = factory.createUnmarshaller(configuration);
unmarshaller.start(new ByteBufferInput(ByteBuffer.wrap(data)));
try {
return unmarshaller.readObject();
} finally {
unmarshaller.close();
}
}
use of org.jboss.marshalling.ByteBufferInput in project wildfly by wildfly.
the class AbstractPersistentSessionManager method loadSessionAttributes.
@Override
public Map<String, PersistentSession> loadSessionAttributes(String deploymentName, final ClassLoader classLoader) {
try {
Unmarshaller unmarshaller = createUnmarshaller();
try {
long time = System.currentTimeMillis();
Map<String, SessionEntry> data = loadSerializedSessions(deploymentName);
if (data != null) {
Map<String, PersistentSession> ret = new HashMap<String, PersistentSession>();
for (Map.Entry<String, SessionEntry> sessionEntry : data.entrySet()) {
if (sessionEntry.getValue().expiry.getTime() > time) {
Map<String, Object> session = new HashMap<String, Object>();
for (Map.Entry<String, byte[]> sessionAttribute : sessionEntry.getValue().data.entrySet()) {
unmarshaller.start(new ByteBufferInput(ByteBuffer.wrap(sessionAttribute.getValue())));
session.put(sessionAttribute.getKey(), unmarshaller.readObject());
unmarshaller.finish();
}
ret.put(sessionEntry.getKey(), new PersistentSession(sessionEntry.getValue().expiry, session));
}
}
return ret;
}
} finally {
unmarshaller.close();
}
} catch (Exception e) {
UndertowServletLogger.ROOT_LOGGER.failedtoLoadPersistentSessions(e);
}
return null;
}
Aggregations