Class DatasetGraphDiff

java.lang.Object
org.apache.jena.sparql.core.DatasetGraphBase
org.aksw.jenax.arq.dataset.diff.DatasetGraphDiff
All Implemented Interfaces:
org.apache.jena.atlas.lib.Closeable, org.apache.jena.sparql.core.DatasetGraph, org.apache.jena.sparql.core.Transactional

public class DatasetGraphDiff extends org.apache.jena.sparql.core.DatasetGraphBase
A DatasetGraph that tracks insertions / deletions to a base graph in separate DatasetGraphs. Similar to Delta which however is for Graphs. Supports transactions on a best-effort basis: Invoking a transaction operation (begin, commit, rollback, end) on this class also invokes that operation on each involved component.
Author:
raven
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.jena.sparql.core.Transactional

    org.apache.jena.sparql.core.Transactional.Promote
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.apache.jena.sparql.core.DatasetGraph
     
    protected TransactionalSet<org.apache.jena.graph.Node>
     
    protected org.apache.jena.sparql.core.DatasetGraph
     
    protected org.apache.jena.sparql.core.GraphView
     
    protected Map<org.apache.jena.graph.Node,org.apache.jena.sparql.core.GraphView>
     
    protected org.apache.jena.sparql.core.DatasetGraph
     
    protected TransactionalSet<org.apache.jena.graph.Node>
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    DatasetGraphDiff(org.apache.jena.sparql.core.DatasetGraph base, org.apache.jena.sparql.core.DatasetGraph added, org.apache.jena.sparql.core.DatasetGraph removed, TransactionalSet<org.apache.jena.graph.Node> removedGraphs, TransactionalSet<org.apache.jena.graph.Node> addedGraphs)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     
    void
     
    void
    add(org.apache.jena.sparql.core.Quad quad)
     
    void
    addGraph(org.apache.jena.graph.Node graphNode, org.apache.jena.graph.Graph graph)
     
    void
    begin(org.apache.jena.query.ReadWrite mode)
     
    void
    begin(org.apache.jena.query.TxnType type)
     
    void
     
    void
     
    boolean
    contains(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
     
    createNonTxn(org.apache.jena.sparql.core.DatasetGraph base)
     
    createTxn(org.apache.jena.sparql.core.DatasetGraph base)
     
    void
    delete(org.apache.jena.sparql.core.Quad quad)
     
    void
    end()
     
    Iterator<org.apache.jena.sparql.core.Quad>
    find(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
     
    Iterator<org.apache.jena.sparql.core.Quad>
    findNG(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
     
    org.apache.jena.sparql.core.DatasetGraph
     
    Set<org.apache.jena.graph.Node>
     
    org.apache.jena.sparql.core.DatasetGraph
     
    org.apache.jena.sparql.core.GraphView
     
    org.apache.jena.sparql.core.GraphView
    getGraph(org.apache.jena.graph.Node graphNode)
     
    org.apache.jena.sparql.core.DatasetGraph
     
    Set<org.apache.jena.graph.Node>
     
    boolean
     
    Iterator<org.apache.jena.graph.Node>
     
    void
     
    static <T> void
    mutate(org.apache.jena.sparql.core.Transactional target, Consumer<T> mutator, T payload)
     
    org.apache.jena.riot.system.PrefixMap
    TODO Consider a PrefixMapDiff/Delta object - for now we just return the base prefixes
    boolean
    promote(org.apache.jena.sparql.core.Transactional.Promote mode)
     
    void
    removeGraph(org.apache.jena.graph.Node graphNode)
     
    boolean
     
    boolean
     
    org.apache.jena.query.ReadWrite
     
    org.apache.jena.query.TxnType
     

    Methods inherited from class org.apache.jena.sparql.core.DatasetGraphBase

    add, clear, close, contains, containsGraph, delete, deleteAny, deleteAny, find, find, getContext, getLock, getUnionGraph, isEmpty, isWildcard, size, toString, unsupportedMethod

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.jena.sparql.core.DatasetGraph

    addAll, stream, stream

    Methods inherited from interface org.apache.jena.sparql.core.Transactional

    begin, calc, calculate, calculateRead, calculateWrite, exec, execute, executeRead, executeWrite, promote
  • Field Details

    • base

      protected org.apache.jena.sparql.core.DatasetGraph base
    • added

      protected org.apache.jena.sparql.core.DatasetGraph added
    • removed

      protected org.apache.jena.sparql.core.DatasetGraph removed
    • removedGraphs

      protected TransactionalSet<org.apache.jena.graph.Node> removedGraphs
    • addedGraphs

      protected TransactionalSet<org.apache.jena.graph.Node> addedGraphs
    • defaultGraphViewCache

      protected org.apache.jena.sparql.core.GraphView defaultGraphViewCache
    • namedGraphViewCache

      protected Map<org.apache.jena.graph.Node,org.apache.jena.sparql.core.GraphView> namedGraphViewCache
  • Constructor Details

    • DatasetGraphDiff

      public DatasetGraphDiff(org.apache.jena.sparql.core.DatasetGraph base, org.apache.jena.sparql.core.DatasetGraph added, org.apache.jena.sparql.core.DatasetGraph removed, TransactionalSet<org.apache.jena.graph.Node> removedGraphs, TransactionalSet<org.apache.jena.graph.Node> addedGraphs)
  • Method Details

    • createNonTxn

      public static DatasetGraphDiff createNonTxn(org.apache.jena.sparql.core.DatasetGraph base)
    • createTxn

      public static DatasetGraphDiff createTxn(org.apache.jena.sparql.core.DatasetGraph base)
    • clearChanges

      public void clearChanges()
    • getBase

      public org.apache.jena.sparql.core.DatasetGraph getBase()
    • getAdded

      public org.apache.jena.sparql.core.DatasetGraph getAdded()
    • getRemoved

      public org.apache.jena.sparql.core.DatasetGraph getRemoved()
    • getRemovedGraphs

      public Set<org.apache.jena.graph.Node> getRemovedGraphs()
    • getAddedGraphs

      public Set<org.apache.jena.graph.Node> getAddedGraphs()
    • contains

      public boolean contains(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
      Specified by:
      contains in interface org.apache.jena.sparql.core.DatasetGraph
      Overrides:
      contains in class org.apache.jena.sparql.core.DatasetGraphBase
    • find

      public Iterator<org.apache.jena.sparql.core.Quad> find(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
    • findNG

      public Iterator<org.apache.jena.sparql.core.Quad> findNG(org.apache.jena.graph.Node g, org.apache.jena.graph.Node s, org.apache.jena.graph.Node p, org.apache.jena.graph.Node o)
    • add

      public void add(org.apache.jena.sparql.core.Quad quad)
      Specified by:
      add in interface org.apache.jena.sparql.core.DatasetGraph
      Overrides:
      add in class org.apache.jena.sparql.core.DatasetGraphBase
    • delete

      public void delete(org.apache.jena.sparql.core.Quad quad)
      Specified by:
      delete in interface org.apache.jena.sparql.core.DatasetGraph
      Overrides:
      delete in class org.apache.jena.sparql.core.DatasetGraphBase
    • getDefaultGraph

      public org.apache.jena.sparql.core.GraphView getDefaultGraph()
      Specified by:
      getDefaultGraph in interface org.apache.jena.sparql.core.DatasetGraph
      Specified by:
      getDefaultGraph in class org.apache.jena.sparql.core.DatasetGraphBase
    • getGraph

      public org.apache.jena.sparql.core.GraphView getGraph(org.apache.jena.graph.Node graphNode)
      Specified by:
      getGraph in interface org.apache.jena.sparql.core.DatasetGraph
      Specified by:
      getGraph in class org.apache.jena.sparql.core.DatasetGraphBase
    • listGraphNodes

      public Iterator<org.apache.jena.graph.Node> listGraphNodes()
    • addGraph

      public void addGraph(org.apache.jena.graph.Node graphNode, org.apache.jena.graph.Graph graph)
      Specified by:
      addGraph in interface org.apache.jena.sparql.core.DatasetGraph
      Specified by:
      addGraph in class org.apache.jena.sparql.core.DatasetGraphBase
    • removeGraph

      public void removeGraph(org.apache.jena.graph.Node graphNode)
      Specified by:
      removeGraph in interface org.apache.jena.sparql.core.DatasetGraph
      Specified by:
      removeGraph in class org.apache.jena.sparql.core.DatasetGraphBase
    • materialize

      public void materialize()
    • _materialize

      protected void _materialize()
    • supportsTransactions

      public boolean supportsTransactions()
    • supportsTransactionAbort

      public boolean supportsTransactionAbort()
    • abort

      public void abort()
    • begin

      public void begin(org.apache.jena.query.ReadWrite mode)
    • commit

      public void commit()
    • end

      public void end()
    • isInTransaction

      public boolean isInTransaction()
    • begin

      public void begin(org.apache.jena.query.TxnType type)
    • promote

      public boolean promote(org.apache.jena.sparql.core.Transactional.Promote mode)
    • transactionMode

      public org.apache.jena.query.ReadWrite transactionMode()
    • transactionType

      public org.apache.jena.query.TxnType transactionType()
    • mutate

      public static <T> void mutate(org.apache.jena.sparql.core.Transactional target, Consumer<T> mutator, T payload)
    • prefixes

      public org.apache.jena.riot.system.PrefixMap prefixes()
      TODO Consider a PrefixMapDiff/Delta object - for now we just return the base prefixes