You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by re...@apache.org on 2010/08/25 10:39:47 UTC
svn commit: r988886 -
/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java
Author: reto
Date: Wed Aug 25 08:39:47 2010
New Revision: 988886
URL: http://svn.apache.org/viewvc?rev=988886&view=rev
Log:
added locks
Modified:
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java
Modified: incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java?rev=988886&r1=988885&r2=988886&view=diff
==============================================================================
--- incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java (original)
+++ incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.utils/src/main/java/org/apache/clerezza/rdf/utils/GraphNode.java Wed Aug 25 08:39:47 2010
@@ -84,12 +84,18 @@ public class GraphNode {
* @return the context of the node represented by the instance
*/
public Graph getNodeContext() {
- final HashSet<Resource> dontExpand = new HashSet<Resource>();
- dontExpand.add(resource);
- if (resource instanceof UriRef) {
- return getContextOf((UriRef) resource, dontExpand).getGraph();
+ Lock l = readLock();
+ l.lock();
+ try {
+ final HashSet<Resource> dontExpand = new HashSet<Resource>();
+ dontExpand.add(resource);
+ if (resource instanceof UriRef) {
+ return getContextOf((UriRef) resource, dontExpand).getGraph();
+ }
+ return getContextOf(resource, dontExpand).getGraph();
+ } finally {
+ l.unlock();
}
- return getContextOf(resource, dontExpand).getGraph();
}
@@ -314,13 +320,19 @@ public class GraphNode {
* statement with the given prediate and object, false otherwise
*/
public boolean hasProperty(UriRef property, Resource object) {
- Iterator<Resource> objects = getObjects(property);
- while (objects.hasNext()) {
- if (objects.next().equals(object)) {
- return true;
+ Lock l = readLock();
+ l.lock();
+ try {
+ Iterator<Resource> objects = getObjects(property);
+ while (objects.hasNext()) {
+ if (objects.next().equals(object)) {
+ return true;
+ }
}
+ return false;
+ } finally {
+ l.unlock();
}
- return false;
}
/**
@@ -332,7 +344,13 @@ public class GraphNode {
* which meet the specified condition
*/
public int countSubjects(UriRef property) {
- return countTriples(graph.filter(null, property, resource));
+ Lock l = readLock();
+ l.lock();
+ try {
+ return countTriples(graph.filter(null, property, resource));
+ } finally {
+ l.unlock();
+ }
}
/**