1<?php
2
3  /*
4   +-----------------------------------------------------------------------------+
5   | ILIAS open source                                                           |
6   +-----------------------------------------------------------------------------+
7   | Copyright (c) 1998-2001 ILIAS open source, University of Cologne            |
8   |                                                                             |
9   | This program is free software; you can redistribute it and/or               |
10   | modify it under the terms of the GNU General Public License                 |
11   | as published by the Free Software Foundation; either version 2              |
12   | of the License, or (at your option) any later version.                      |
13   |                                                                             |
14   | This program is distributed in the hope that it will be useful,             |
15   | but WITHOUT ANY WARRANTY; without even the implied warranty of              |
16   | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               |
17   | GNU General Public License for more details.                                |
18   |                                                                             |
19   | You should have received a copy of the GNU General Public License           |
20   | along with this program; if not, write to the Free Software                 |
21   | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. |
22   +-----------------------------------------------------------------------------+
23  */
24
25
26 /**
27   * Abstract classs for reading structure objects
28   *
29   * @author Roland Kuestermann (rku@aifb.uni-karlsruhe.de)
30   * @version $Id: class.ilSoapStructureReader.php,v 1.5 2006/05/23 23:09:06 hschottm Exp $
31   *
32   * @package ilias
33   */
34
35include_once './webservice/soap/classes/class.ilSoapStructureObject.php';
36
37class ilSoapStructureReader
38{
39    public $object;
40    public $structureObject;
41
42    public function __construct(&$object)
43    {
44        $this->object = &$object;
45        $this->structureObject = &ilSoapStructureObjectFactory::getInstanceForObject($object);
46    }
47
48    public function getStructureObject()
49    {
50        $this->_parseStructure();
51        return $this->structureObject;
52    }
53
54    public function _parseStructure()
55    {
56        die("abstract");
57    }
58
59    public function isValid()
60    {
61        return $this->structureObject != null && is_a($this->structureObject, "ilSoapStructureObject");
62    }
63
64
65    /**
66    * read access to parent object
67    */
68    public function getObject()
69    {
70        return $this->object;
71    }
72}
73