( (XMLResource)resource ).getContentAsSAX( contentSerializer );
SerializerPool.getInstance().returnObject( contentSerializer );
writer.flush();
}
output.closeEntry();
final EXistResource ris = (EXistResource)resource;
//store permissions
attr.clear();
attr.addAttribute( Namespaces.EXIST_NS, "type", "type", "CDATA", resource.getResourceType() );
attr.addAttribute( Namespaces.EXIST_NS, "name", "name", "CDATA", name );
writeUnixStylePermissionAttributes(attr, perms[i]);
Date date = ris.getCreationTime();
if( date != null ) {
attr.addAttribute( Namespaces.EXIST_NS, "created", "created", "CDATA", "" + new DateTimeValue( date ) );
}
date = ris.getLastModificationTime();
if( date != null ) {
attr.addAttribute( Namespaces.EXIST_NS, "modified", "modified", "CDATA", "" + new DateTimeValue( date ) );
}
attr.addAttribute( Namespaces.EXIST_NS, "filename", "filename", "CDATA", filename );
attr.addAttribute( Namespaces.EXIST_NS, "mimetype", "mimetype", "CDATA", encode( ( (EXistResource)resource ).getMimeType() ) );
if( !"BinaryResource".equals(resource.getResourceType()) ) {
if( ris.getDocType() != null ) {
if( ris.getDocType().getName() != null ) {
attr.addAttribute( Namespaces.EXIST_NS, "namedoctype", "namedoctype", "CDATA", ris.getDocType().getName() );
}
if( ris.getDocType().getPublicId() != null ) {
attr.addAttribute( Namespaces.EXIST_NS, "publicid", "publicid", "CDATA", ris.getDocType().getPublicId() );
}
if( ris.getDocType().getSystemId() != null ) {
attr.addAttribute( Namespaces.EXIST_NS, "systemid", "systemid", "CDATA", ris.getDocType().getSystemId() );
}
}
}
serializer.startElement( Namespaces.EXIST_NS, "resource", "resource", attr );
if(perms[i] instanceof ACLPermission) {