Skip to content

Commit

Permalink
Rely on exceptions, except where mdb will return a PEAR_Error
Browse files Browse the repository at this point in the history
  • Loading branch information
CloCkWeRX committed Mar 25, 2012
1 parent 484bb0a commit 84e55b9
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 80 deletions.
94 changes: 19 additions & 75 deletions RDF/Model/Memory.php
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -409,19 +409,13 @@ function find(RDF_Resource $subject = null, RDF_Resource $predicate = null, RDF_
$t = $this->triples[$this->index[$subject->getLabel()][$i]]; $t = $this->triples[$this->index[$subject->getLabel()][$i]];
if ($this->matchStatement($t, $subject, $predicate, $object)) { if ($this->matchStatement($t, $subject, $predicate, $object)) {
$result = $res->add($t); $result = $res->add($t);
if (PEAR::isError($result)) {
return $result;
}
} }
} }
} else { } else {
// If there is no index, use linear search. // If there is no index, use linear search.
foreach($this->triples as $value) { foreach($this->triples as $value) {
if ($this->matchStatement($value, $subject, $predicate, $object)) { if ($this->matchStatement($value, $subject, $predicate, $object)) {
$result = $res->add($value); $result = $res->add($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }
} }
Expand Down Expand Up @@ -459,9 +453,6 @@ function findRegex($subject_regex, $predicate_regex, $object_regex)
&& ($object_regex == null || preg_match($object_regex, $value->obj->getLabel())) && ($object_regex == null || preg_match($object_regex, $value->obj->getLabel()))
) { ) {
$result = $res->add($value); $result = $res->add($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }


Expand Down Expand Up @@ -492,9 +483,6 @@ function findVocabulary($vocabulary)
foreach($this->triples as $value) { foreach($this->triples as $value) {
if (RDF_Util::getNamespace($value->getPredicate()) == $vocabulary) { if (RDF_Util::getNamespace($value->getPredicate()) == $vocabulary) {
$result = $res->add($value); $result = $res->add($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }
return $res; return $res;
Expand All @@ -516,9 +504,6 @@ function findVocabulary($vocabulary)
function findFirstMatchingStatement($subject, $predicate, $object) function findFirstMatchingStatement($subject, $predicate, $object)
{ {
$res = $this->find($subject, $predicate, $object); $res = $this->find($subject, $predicate, $object);
if (PEAR::isError($res)) {
return $res;
}
if ($res->size() != 0) { if ($res->size() != 0) {
return $res->triples[0]; return $res->triples[0];
} else { } else {
Expand All @@ -541,9 +526,6 @@ function findFirstMatchingStatement($subject, $predicate, $object)
function findCount($subject, $predicate, $object) function findCount($subject, $predicate, $object)
{ {
$res = $this->find($subject, $predicate, $object); $res = $this->find($subject, $predicate, $object);
if (PEAR::isError($res)) {
return $res;
}
return $res->size(); return $res->size();
} }


Expand All @@ -569,24 +551,18 @@ function replace(RDF_Resource $subject = null, RDF_Resource $predicate = null, R


foreach($this->triples as $key => $value) { foreach($this->triples as $key => $value) {
$result = $this->triples[$key]->subj->equals($subject); $result = $this->triples[$key]->subj->equals($subject);
if (PEAR::isError($result)) {
return $result;
}
if ($result) { if ($result) {
$this->triples[$key]->subj = $replacement; $this->triples[$key]->subj = $replacement;
$this->indexed = false; $this->indexed = false;
} }
$result = $this->triples[$key]->pred->equals($predicate); $result = $this->triples[$key]->pred->equals($predicate);
if (PEAR::isError($result)) {
return $result;
}
if ($result) { if ($result) {
$this->triples[$key]->pred = $replacement; $this->triples[$key]->pred = $replacement;
} }
$result = $this->triples[$key]->obj->equals($object); $result = $this->triples[$key]->obj->equals($object);
if (PEAR::isError($result)) {
return $result;
}
if ($result) { if ($result) {
$this->triples[$key]->obj = $replacement; $this->triples[$key]->obj = $replacement;
} }
Expand All @@ -608,29 +584,23 @@ function matchStatement($statement, $subject, $predicate, $object)
{ {
if ($subject) { if ($subject) {
$result = $statement->subj->equals($subject); $result = $statement->subj->equals($subject);
if (PEAR::isError($result)) {
return $result;
}
if (!$result) { if (!$result) {
return false; return false;
} }
} }


if ($predicate) { if ($predicate) {
$result = $statement->pred->equals($predicate); $result = $statement->pred->equals($predicate);
if (PEAR::isError($result)) {
return $result;
}
if (!$result) { if (!$result) {
return false; return false;
} }
} }


if ($object) { if ($object) {
$result = $statement->obj->equals($object); $result = $statement->obj->equals($object);
if (PEAR::isError($result)) {
return $result;
}
if (!$result) { if (!$result) {
return false; return false;
} }
Expand All @@ -654,17 +624,11 @@ function getUniqueResourceURI($prefix)
while (true) { while (true) {
$uri = $this->getBaseURI() . $prefix . $counter; $uri = $this->getBaseURI() . $prefix . $counter;
$tempbNode =& RDF_BlankNode::factory($uri); $tempbNode =& RDF_BlankNode::factory($uri);
if (PEAR::isError($tempbNode)) {
return $tempbNode;
}
$res1 = $this->find($tempbNode, null, null); $res1 = $this->find($tempbNode, null, null);
if (PEAR::isError($res1)) {
return $res1;
}
$res2 = $this->find(null, null, $tempbNode); $res2 = $this->find(null, null, $tempbNode);
if (PEAR::isError($res2)) {
return $res2;
}
if ($res1->size() == 0 && $res2->size() == 0) { if ($res1->size() == 0 && $res2->size() == 0) {
return $uri; return $uri;
} }
Expand Down Expand Up @@ -692,9 +656,7 @@ function equals(RDF_Model $that)
} }


$result = $this->containsAll($that); $result = $this->containsAll($that);
if (PEAR::isError($result)) {
return $result;
}
if (!$result) { if (!$result) {
return false; return false;
} }
Expand Down Expand Up @@ -735,17 +697,13 @@ function &unite(RDF_Model $model)
if (is_a($model, 'RDF_Model_Memory')) { if (is_a($model, 'RDF_Model_Memory')) {
foreach($model->triples as $value) { foreach($model->triples as $value) {
$result = $res->addWithoutDuplicates($value); $result = $res->addWithoutDuplicates($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} elseif (is_a($model, 'RDF_Model_MDB')) { } elseif (is_a($model, 'RDF_Model_MDB')) {
$Model_Memory =& $model->getMemModel(); $Model_Memory =& $model->getMemModel();
foreach($Model_Memory->triples as $value) { foreach($Model_Memory->triples as $value) {
$result = $res->addWithoutDuplicates($value); $result = $res->addWithoutDuplicates($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }


Expand All @@ -770,17 +728,13 @@ function &subtract(RDF_Model $model)
if (is_a($model, 'RDF_Model_Memory')) { if (is_a($model, 'RDF_Model_Memory')) {
foreach($model->triples as $value) { foreach($model->triples as $value) {
$result = $res->remove($value); $result = $res->remove($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} elseif (is_a($model, 'RDF_Model_MDB')) { } elseif (is_a($model, 'RDF_Model_MDB')) {
$Model_Memory =& $model->getMemModel(); $Model_Memory =& $model->getMemModel();
foreach($Model_Memory->triples as $value) { foreach($Model_Memory->triples as $value) {
$result = $res->remove($value); $result = $res->remove($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }


Expand All @@ -803,19 +757,15 @@ function &intersect(RDF_Model $model)
foreach($model->triples as $value) { foreach($model->triples as $value) {
if ($this->contains($value)) { if ($this->contains($value)) {
$result = $res->add($value); $result = $res->add($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }
} elseif (is_a($model, 'RDF_Model_MDB')) { } elseif (is_a($model, 'RDF_Model_MDB')) {
$Model_Memory =& $model->getMemModel(); $Model_Memory =& $model->getMemModel();
foreach($Model_Memory->triples as $value) { foreach($Model_Memory->triples as $value) {
if ($this->contains($value)) { if ($this->contains($value)) {
$result = $res->add($value); $result = $res->add($value);
if (PEAR::isError($result)) {
return $result;
}
} }
} }
} }
Expand All @@ -841,17 +791,13 @@ function addModel(RDF_Model $model)
if (is_a($model, 'RDF_Model_Memory')) { if (is_a($model, 'RDF_Model_Memory')) {
foreach($model->triples as $value) { foreach($model->triples as $value) {
$result = $this->_addStatementFromAnotherModel($value, $blankNodes_tmp); $result = $this->_addStatementFromAnotherModel($value, $blankNodes_tmp);
if (PEAR::isError($result)) {
return $result;
}
} }
} elseif (is_a($model, 'RDF_Model_MDB')) { } elseif (is_a($model, 'RDF_Model_MDB')) {
$Model_Memory =& $model->getMemModel(); $Model_Memory =& $model->getMemModel();
foreach($Model_Memory->triples as $value) { foreach($Model_Memory->triples as $value) {
$result = $this->_addStatementFromAnotherModel($value, $blankNodes_tmp); $result = $this->_addStatementFromAnotherModel($value, $blankNodes_tmp);
if (PEAR::isError($result)) {
return $result;
}
} }
} }


Expand All @@ -872,9 +818,7 @@ function &reify()
foreach($this->triples as $statement) { foreach($this->triples as $statement) {
$pointer =& $statement->reify($res); $pointer =& $statement->reify($res);
$result = $res->addModel($pointer); $result = $res->addModel($pointer);
if (PEAR::isError($result)) {
return $result;
}
} }
return $res; return $res;
} }
Expand Down
10 changes: 5 additions & 5 deletions RDF/Store/MDB.php
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -50,15 +50,15 @@ function createTables($filename)
$manager =& new MDB_Manager; $manager =& new MDB_Manager;
$err = $manager->connect($this->dbConn); $err = $manager->connect($this->dbConn);
if(PEAR::isError($err)) { if(PEAR::isError($err)) {
return $err; throw new RDF_Exception($err->getMessage());
} }
$err = $manager->updateDatabase( $err = $manager->updateDatabase(
$filename, $filename,
$filename.'.old', $filename.'.old',
array('database' => $this->dbConn->database_name) array('database' => $this->dbConn->database_name)
); );
if(PEAR::isError($err)) { if(PEAR::isError($err)) {
return $err; throw new RDF_Exception($err->getMessage());
} }
$dsn = $this->dbConn->getDSN(); $dsn = $this->dbConn->getDSN();
// cant we remove this ugly hack? // cant we remove this ugly hack?
Expand Down Expand Up @@ -100,7 +100,7 @@ function modelExists($modelURI)
$result = $this->dbConn->queryOne($sql); $result = $this->dbConn->queryOne($sql);


if (PEAR::isError($result)) { if (PEAR::isError($result)) {
return $result; throw new RDF_Exception($err->getMessage());
} }


return (bool)$result; return (bool)$result;
Expand Down Expand Up @@ -159,7 +159,7 @@ function getNewModel($modelURI, $baseURI = null)
$this->dbConn->autoCommit(true); $this->dbConn->autoCommit(true);


if (PEAR::isError($result)) { if (PEAR::isError($result)) {
return $result; throw new RDF_Exception($err->getMessage());
} }


return new RDF_Model_MDB($this->dbConn, $modelURI, $modelID, $baseURI); return new RDF_Model_MDB($this->dbConn, $modelURI, $modelID, $baseURI);
Expand Down Expand Up @@ -222,4 +222,4 @@ function _createUniqueModelID()
return $maxModelID; return $maxModelID;
} }
} // end: Class Store_MDB } // end: Class Store_MDB
?> ?>

0 comments on commit 84e55b9

Please sign in to comment.