001package org.nuxeo.template.context.extensions;
002
003import java.util.ArrayList;
004import java.util.List;
005
006import org.nuxeo.ecm.core.api.DocumentModel;
007import org.nuxeo.ecm.core.api.DocumentRef;
008import org.nuxeo.template.api.context.DocumentWrapper;
009
010public class CoreExtensions {
011
012    protected final DocumentModel doc;
013
014    protected final DocumentWrapper nuxeoWrapper;
015
016    public CoreExtensions(DocumentModel doc, DocumentWrapper nuxeoWrapper) {
017        this.doc = doc;
018        this.nuxeoWrapper = nuxeoWrapper;
019    }
020
021    public List<Object> getChildren() {
022        List<DocumentModel> children = doc.getCoreSession().getChildren(doc.getRef());
023        List<Object> docs = new ArrayList<Object>();
024        for (DocumentModel child : children) {
025            docs.add(nuxeoWrapper.wrap(child));
026        }
027        return docs;
028    }
029
030    public Object getParent() {
031        DocumentRef ref = doc.getParentRef();
032        return nuxeoWrapper.wrap(doc.getCoreSession().getDocument(ref));
033    }
034
035}