org.openanzo.model.transaction.impl
Class TransactionContainerProxy

java.lang.Object
  extended by org.openanzo.model.transaction.impl.TransactionContainerProxy
All Implemented Interfaces:
IContainer

public class TransactionContainerProxy
extends java.lang.Object
implements IContainer

Container that contains a transaction queue, so all operations go into transactions before they are applied to a parent graph. All calls to find and contains will include the results of the parent container overlaid with the contents of the transaction queue.

Author:
Matthew Roy ( mroy@cambridgesemantics.com )

Constructor Summary
TransactionContainerProxy(IContainer parentContainer, ITransactionQueueManager transactionQueueManager)
          Create a new TransactionContainerProxy, which wraps an IContainer with a transaction layer
 
Method Summary
 void add(java.util.Iterator<org.openrdf.model.Statement> statements)
          Add a set of statements from container
 void add(org.openrdf.model.Resource subj, org.openrdf.model.URI pred, org.openrdf.model.Value obj, org.openrdf.model.Resource context)
          Add a new statement with given subj,pred,obj,context
 void add(org.openrdf.model.Statement... statements)
          Add one or more statements to container
 void clear()
          Delete all statements in container
 void clear(org.openrdf.model.Resource... context)
          Delete all statements in container for given contexts
 void close()
          Disconnect container from its source and close the container Note: Once a container is closed, it is based on the source of the container's data whether or not subsequent calls to connect will return the same data
 void connect()
          Connect container to its source
 boolean contains(org.openrdf.model.Resource s, org.openrdf.model.URI p, org.openrdf.model.Value o, org.openrdf.model.Resource... context)
          Return true if the container contains atleast 1 statement that matches the pattern of subj,prop,obj,context
 boolean contains(org.openrdf.model.Statement statement)
          Return true if the container contains atleast 1 statement that matches the statement provided
 void delete(java.util.Iterator<org.openrdf.model.Statement> statements)
          Delete a set of statements from container
 void delete(org.openrdf.model.Resource subj, org.openrdf.model.URI pred, org.openrdf.model.Value obj, org.openrdf.model.Resource context)
          Delete a statement from container
 void delete(org.openrdf.model.Statement... statements)
          Delete a set of statements from container
 QueryResult executeQuery(java.util.Set<org.openrdf.model.URI> defaultNamedGraphsIn, java.util.Set<org.openrdf.model.URI> namedGraphsIn, java.lang.String query)
          Execute a SPARQL query against the data within this container
 info.aduna.collections.iterators.CloseableIterator<org.openrdf.model.Statement> find(org.openrdf.model.Resource s, org.openrdf.model.URI p, org.openrdf.model.Value o, org.openrdf.model.Resource... context)
          Return an iterator over all statements that match the pattern of subj,prop,obj
 java.util.Collection<org.openrdf.model.URI> getContexts()
          Get the set of Context URIs that are container within this Container
 INamedGraphEventManager getEventManager()
          Return INamedGraphEventManager for this container
 info.aduna.collections.iterators.CloseableIterator<org.openrdf.model.Statement> getStatements()
          Get an iterator over all statements within this container
 ITransactionManager getTransactionManager()
          Return ITransactionManager for this container
 org.openrdf.model.URI getURI()
          Get URI of IContainer
 boolean isClosed()
          Return if container is closed
 boolean isConnected()
          Return if the container is connected to its source
 boolean isEmpty()
          Return if container is empty
 boolean isEmpty(org.openrdf.model.Resource... context)
          Return if container is empty for given contexts
 void setEventManager(INamedGraphEventManager eventManager)
          Set INamedGraphEventManager for this container
 void setTransactionManager(ITransactionManager transactionQueueManager)
          Set ITransactionManager for this container
 int size()
          Return number of statements in container
 int size(org.openrdf.model.Resource... context)
          Return number of statements in container
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TransactionContainerProxy

public TransactionContainerProxy(IContainer parentContainer,
                                 ITransactionQueueManager transactionQueueManager)
