001package org.nuxeo.template.xdocreport.jaxrs; 002 003import org.nuxeo.template.api.adapters.TemplateSourceDocument; 004 005import fr.opensagres.xdocreport.remoting.resources.domain.Resource; 006import fr.opensagres.xdocreport.remoting.resources.domain.ResourceType; 007 008/** 009 * @author <a href="mailto:tdelprat@nuxeo.com">Tiry</a> 010 */ 011public class ResourceWrapper { 012 013 public static Resource wrap(TemplateSourceDocument srcDocument) { 014 Resource rs = new Resource(); 015 rs.setType(ResourceType.TEMPLATE); 016 017 rs.setName(srcDocument.getName()); 018 rs.setId(srcDocument.getId()); 019 020 Resource fileResource = new NonRecursiveResource(); 021 fileResource.setName(srcDocument.getFileName()); 022 fileResource.setId(srcDocument.getId()); 023 fileResource.setType(ResourceType.DOCUMENT); 024 025 Resource METAResource = new NonRecursiveResource(); 026 METAResource.setName("META-INF"); 027 METAResource.setId(srcDocument.getId() + "/META-INF"); 028 METAResource.setType(ResourceType.CATEGORY); 029 030 Resource fieldResource = new NonRecursiveResource(); 031 fieldResource.setName(srcDocument.getName() + ".fields.xml"); 032 fieldResource.setId(srcDocument.getId() + ".fields.xml"); 033 fieldResource.setType(ResourceType.DOCUMENT); 034 035 METAResource.getChildren().add(fieldResource); 036 037 rs.getChildren().add(fileResource); 038 rs.getChildren().add(METAResource); 039 040 return rs; 041 } 042}