package com.collabnet.ce.webservices;
import com.collabnet.ce.soap50.webservices.docman.DocumentFolderSoapDO;
import com.collabnet.ce.soap50.webservices.docman.DocumentFolderSoapList;
import com.collabnet.ce.soap50.webservices.docman.DocumentFolderSoapRow;
import com.collabnet.ce.soap50.webservices.docman.DocumentSoapList;
import com.collabnet.ce.soap50.webservices.docman.DocumentSoapRow;
import java.rmi.RemoteException;
import java.util.ArrayList;
import java.util.List;
/**
* A folder in the documents section.
* @author Kohsuke Kawaguchi
*/
public class CTFDocumentFolder extends CTFFolder {
CTFDocumentFolder(CTFObject parent, DocumentFolderSoapDO data) {
super(parent, data);
}
CTFDocumentFolder(CTFObject parent, DocumentFolderSoapRow data) {
super(parent, data);
}
public CTFList<CTFDocumentFolder> getFolders() throws RemoteException {
CTFList<CTFDocumentFolder> r = new CTFList<CTFDocumentFolder>();
DocumentFolderSoapList dfsList = app.getDocumentAppSoap().getDocumentFolderList(app.getSessionId(),getId(),false);
for (DocumentFolderSoapRow row : dfsList.getDataRows())
r.add(new CTFDocumentFolder(this,row));
return r;
}
public CTFDocumentFolder createFolder(String title, String description) throws RemoteException {
return new CTFDocumentFolder(this,app.getDocumentAppSoap().createDocumentFolder(
app.getSessionId(), getId(), title, description));
}
public CTFList<CTFDocument> getDocuments() throws RemoteException {
DocumentSoapList list = app.getDocumentAppSoap().getDocumentList(app.getSessionId(), getId(), null);
CTFList<CTFDocument> r = new CTFList<CTFDocument>();
for (DocumentSoapRow row : list.getDataRows())
r.add(new CTFDocument(this,row));
return r;
}
public CTFDocument createDocument(java.lang.String title,
java.lang.String description,
java.lang.String versionComment,
java.lang.String status,
boolean createLocked,
java.lang.String fileName,
java.lang.String mimeType,
CTFFile file,
java.lang.String associationId,
java.lang.String associationDesc) throws RemoteException {
return new CTFDocument(this,
app.getDocumentAppSoap().createDocument(app.getSessionId(), getId(), title, description,
versionComment, status, createLocked, fileName, mimeType, file.getId(), associationId, associationDesc));
}
public String getURL() {
return app.getServerUrl() + "/sf/docman/do/listDocuments/" + getPath();
}
}