/** * Short description of method removeType * * @access public * @author Joel Bout, <*****@*****.**> * @param Resource resource * @param Class class * @return boolean */ public function removeType(\core_kernel_classes_Resource $resource, \core_kernel_classes_Class $class) { $returnValue = (bool) false; $dbWrapper = \core_kernel_classes_DbWrapper::singleton(); $referencer = ResourceReferencer::singleton(); if ($resource->hasType($class)) { $resourceId = intval(Utils::getResourceToTableId($resource)); $classInfo = Utils::getClassInfo($class); $triples = $resource->getRdfTriples(); if (!empty($resourceId)) { $resource->delete(false); $referencer->unReferenceResource($resource); $query = 'INSERT INTO "statements" ("modelid", "subject", "predicate", "object", "l_language") VALUES (?, ?, ?, ?, ?);'; foreach ($triples as $t) { $dbWrapper->exec($query, array(99999, $t->subject, $t->predicate, $t->object, $t->lg)); } } } $returnValue = true; return (bool) $returnValue; }