@Override
            public void update(User user) throws GuacamoleException {

                // Unwrap the existing user
                if (user instanceof KsmUser)
                    user = ((KsmUser) user).getUnderlyingUser();

                // Process attribute values before saving
                user.setAttributes(
                    attributeService.processAttributes(
                        user.getAttributes()));

                super.update(user);

            }
Service for retrieving any custom attributes defined for the
current vault implementation and processing of said attributes.
extensions/guacamole-vault/modules/guacamole-vault-ksm/src/main/java/org/apache/guacamole/vault/ksm/user/KsmDirectoryService.java