Commit 251943ff8194351d2074a758ed02117302abd1f4

Authored by Paul Barrett
1 parent fc19ce53

Remove unnecessary webservice level classes

Committed by: Paul Barrett
lib/api/ktcmis/services/CMISVersioningService.inc.php
... ... @@ -201,8 +201,9 @@ class CMISVersioningService {
201 201 public function checkIn($repositoryId, $objectId, $major = true, $properties = array(), $contentStream = null,
202 202 $checkinComment = '', $policies = array(), $addACEs = array(), $removeACEs = array())
203 203 {
  204 +
204 205 $objectId = CMISUtil::decodeObjectId($objectId, $typeId);
205   -
  206 +
206 207 // throw updateConflictException if the operation is attempting to update an object that is no longer current (as determined by the repository).
207 208 try {
208 209 $pwc = new CMISDocumentObject($objectId, $this->ktapi);
... ... @@ -210,7 +211,7 @@ class CMISVersioningService {
210 211 catch (exception $e) {
211 212 throw new UpdateConflictException($e->getMessage());
212 213 }
213   -
  214 +
214 215 // throw exception if the object is not versionable
215 216 if (!$pwc->getAttribute('versionable')) {
216 217 throw new ConstraintViolationException('This document is not versionable and may not be checked in');
... ... @@ -224,7 +225,7 @@ class CMISVersioningService {
224 225 // if we can't get the type definition, then we can't store the content
225 226 throw new StorageException($e->getMessage());
226 227 }
227   -
  228 +
228 229 // if content stream is required (capabilityPWCUpdatability == false) and no content stream is supplied,
229 230 // throw a ConstraintViolationException
230 231 if (($typeDefinition['attributes']['contentStreamAllowed'] == 'required') && is_null($contentStream)) {
... ... @@ -244,7 +245,7 @@ class CMISVersioningService {
244 245 $tempfilename = CMISUtil::createTemporaryFile($contentStream);
245 246 $reason = 'CMIS object checkin';
246 247 $response = $this->ktapi->checkin_document($objectId, $pwc->getProperty('contentStreamFilename'), $reason, $tempfilename, $major,
247   - $sig_username, $sig_password);
  248 + $sig_username, $sig_password);
248 249  
249 250 // if there was any error checking in
250 251 if ($response['status_code'] == 1) {
... ...
webservice/atompub/cmis/KT_cmis_atom_server.services.inc.php
... ... @@ -31,15 +31,12 @@ When POSTing an Atom Document, the atom fields take precedence over the CMIS pro
31 31 */
32 32  
33 33 // load all available CMIS services
34   -include_once CMIS_ATOM_LIB_FOLDER . 'RepositoryService.inc.php';
35   -include_once CMIS_ATOM_LIB_FOLDER . 'NavigationService.inc.php';
36   -include_once CMIS_ATOM_LIB_FOLDER . 'ObjectService.inc.php';
  34 +include_once CMIS_API . '/ktRepositoryService.inc.php';
  35 +include_once CMIS_API . '/ktNavigationService.inc.php';
  36 +include_once CMIS_API . '/ktObjectService.inc.php';
37 37 include_once CMIS_API . '/ktVersioningService.inc.php';
38 38 include_once 'KT_cmis_atom_service_helper.inc.php';
39 39  
40   -// TODO consider changing all responses from the webservice layer to return PEAR errors or success results instead of the half/half we have at the moment.
41   -// the half/half occurred because on initial services PEAR Error seemed unnecessary, but it has proven useful for some of the newer functions
42   -
43 40 // TODO proper first/last links
44 41 // FIXME any incorrect or missing links
45 42 // FIXME ContentStreamAllowed tag is empty (at least sometimes)
... ... @@ -75,14 +72,17 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
75 72 else if (($this->params[1] == 'children') || ($this->params[1] == 'descendants'))
76 73 {
77 74 $folderId = $this->params[0];
78   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  75 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
79 76 $response = $ObjectService->getProperties($repositoryId, $folderId, false, false);
80 77  
81   - if (PEAR::isError($response)) {
82   - $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response->getMessage());
  78 + if ($response['status_code'] == 1) {
  79 + $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response['message']);
83 80 $this->responseFeed = $feed;
84 81 return null;
85 82 }
  83 + else {
  84 + $response = $response['results'];
  85 + }
86 86  
87 87 $folderName = $response['properties']['Name']['value'];
88 88 }
... ... @@ -94,14 +94,17 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
94 94 // abstract this to be used also by the document service (and the PWC service?) ???
95 95 // alternatively use getFolderParent here makes sense and use getObjectParents when document service?
96 96 $folderId = $this->params[0];
97   - $NavigationService = new NavigationService(KT_cmis_atom_service_helper::getKt());
  97 + $NavigationService = new KTNavigationService(KT_cmis_atom_service_helper::getKt());
98 98 $response = $NavigationService->getFolderParent($repositoryId, $folderId, false, false, false);
99 99  
100   - if (PEAR::isError($response)) {
101   - $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response->getMessage());
  100 + if ($response['status_code'] == 1) {
  101 + $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response['message']);
102 102 $this->responseFeed = $feed;
103 103 return null;
104 104 }
  105 + else {
  106 + $response = $response['results'];
  107 + }
105 108  
106 109 // we know that a folder will only have one parent, so we can assume element 0
107 110 $folderId = $response[0]['properties']['objectId']['value'];
... ... @@ -113,12 +116,12 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
113 116  
114 117 if (!empty($this->params[1]) && (($this->params[1] == 'children') || ($this->params[1] == 'descendants')))
115 118 {
116   - $NavigationService = new NavigationService(KT_cmis_atom_service_helper::getKt());
  119 + $NavigationService = new KTNavigationService(KT_cmis_atom_service_helper::getKt());
117 120 $feed = $this->getFolderChildrenFeed($NavigationService, $repositoryId, $folderId, $folderName, $this->params[1]);
118 121 }
119 122 else
120 123 {
121   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  124 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
122 125 $feed = KT_cmis_atom_service_helper::getObjectFeed($this, $ObjectService, $repositoryId, $folderId);
123 126 }
124 127  
... ... @@ -175,7 +178,7 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
175 178  
176 179 // determine type if object is being moved
177 180 if (!is_null($objectId)) {
178   - CMISUtil::decodeObjectId($objectId, $cmisObjectProperties['cmis:objectTypeId']);
  181 + CMISUtil::decodeObjectId($objectId, $typeId);
179 182 }
180 183  
181 184 // check for content stream
... ... @@ -187,22 +190,26 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
187 190 ? $content['cmisra:text']
188 191 : null));
189 192  
190   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  193 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
191 194  
192 195 $success = false;
193 196 $error = null;
194 197 if ($action == 'create')
195 198 {
196 199 // TODO detection and passing of optional parameters (policies, ACEs, etc...) as well as support for other object-types
197   - if ($cmisObjectProperties['cmis:objectTypeId'] == 'folder')
198   - $newObjectId = $ObjectService->createFolder($repositoryId, ucwords($cmisObjectProperties['cmis:objectTypeId']), $properties, $folderId);
199   - else
  200 + if ($cmisObjectProperties['cmis:objectTypeId'] == 'folder') {
  201 + $newObjectId = $ObjectService->createFolder($repositoryId, ucwords($cmisObjectProperties['cmis:objectTypeId']),
  202 + $properties, $folderId);
  203 + }
  204 + else {
200 205 // NOTE for the moment only creation in minor versioning state
201 206 $newObjectId = $ObjectService->createDocument($repositoryId, $properties, $folderId, $cmisContent, 'minor');
  207 + }
202 208  
203   - if (!PEAR::isError($newObjectId)) {
  209 + if ($newObjectId['status_code'] == 0) {
  210 + $newObjectId = $newObjectId['results'];
204 211 // check if returned Object Id is a valid CMIS Object Id
205   - CMISUtil::decodeObjectId($newObjectId, $cmisObjectProperties['cmis:objectTypeId']);
  212 + CMISUtil::decodeObjectId($newObjectId, $typeId);
206 213 if ($typeId != 'Unknown') {
207 214 $success = true;
208 215 }
... ... @@ -211,18 +218,18 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
211 218 }
212 219 }
213 220 else {
214   - $error = $newObjectId->getMessage();
  221 + $error = $newObjectId['message'];
215 222 }
216 223 }
217 224 else if ($action == 'move')
218 225 {
219 226 $response = $ObjectService->moveObject($repositoryId, $objectId, '', $folderId);
220 227  
221   - if (!PEAR::isError($response)) {
  228 + if ($response['status_code'] == 0) {
222 229 $success = true;
223 230 }
224 231 else {
225   - $error = $response->getMessage();
  232 + $error = $response['message'];
226 233 }
227 234  
228 235 // same object as before
... ... @@ -258,19 +265,21 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
258 265  
259 266 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
260 267  
261   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  268 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
262 269  
263 270 // attempt delete
264 271 $response = $ObjectService->deleteTree($repositoryId, $this->params[0]);
265 272  
266 273 // error?
267   - if (PEAR::isError($response))
268   - {
269   - $feed = KT_cmis_atom_service_helper::getErrorFeed($this, self::STATUS_SERVER_ERROR, $response->getMessage());
  274 + if ($response['status_code'] == 1) {
  275 + $feed = KT_cmis_atom_service_helper::getErrorFeed($this, self::STATUS_SERVER_ERROR, $response['message']);
270 276 // Expose the responseFeed
271 277 $this->responseFeed = $feed;
272 278 return null;
273 279 }
  280 + else {
  281 + $response = $response['results'];
  282 + }
274 283  
275 284 // list of failed objects?
276 285 if (is_array($response))
... ... @@ -322,6 +331,9 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
322 331 else {
323 332 // error, we shouldn't be here, if we are then the wrong service/function was called
324 333 }
  334 +
  335 + // hack, for removing one level of access
  336 + $entries = $entries['results'];
325 337  
326 338 // $baseURI=NULL,$title=NULL,$link=NULL,$updated=NULL,$author=NULL,$id=NULL
327 339 $feed = new KT_cmis_atom_responseFeed_GET(CMIS_APP_BASE_URI);
... ... @@ -350,12 +362,8 @@ class KT_cmis_atom_service_folder extends KT_cmis_atom_service {
350 362 $link->appendChild($feed->newAttr('href', CMIS_APP_BASE_URI . $workspace . '/folder/' . $folderId));
351 363 $feed->appendChild($link);
352 364  
353   - foreach($entries as $cmisEntry)
354   - {
  365 + foreach($entries as $cmisEntry) {
355 366 KT_cmis_atom_service_helper::createObjectEntry($feed, $cmisEntry, $folderName);
356   -
357   - // after each entry, add app:edited tag
358   - $feed->newField('app:edited', KT_cmis_atom_service_helper::formatDatestamp(), $feed);
359 367 }
360 368  
361 369 $feed->newField('cmis:hasMoreItems', 'false', $feed);
... ... @@ -379,7 +387,7 @@ class KT_cmis_atom_service_document extends KT_cmis_atom_service {
379 387 {
380 388 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
381 389  
382   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  390 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
383 391  
384 392 $objectId = $this->params[0];
385 393  
... ... @@ -392,11 +400,14 @@ class KT_cmis_atom_service_document extends KT_cmis_atom_service {
392 400 $NavigationService = new NavigationService(KT_cmis_atom_service_helper::getKt());
393 401 $response = $NavigationService->getObjectParents($repositoryId, $objectId, false, false);
394 402  
395   - if (PEAR::isError($response)) {
396   - $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response->getMessage());
  403 + if ($response['status_code'] == 1) {
  404 + $feed = KT_cmis_atom_service_helper::getErrorFeed($this, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response['message']);
397 405 $this->responseFeed = $feed;
398 406 return null;
399 407 }
  408 + else {
  409 + $response = $response['results'];
  410 + }
400 411  
401 412 // for now a document will only have one parent as KnowledgeTree does not support multi-filing
402 413 // TODO update this code if/when multi-filing support is added
... ... @@ -435,10 +446,8 @@ class KT_cmis_atom_service_document extends KT_cmis_atom_service {
435 446 // attempt delete
436 447 $response = $VersioningService->deleteAllVersions($repositoryId, $this->params[0]);
437 448  
438   - // error?
439   - if (PEAR::isError($response))
440   - {
441   - $feed = KT_cmis_atom_service_helper::getErrorFeed($this, self::STATUS_SERVER_ERROR, $response->getMessage());
  449 + if ($response['status_code'] == 1) {
  450 + $feed = KT_cmis_atom_service_helper::getErrorFeed($this, self::STATUS_SERVER_ERROR, $response['message']);
442 451 // Expose the responseFeed
443 452 $this->responseFeed = $feed;
444 453 return null;
... ... @@ -462,7 +471,7 @@ class KT_cmis_atom_service_pwc extends KT_cmis_atom_service {
462 471 {
463 472 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
464 473  
465   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  474 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
466 475  
467 476 // determine whether we want the Private Working Copy entry feed or the actual physical Private Working Copy content.
468 477 // this depends on $this->params[1]
... ... @@ -489,10 +498,9 @@ class KT_cmis_atom_service_pwc extends KT_cmis_atom_service {
489 498 {
490 499 // call the cancel checkout function
491 500  
492   - $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
493   -
  501 + $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
494 502 $VersioningService = new KTVersioningService(KT_cmis_atom_service_helper::getKt());
495   -
  503 +
496 504 $response = $VersioningService->cancelCheckout($repositoryId, $this->params[0]);
497 505  
498 506 if ($response['status_code'] == 1) {
... ... @@ -510,7 +518,7 @@ class KT_cmis_atom_service_pwc extends KT_cmis_atom_service {
510 518 {
511 519 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
512 520 $VersioningService = new KTVersioningService(KT_cmis_atom_service_helper::getKt());
513   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  521 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
514 522  
515 523 // get object properties
516 524 $cmisObjectProperties = KT_cmis_atom_service_helper::getCmisProperties($this->rawContent);
... ... @@ -568,10 +576,12 @@ class KT_cmis_atom_service_checkedout extends KT_cmis_atom_service {
568 576 public function GET_action()
569 577 {
570 578 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
571   -
572   - $NavigationService = new NavigationService(KT_cmis_atom_service_helper::getKt());
  579 + $NavigationService = new KTNavigationService(KT_cmis_atom_service_helper::getKt());
573 580  
574 581 $checkedout = $NavigationService->getCheckedOutDocs($repositoryId);
  582 +
  583 + // hack, for removing one level of access
  584 + $checkedout = $checkedout['results'];
575 585  
576 586 //Create a new response feed
577 587 $feed = new KT_cmis_atom_responseFeed_GET(CMIS_APP_BASE_URI);
... ... @@ -607,12 +617,8 @@ class KT_cmis_atom_service_checkedout extends KT_cmis_atom_service {
607 617 $link->appendChild($feed->newAttr('type', 'application/atom+xml;type=feed'));
608 618 $feed->appendChild($link);
609 619  
610   - foreach($checkedout as $cmisEntry)
611   - {
  620 + foreach($checkedout as $cmisEntry) {
612 621 KT_cmis_atom_service_helper::createObjectEntry($feed, $cmisEntry, $folderName, true);
613   -
614   -// // after each entry, add app:edited tag
615   -// $feed->newField('app:edited', KT_cmis_atom_service_helper::formatDatestamp(), $feed);
616 622 }
617 623  
618 624 $feed->newField('cmis:hasMoreItems', 'false', $feed);
... ... @@ -624,9 +630,8 @@ class KT_cmis_atom_service_checkedout extends KT_cmis_atom_service {
624 630 public function POST_action()
625 631 {
626 632 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
627   -
628 633 $VersioningService = new KTVersioningService(KT_cmis_atom_service_helper::getKt());
629   - $ObjectService = new ObjectService(KT_cmis_atom_service_helper::getKt());
  634 + $ObjectService = new KTObjectService(KT_cmis_atom_service_helper::getKt());
630 635  
631 636 $cmisObjectProperties = KT_cmis_atom_service_helper::getCmisProperties($this->rawContent);
632 637  
... ... @@ -664,10 +669,14 @@ class KT_cmis_atom_service_types extends KT_cmis_atom_service {
664 669  
665 670 public function GET_action()
666 671 {
667   - $RepositoryService = new RepositoryService();
  672 + $RepositoryService = new KTRepositoryService();
668 673 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
669 674  
670 675 $types = $RepositoryService->getTypes($repositoryId);
  676 +
  677 + // hack for removing one level of access
  678 + $types = $types['results'];
  679 +
671 680 $type = ((empty($this->params[0])) ? 'all' : $this->params[0]);
672 681 $feed = KT_cmis_atom_service_helper::getTypeFeed($type, $types);
673 682  
... ... @@ -684,7 +693,7 @@ class KT_cmis_atom_service_type extends KT_cmis_atom_service {
684 693  
685 694 public function GET_action()
686 695 {
687   - $RepositoryService = new RepositoryService();
  696 + $RepositoryService = new KTRepositoryService();
688 697 $repositoryId = KT_cmis_atom_service_helper::getRepositoryId($RepositoryService);
689 698  
690 699 if (!isset($this->params[1])) {
... ... @@ -696,6 +705,10 @@ class KT_cmis_atom_service_type extends KT_cmis_atom_service {
696 705 // call directly from here rather than via getTypeFeed.
697 706 $type = ucwords($this->params[0]);
698 707 $types = $RepositoryService->getTypes($repositoryId, $type);
  708 +
  709 + // hack for removing one level of access
  710 + $types = $types['results'];
  711 +
699 712 $feed = KT_cmis_atom_service_helper::getTypeFeed($type, $types);
700 713 }
701 714 else {
... ... @@ -720,7 +733,6 @@ class KT_cmis_atom_service_type extends KT_cmis_atom_service {
720 733 private function getTypeChildrenFeed()
721 734 {
722 735 //Create a new response feed
723   - // $baseURI=NULL,$title=NULL,$link=NULL,$updated=NULL,$author=NULL,$id=NULL
724 736 $feed = new KT_cmis_atom_responseFeed_GET(CMIS_APP_BASE_URI);
725 737  
726 738 $feed->newField('title', 'Child Types of ' . ucwords($this->params[0]), $feed);
... ...
webservice/atompub/cmis/KT_cmis_atom_service_helper.inc.php
... ... @@ -16,11 +16,14 @@ class KT_cmis_atom_service_helper {
16 16 static public function setRepositoryId(&$RepositoryService = null)
17 17 {
18 18 if (is_null($RepositoryService)) {
19   - $RepositoryService = new RepositoryService();
  19 + $RepositoryService = new KTRepositoryService();
20 20 }
21 21  
22 22 $repositories = $RepositoryService->getRepositories();
23 23  
  24 + // hack for removing one level of access
  25 + $repositories = $repositories['results'];
  26 +
24 27 // TODO handle multiple repositories
25 28 self::$repositoryId = $repositories[0]['repositoryId'];
26 29 }
... ... @@ -60,11 +63,11 @@ class KT_cmis_atom_service_helper {
60 63 $serviceType = $service->getServiceType();
61 64 $response = $ObjectService->getProperties($repositoryId, $objectId, false, false);
62 65  
63   - if (PEAR::isError($response)) {
64   - return KT_cmis_atom_service_helper::getErrorFeed($service, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response->getMessage());
  66 + if ($response['status_code'] == 1) {
  67 + return KT_cmis_atom_service_helper::getErrorFeed($service, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response['message']);
65 68 }
66   -
67   - $cmisEntry = $response;
  69 +
  70 + $cmisEntry = $response['results'];
68 71 $response = null;
69 72  
70 73 // POST/PWC responses only send back an entry, not a feed
... ... @@ -84,11 +87,6 @@ class KT_cmis_atom_service_helper {
84 87  
85 88 if ($serviceType == 'PWC') $pwc = true; else $pwc = false;
86 89 KT_cmis_atom_service_helper::createObjectEntry($response, $cmisEntry, $cmisEntry['properties']['parentId']['value'], $pwc, $method);
87   -
88   - // Don't think this should be here...only one item so why would we need to say there are no more?
89   - /*if ($method == 'GET') {
90   - $response->newField('cmis:hasMoreItems', 'false', $response);
91   - }*/
92 90  
93 91 return $response;
94 92 }
... ... @@ -639,12 +637,15 @@ class KT_cmis_atom_service_helper {
639 637 static public function getContentStream(&$service, &$ObjectService, $repositoryId)
640 638 {
641 639 $response = $ObjectService->getProperties($repositoryId, $service->params[0], false, false);
642   - if (PEAR::isError($response)) {
  640 + if ($response['status_code'] == 1) {
643 641 return null;
644 642 }
645 643  
646 644 $contentStream = $ObjectService->getContentStream($repositoryId, $service->params[0]);
647 645  
  646 + // hack for removing one level of access
  647 + $contentStream = $contentStream['results'];
  648 +
648 649 return $contentStream;
649 650 }
650 651 /**
... ... @@ -657,11 +658,14 @@ class KT_cmis_atom_service_helper {
657 658 static public function downloadContentStream(&$service, &$ObjectService, $repositoryId)
658 659 {
659 660 $response = $ObjectService->getProperties($repositoryId, $service->params[0], false, false);
660   - if (PEAR::isError($response)) {
661   - $feed = KT_cmis_atom_service_helper::getErrorFeed($service, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response->getMessage());
  661 + if ($response['status_code'] == 1) {
  662 + $feed = KT_cmis_atom_service_helper::getErrorFeed($service, KT_cmis_atom_service::STATUS_SERVER_ERROR, $response['message']);
662 663 $service->responseFeed = $feed;
663 664 return null;
664 665 }
  666 + else {
  667 + $response = $response['results'];
  668 + }
665 669  
666 670 // TODO also check If-Modified-Since?
667 671 // $service->headers['If-Modified-Since'] => 2009-07-24 17:16:54
... ... @@ -678,6 +682,9 @@ class KT_cmis_atom_service_helper {
678 682  
679 683 $contentStream = $ObjectService->getContentStream($repositoryId, $service->params[0]);
680 684  
  685 + // hack for removing one level of access
  686 + $contentStream = $contentStream['results'];
  687 +
681 688 // headers specific to output
682 689 $service->setEtag($eTag);
683 690 $service->setHeader('Last-Modified', $response['properties']['lastModificationDate']['value']);
... ...
webservice/classes/atompub/KT_atom_serviceDoc.inc.php
... ... @@ -43,7 +43,6 @@
43 43 */
44 44 include_once('KT_atom_baseDoc.inc.php');
45 45  
46   -
47 46 class KT_atom_serviceDoc extends KT_atom_baseDoc {
48 47  
49 48 protected $baseURI=NULL;
... ... @@ -97,11 +96,6 @@ class KT_atom_serviceDoc extends KT_atom_baseDoc {
97 96  
98 97  
99 98  
100   -
101   -
102   -
103   -
104   -
105 99 /**
106 100 <?xml version="1.0" encoding="utf-8"?>
107 101 <service xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom">
... ...
webservice/classes/atompub/cmis/KT_cmis_atom_server.inc.php
1 1 <?php
2 2  
3 3 include_once(KT_ATOM_LIB_FOLDER . 'KT_atom_server.inc.php');
4   -require_once('RepositoryService.inc.php');
  4 +require_once(CMIS_API . '/ktRepositoryService.inc.php');
5 5  
6 6 class KT_cmis_atom_server extends KT_atom_server {
7 7  
... ... @@ -45,12 +45,18 @@ class KT_cmis_atom_server extends KT_atom_server {
45 45 $workspace = strtolower(trim($queryArray[0]));
46 46 if ($workspace == 'servicedocument')
47 47 {
48   - $RepositoryService = new RepositoryService();
  48 + $RepositoryService = new KTRepositoryService();
49 49  
50 50 // fetch data for response
51 51 $repositories = $RepositoryService->getRepositories();
  52 +
  53 + // hack for removing one level of access
  54 + $repositories = $repositories['results'];
  55 +
52 56 // fetch for default first repo; NOTE that this will probably have to change at some point, quick and dirty for now
53   - $this->repositoryInfo = $RepositoryService->getRepositoryInfo($repositories[0]['repositoryId']);
  57 + // hack for removing one level of access
  58 + $repositoryInfo = $RepositoryService->getRepositoryInfo($repositories[0]['repositoryId']);
  59 + $this->repositoryInfo = $repositoryInfo['results'];
54 60 }
55 61 }
56 62  
... ...
webservice/classes/atompub/cmis/KT_cmis_atom_serviceDoc.inc.php
... ... @@ -43,7 +43,7 @@
43 43 * Includes
44 44 */
45 45 include_once(KT_ATOM_LIB_FOLDER.'KT_atom_serviceDoc.inc.php');
46   -require_once('RepositoryService.inc.php');
  46 +require_once(CMIS_API . '/ktRepositoryService.inc.php');
47 47  
48 48 class KT_cmis_atom_serviceDoc extends KT_atom_serviceDoc {
49 49  
... ... @@ -58,12 +58,18 @@ class KT_cmis_atom_serviceDoc extends KT_atom_serviceDoc {
58 58 // get repositoryInfo
59 59 // NOTE currently we only support one repository, which will be the first one found in the repositories.xml config
60 60 // TODO multiple repositories as individual workspaces
61   - $RepositoryService = new RepositoryService();
  61 + $RepositoryService = new KTRepositoryService();
62 62  
63 63 // fetch data for response
64 64 $repositories = $RepositoryService->getRepositories();
  65 +
  66 + // hack for removing one level of access
  67 + $repositories = $repositories['results'];
  68 +
65 69 // fetch for default first repo; NOTE that this will probably have to change at some point, quick and dirty for now
66   - $this->repositoryInfo = $RepositoryService->getRepositoryInfo($repositories[0]['repositoryId']);
  70 + // hack for removing one level of access
  71 + $repositoryInfo = $RepositoryService->getRepositoryInfo($repositories[0]['repositoryId']);
  72 + $this->repositoryInfo = $repositoryInfo['results'];
67 73 }
68 74  
69 75 protected function constructServiceDocumentHeaders()
... ...