This project has retired. For details please refer to its
Attic page.
ListCommand xref
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.chemistry.opencmis.commander;
20
21 import java.io.PrintWriter;
22
23 import org.apache.chemistry.opencmis.commons.PropertyIds;
24 import org.apache.chemistry.opencmis.commons.data.ObjectInFolderData;
25 import org.apache.chemistry.opencmis.commons.data.ObjectInFolderList;
26 import org.apache.chemistry.opencmis.commons.data.PropertyData;
27 import org.apache.chemistry.opencmis.commons.spi.CmisBinding;
28
29 public class ListCommand implements Command {
30
31
32
33
34
35
36 public String getCommandName() {
37 return "list";
38 }
39
40
41
42
43
44
45 public String getUsage() {
46 return "LIST <repository id> <folder id>";
47 }
48
49 public void execute(CmisBinding binding, String[] args, PrintWriter output) {
50 if (args.length < 2) {
51 output.println(getUsage());
52 return;
53 }
54
55 String repositoryId = args[0];
56 String folderId = args[1];
57
58 ObjectInFolderList list = binding.getNavigationService().getChildren(repositoryId, folderId, null, null, null,
59 null, null, null, null, null, null);
60
61 for (ObjectInFolderData object : list.getObjects()) {
62 output.println(getPropertyValue(object, PropertyIds.OBJECT_ID) + "\t"
63 + getPropertyValue(object, PropertyIds.NAME) + "\t"
64 + getPropertyValue(object, PropertyIds.OBJECT_TYPE_ID));
65 }
66 }
67
68
69
70
71 private static String getPropertyValue(ObjectInFolderData object, String name) {
72 if ((object == null) || (object.getObject() == null) || (object.getObject().getProperties() == null)
73 || (object.getObject().getProperties().getProperties() == null)) {
74 return "?";
75 }
76
77 PropertyData<?> property = object.getObject().getProperties().getProperties().get(name);
78 if ((property == null) || (property.getFirstValue() == null)) {
79 return "<not set>";
80 }
81
82 return property.getFirstValue().toString();
83 }
84 }