private Object readResolve() throws ObjectStreamException { UserManager userManager = Framework.getService(UserManager.class); // look up principal as system user to avoid permission checks in directories NuxeoPrincipal principal = Framework.doPrivileged(() -> userManager.getPrincipal(username)); if (principal == null) { throw new NullPointerException("No principal: " + username); } principal.setOriginatingUser(originatingUser); return principal; }
NuxeoPrincipal nxUser = (NuxeoPrincipal) principal; if (originatingUser != null) { nxUser.setOriginatingUser(originatingUser);
principal.setOriginatingUser(originatingUsername);