Create a new TransactionContainerProxy, which wraps an IContainer with a transaction layer

Parameters:
parentContainer - to which a transaction layer is added
transactionQueueManager - transaction layer to add
Method Detail

add

public void add(java.util.Iterator<org.openrdf.model.Statement> statements)
Description copied from interface: IContainer
Add a set of statements from container

Specified by:
add in interface IContainer
Parameters:
statements - statements to add to container

delete

public void delete(java.util.Iterator<org.openrdf.model.Statement> statements)
Description copied from interface: IContainer
Delete a set of statements from container

Specified by:
delete in interface IContainer
Parameters:
statements - statements to delete from container

add

public void add(org.openrdf.model.Resource subj,
                org.openrdf.model.URI pred,
                org.openrdf.model.Value obj,
                org.openrdf.model.Resource context)
Description copied from interface: IContainer
Add a new statement with given subj,pred,obj,context

Specified by:
add in interface IContainer
Parameters:
subj - Subject of statement
pred - Predicate of statement
obj - Object of statement
context - Context of statement

delete

public void delete(org.openrdf.model.Resource subj,
                   org.openrdf.model.URI pred,
                   org.openrdf.model.Value obj,
                   org.openrdf.model.Resource context)
Description copied from interface: IContainer
Delete a statement from container

Specified by:
delete in interface IContainer
Parameters:
subj - Subject resource to match, or wildcard if null
pred - Predicate uri to match, or wildcard if null
obj - Object value to match, or wildcard if null
context - Context values to match, or wildcard if null

add

public void add(org.openrdf.model.Statement... statements)
Description copied from interface: IContainer
Add one or more statements to container

Specified by:
add in interface IContainer
Parameters:
statements - statements to add to container

delete

public void delete(org.openrdf.model.Statement... statements)
Description copied from interface: IContainer
Delete a set of statements from container

Specified by:
delete in interface IContainer
Parameters:
statements - statements to delete from container

clear

public void clear()
Description copied from interface: IContainer
Delete all statements in container

Specified by:
clear in interface IContainer

clear

public void clear(org.openrdf.model.Resource... context)
Description copied from interface: IContainer
Delete all statements in container for given contexts

Specified by:
clear in interface IContainer
Parameters:
context - Contexts to clear from container

close

public void close()
Description copied from interface: IContainer
Disconnect container from its source and close the container Note: Once a container is closed, it is based on the source of the container's data whether or not subsequent calls to connect will return the same data

Specified by:
close in interface IContainer

connect

public void connect()
Description copied from interface: IContainer
Connect container to its source

Specified by:
connect in interface IContainer

contains

public boolean contains(org.openrdf.model.Resource s,
                        org.openrdf.model.URI p,
                        org.openrdf.model.Value o,
                        org.openrdf.model.Resource... context)
Description copied from interface: IContainer
Return true if the container contains atleast 1 statement that matches the pattern of subj,prop,obj,context

Specified by:
contains in interface IContainer
Parameters:
s - Subject resource to match, or wildcard if null
p - Predicate uri to match, or wildcard if null
o - Object value to match, or wildcard if null
context - Context values to match, or wildcard if null
Returns:
true if the container contains atleast 1 statement that matches the pattern of subj,prop,obj

contains

public boolean contains(org.openrdf.model.Statement statement)
Description copied from interface: IContainer
Return true if the container contains atleast 1 statement that matches the statement provided

Specified by:
contains in interface IContainer
Parameters:
statement - Statement to check for existence in container
Returns:
true if the container contains atleast 1 statement that matches the statement provided

find

public info.aduna.collections.iterators.CloseableIterator<org.openrdf.model.Statement> find(org.openrdf.model.Resource s,
                                                                                            org.openrdf.model.URI p,
                                                                                            org.openrdf.model.Value o,
                                                                                            org.openrdf.model.Resource... context)
Description copied from interface: IContainer
Return an iterator over all statements that match the pattern of subj,prop,obj

