• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

webservice/soap/classes/class.ilSoapStructureObjectAdministration.php

Go to the documentation of this file.
00001 <?php
00002   /*
00003    +-----------------------------------------------------------------------------+
00004    | ILIAS open source                                                           |
00005    +-----------------------------------------------------------------------------+
00006    | Copyright (c) 1998-2001 ILIAS open source, University of Cologne            |
00007    |                                                                             |
00008    | This program is free software; you can redistribute it and/or               |
00009    | modify it under the terms of the GNU General Public License                 |
00010    | as published by the Free Software Foundation; either version 2              |
00011    | of the License, or (at your option) any later version.                      |
00012    |                                                                             |
00013    | This program is distributed in the hope that it will be useful,             |
00014    | but WITHOUT ANY WARRANTY; without even the implied warranty of              |
00015    | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               |
00016    | GNU General Public License for more details.                                |
00017    |                                                                             |
00018    | You should have received a copy of the GNU General Public License           |
00019    | along with this program; if not, write to the Free Software                 |
00020    | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. |
00021    +-----------------------------------------------------------------------------+
00022   */
00023 
00024 
00034 include_once './webservice/soap/classes/class.ilSoapAdministration.php';
00035 
00036 class ilSOAPStructureObjectAdministration extends ilSoapAdministration
00037 {
00038         function ilSOAPStructureObjectAdministration ()
00039         {
00040                 parent::ilSoapAdministration();
00041         }
00042 
00043 
00044         function getStructureObjects ($sid, $ref_id)
00045         {
00046 
00047                 if(!$this->__checkSession($sid))
00048                 {
00049                         return $this->__raiseError($this->sauth->getMessage(),$this->sauth->getMessageCode());
00050                 }
00051 
00052                 include_once './include/inc.header.php';
00053 
00054                 if(!$target_obj =& ilObjectFactory::getInstanceByRefId($ref_id, false))
00055                 {
00056                         return $this->__raiseError('No valid reference id given.', 'Client');
00057                 }
00058 
00059                 $structureReaderClassname = "ilSoap".strtoupper($target_obj->getType())."StructureReader";
00060                 $filename = "./webservice/soap/classes/class.".$structureReaderClassname.".php";
00061 
00062                 if (!file_exists($filename))
00063                 {
00064                         return $this->__raiseError("Object type '".$target_obj->getType()."'is not supported.", 'Client');
00065                 }
00066 
00067                 include_once $filename;
00068 
00069                 $structureReader = new $structureReaderClassname($target_obj);
00070 
00071                 include_once './webservice/soap/classes/class.ilSoapStructureObjectXMLWriter.php';
00072 
00073                 $xml_writer = new ilSoapStructureObjectXMLWriter();
00074 
00075                 $structureObject = & $structureReader->getStructureObject();
00076 
00077                 $xml_writer->setStructureObject ($structureObject);
00078 
00079                 if(!$xml_writer->start())
00080                 {
00081                         return $this->__raiseError('Cannot create object xml !','Server');
00082                 }
00083 
00084                 return $xml_writer->getXML();
00085 
00086         }
00087 }
00088 
00089 ?>

Generated on Fri Dec 13 2013 17:57:03 for ILIAS Release_3_9_x_branch .rev 46835 by  doxygen 1.7.1