ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilSoapStructureObjectFactory.php
Go to the documentation of this file.
1 <?php
2  /*
3  +-----------------------------------------------------------------------------+
4  | ILIAS open source |
5  +-----------------------------------------------------------------------------+
6  | Copyright (c) 1998-2001 ILIAS open source, University of Cologne |
7  | |
8  | This program is free software; you can redistribute it and/or |
9  | modify it under the terms of the GNU General Public License |
10  | as published by the Free Software Foundation; either version 2 |
11  | of the License, or (at your option) any later version. |
12  | |
13  | This program is distributed in the hope that it will be useful, |
14  | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15  | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16  | GNU General Public License for more details. |
17  | |
18  | You should have received a copy of the GNU General Public License |
19  | along with this program; if not, write to the Free Software |
20  | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21  +-----------------------------------------------------------------------------+
22  */
23 
24 
35 {
36  public function getInstanceForObject($object)
37  {
38  $classname = ilSoapStructureObjectFactory::_getClassnameForType($object->getType());
39 
40  if ($classname != null) {
41  switch ($object->getType()) {
42  case "lm":
43  case "glo":
44  return new $classname(
45  $object->getId(),
46  $object->getType(),
47  $object->getTitle(),
48  $object->getLongDescription(),
49  $object->getRefId()
50  );
51  break;
52  }
53  }
54  return null;
55  }
56 
57  public function getInstance($objId, $type, $title, $description, $parentRefId)
58  {
60  if ($classname == null) {
61  return null;
62  }
63 
64  return new $classname($objId, $type, $title, $description, $parentRefId);
65  }
66 
67  public function _getClassnameForType($type)
68  {
69  switch ($type) {
70  case "lm":
71  include_once "./webservice/soap/classes/class.ilSoapRepositoryStructureObject.php";
72  return "ilSoapRepositoryStructureObject";
73  case "st":
74  include_once "./webservice/soap/classes/class.ilSoapLMChapterStructureObject.php";
75  return "ilSoapLMChapterStructureObject";
76  case "pg":
77  include_once "./webservice/soap/classes/class.ilSoapLMPageStructureObject.php";
78  return "ilSoapLMPageStructureObject";
79  case "glo":
80  include_once "./webservice/soap/classes/class.ilSoapRepositoryStructureObject.php";
81  return "ilSoapRepositoryStructureObject";
82  case "git":
83  include_once "./webservice/soap/classes/class.ilSoapGLOTermStructureObject.php";
84  return "ilSoapGLOTermStructureObject";
85  case "gdf":
86  include_once "./webservice/soap/classes/class.ilSoapGLOTermDefinitionStructureObject.php";
87  return "ilSoapGLOTermDefinitionStructureObject";
88 
89 
90  }
91  return null;
92  }
93 }
$type
getInstance($objId, $type, $title, $description, $parentRefId)