Specified by:
find in interface IContainer
Parameters:
s - Subject resource to match, or wildcard if null
p - Predicate uri to match, or wildcard if null
o - Object value to match, or wildcard if null
context - Context values to match, or wildcard if null
Returns:
an iterator of all statements that match the pattern of subj,prop,obj,context

executeQuery

public QueryResult executeQuery(java.util.Set<org.openrdf.model.URI> defaultNamedGraphsIn,
                                java.util.Set<org.openrdf.model.URI> namedGraphsIn,
                                java.lang.String query)
                         throws AnzoException
Description copied from interface: IContainer
Execute a SPARQL query against the data within this container

Specified by:
executeQuery in interface IContainer
Parameters:
defaultNamedGraphsIn - Set<URI> of URIs for NamedGraphs that will make up the default graph for this query
namedGraphsIn - Set<URI> of URIs for NamedGraphs that will make up the NamedGraphs for this query
query - SPARQL query string
Returns:
Results of running query
Throws:
AnzoException

getEventManager

public INamedGraphEventManager getEventManager()
Description copied from interface: IContainer
Return INamedGraphEventManager for this container

Specified by:
getEventManager in interface IContainer
Returns:
INamedGraphEventManager for this container

getStatements

public info.aduna.collections.iterators.CloseableIterator<org.openrdf.model.Statement> getStatements()
Description copied from interface: IContainer
Get an iterator over all statements within this container

Specified by:
getStatements in interface IContainer
Returns:
CloseableIterator of all statements within this container

getTransactionManager

public ITransactionManager getTransactionManager()
Description copied from interface: IContainer
Return ITransactionManager for this container

Specified by:
getTransactionManager in interface IContainer
Returns:
ITransactionManager for this container

getURI

public org.openrdf.model.URI getURI()
Description copied from interface: IContainer
Get URI of IContainer

Specified by:
getURI in interface IContainer
Returns:
URI for this container

isClosed

public boolean isClosed()
Description copied from interface: IContainer
Return if container is closed

Specified by:
isClosed in interface IContainer
Returns:
true if container is closed

isConnected

public boolean isConnected()
Description copied from interface: IContainer
Return if the container is connected to its source

Specified by:
isConnected in interface IContainer
Returns:
if the container is connected to its source

isEmpty

public boolean isEmpty()
Description copied from interface: IContainer
Return if container is empty

Specified by:
isEmpty in interface IContainer
Returns:
true if container is empty

isEmpty

public boolean isEmpty(org.openrdf.model.Resource... context)
Description copied from interface: IContainer
Return if container is empty for given contexts

Specified by:
isEmpty in interface IContainer
Parameters:
context - Contexts of statements to count
Returns:
true if container is empty

size

public int size()
Description copied from interface: IContainer
Return number of statements in container

Specified by:
size in interface IContainer
Returns:
number of statements in container

size

public int size(org.openrdf.model.Resource... context)
Description copied from interface: IContainer
Return number of statements in container

Specified by:
size in interface IContainer
Parameters:
context - Contexts of statements to count
Returns:
number of statements in container for given contexts

setEventManager

public void setEventManager(INamedGraphEventManager eventManager)
Description copied from interface: IContainer
Set INamedGraphEventManager for this container

Specified by:
setEventManager in interface IContainer
Parameters:
eventManager - set the Containers eventManaget

setTransactionManager

public void setTransactionManager(ITransactionManager transactionQueueManager)
Description copied from interface: IContainer
Set ITransactionManager for this container

Specified by:
setTransactionManager in interface IContainer
Parameters:
transactionQueueManager - set ITransactionManager for this container

getContexts

public java.util.Collection<org.openrdf.model.URI> getContexts()
Description copied from interface: IContainer
Get the set of Context URIs that are container within this Container

Specified by:
getContexts in interface IContainer
Returns:
the set of Context URIs that are container within this Container


Copyright © 2007 Cambridge Semantics Inc.. All Rights Reserved.