我必须找出对象的类型(文件夹/文件(及其目录路径。
例如,我必须找出具有此路径的对象是一个文件。
/home/user/test.docx
我找到了一个有效的解决方案,但它不是一个好的解决方案。
try {
final Folder parentFolder = (Folder) session.getObjectByPath(path);
//throws exception when path points to a file
//do sth when it's a folder
} catch (final Exception e) {
//do sth when it's a document/file
}
我不能在这里使用"实例",因为我无法获取对象(使用 session.getObjectByPath(不知道输出的类型。
有没有更好的方法来找出对象类型的路径?
与其直接将其类型转换为文件夹,不如使用如下所示的instanceof
:
CmisObject cmisObject = session.getObjectByPath(path);
if (cmisObject instanceof Document) {
Document document = (Document) cmisObject;
} else if (cmisObject instanceof Folder) {
Folder folder = (Folder) cmisDocument;
}