private void sendPermissionsImpl(XMLStreamWriter serializer) throws XMLStreamException { if ( getPermissions() == null || getPermissions().size() == 0 ) return; serializer.writeStartElement("rapi", "permissions", REST_API_NS); for (Map.Entry<String, Set<Capability>> permission: getPermissions().entrySet()) { serializer.writeStartElement("rapi", "permission", REST_API_NS); serializer.writeStartElement("rapi", "role-name", REST_API_NS); serializer.writeCharacters(permission.getKey()); serializer.writeEndElement(); for (Capability capability: permission.getValue()) { serializer.writeStartElement("rapi", "capability", REST_API_NS); serializer.writeCharacters(capability.toString().toLowerCase()); serializer.writeEndElement(); } serializer.writeEndElement(); } serializer.writeEndElement(); } private void sendPropertiesImpl(final XMLStreamWriter serializer) throws XMLStreamException, TransformerFactoryConfigurationError, TransformerException {
/** * Get document permissions in string * * @param permissions * @return */ public String getDocumentPermissionsString(DocumentPermissions permissions) { Set setPermissions = permissions.entrySet(); Iterator iPermissions = setPermissions.iterator(); String stringPermissions = "size:" + permissions.size() + "|"; while (iPermissions.hasNext()) { Map.Entry mePermissions = (Map.Entry) iPermissions.next(); stringPermissions = stringPermissions + mePermissions.getKey() + ":" + mePermissions.getValue() + "|"; } return stringPermissions; }
DocumentPermissions permissions = metaReadHandle.getPermissions(); assertEquals("Permissions with wrong size", 5, permissions.size()); assertTrue("Permissions without key", permissions.containsKey("app-user")); assertEquals("Permission key with wrong value size", 2, permissions.get("app-user").size());