CMISObject_functions.inc.php
7.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
<?php
// TODO Property Type Definitions (only done Attributes up to now)
interface CMISObject {
/*
* ----- Object Services -----
*/
/**
* Moves this filed object from one folder to another.
* <p>
* The target folder is that into which the object has to be moved. When the
* object is multi-filed, a source folder to be moved out of must be
* specified.
*
* @param targetFolder the target folder
* @param sourceFolder the source folder, or {@code null}
*/
// function move($targetFolder, $sourceFolder = null);
/**
* Deletes this object.
* <p>
* When a filed object is deleted, it is removed from all folders it is
* filed in.
* <p>
* This deletes a specific version of a document object. To delete all
* versions, use {@link #deleteAllVersions}.
* <p>
* Deletion of a private working copy (checked out version) is the same as
* to cancel checkout.
*/
// function delete();
/**
* Unfiles this non-folder object.
* <p>
* This removes this object from all folders it is filed in, but never
* deletes the object, which means that if unfiling is not supported, an
* exception will be thrown.
* <p>
* If this object is a folder then an exception will be thrown.
*
* @see #delete
* @see Folder#remove
*/
// function unfile();
/*
* ----- Navigation Services -----
*/
/**
* Gets the parent folder, or the single folder in which the object is
* filed.
* <p>
* For a folder, returns the parent folder, or {@code null} if there is no
* parent (for the root folder).
* <p>
* For a non-folder, if the object is single-filed then the folder in which
* it is filed is returned, otherwise if the folder is unfiled then {@code
* null} is returned. An exception is raised if the object is multi-filed,
* so in doubt use {@link #getParents}.
*
* @return the parent folder, or {@code null}.
*
* @see #getParents
* @see Folder#getAncestors
*/
// function getParent();
// /**
// * Gets the direct parents of this object.
// * <p>
// * The object must be a non-folder, fileable object.
// *
// * @return the collection of parent folders
// *
// * @see #getParent
// * @see Folder#getAncestors
// */
// function getParents();
//
// /*
// * ----- Relationship Services -----
// */
//
// /**
// * Gets the relationships having as source or target this object.
// * <p>
// * Returns a list of relationships associated with this object, optionally
// * of a specified relationship type, and optionally in a specified
// * direction.
// * <p>
// * If typeId is {@code null}, returns relationships of any type.
// * <p>
// * Ordering is repository specific but consistent across requests.
// *
// * @param direction the direction of relationships to include
// * @param typeId the type ID, or {@code null}
// * @param includeSubRelationshipTypes {@code true} if relationships of any
// * sub-type of typeId are to be returned as well
// * @return the list of relationships
// */
// function getRelationships($direction, $typeId, $includeSubRelationshipTypes);
//
// /*
// * ----- Policy Services -----
// */
//
// /**
// * Applies a policy to this object.
// * <p>
// * The object must be controllable.
// *
// * @param policy the policy
// */
// function applyPolicy(Policy policy);
//
// /**
// * Removes a policy from this object.
// * <p>
// * Removes a previously applied policy from the object. The policy is not
// * deleted, and may still be applied to other objects.
// * <p>
// * The object must be controllable.
// *
// * @param policy the policy
// */
// function removePolicy(Policy policy);
//
// /**
// * Gets the policies applied to this object.
// * <p>
// * Returns the list of policy objects currently applied to the object. Only
// * policies that are directly (explicitly) applied to the object are
// * returned.
// * <p>
// * The object must be controllable.
// */
// function getPolicies();
//
/*
* ----- data access -----
*/
/**
* The object's type definition.
*/
// function getType();
/**
* Gets a property.
*
* @param name the property name
* @return the property
*/
// function getProperty($name);
/**
* Gets all the properties.
*
* @return a map of the properties
*/
// function getProperties();
/**
* Gets a property value.
*
* @param name the property name
* @return the property value
*/
// function getValue($name);
// /**
// * Sets a property value.
// * <p>
// * Setting a {@code null} value removes the property.
// * <p>
// * Whether the value is saved immediately or not is repository-specific, see
// * {@link #save()}.
// *
// * @param name the property name
// * @param value the property value, or {@code null}
// */
// function setValue($name, $value);
//
// /**
// * Sets several property values.
// * <p>
// * Setting a {@code null} value removes a property.
// * <p>
// * Whether the values are saved immediately or not is repository-specific,
// * see {@link #save()}.
// *
// * @param values the property values
// */
// function setValues($values);
//
// /**
// * Saves the modifications done to the object through {@link #setValue},
// * {@link #setValues} and {@link Document#setContentStream}.
// * <p>
// * Note that a repository is not required to wait until a {@link #save} is
// * called to actually save the modifications, it may do so as soon as
// * {@link #setValue} is called.
// * <p>
// * Calling {#link #save} is needed for objects newly created through
// * {@link Connection#newDocument} and similar methods.
// */
// function save();
//
// /*
// * ----- convenience methods -----
// */
//
// function getString($name);
//
// function getStrings($name);
//
// function getDecimal($name);
//
// function getDecimals($name);
//
// function getInteger($name);
//
// function getIntegers($name);
//
// function getBoolean($name);
//
// function getBooleans($name);
//
// function getDateTime($name);
//
// function getDateTimes($name);
//
// function getURI($name);
//
// function getURIs($name);
//
// function getId($name);
//
// function getIds($name);
//
// function getXML($name);
//
// function getXMLs($name);
//
// function getHTML($name);
//
// function getHTMLs($name);
//
// /*
// * ----- convenience methods for specific properties -----
// */
//
// function getId();
//
// function getURI();
//
// function getTypeId();
//
// function getCreatedBy();
//
// function getCreationDate();
//
// function getLastModifiedBy();
//
// function getLastModificationDate();
//
// function getChangeToken();
//
// function getName();
//
// function isImmutable();
//
// function isLatestVersion();
//
// function isMajorVersion();
//
// function isLatestMajorVersion();
//
// function getVersionLabel();
//
// function getVersionSeriesId();
//
// function isVersionSeriesCheckedOut();
//
// function getVersionSeriesCheckedOutBy();
//
// function getVersionSeriesCheckedOutId();
//
// function getCheckinComment();
//
// /*
// * ----- convenience methods for specific properties (setter) -----
// */
//
// function setName($name);
}
?>