Class CoreGraph

java.lang.Object
org.nuxeo.ecm.platform.relations.CoreGraph
All Implemented Interfaces:
Serializable, Graph

public class CoreGraph extends Object implements Graph
Relation graph implementation delegating to the core.
See Also:
  • Field Details

  • Constructor Details

    • CoreGraph

      public CoreGraph(CoreSession session)
      A graph with this base session. An unrestricted session will be opened based on it.
  • Method Details

    • setDescription

      public void setDescription(GraphDescription graphDescription)
      Description copied from interface: Graph
      Sets the graph description.
      Specified by:
      setDescription in interface Graph
    • setOptions

      protected void setOptions(Map<String,String> options)
    • getNamespaces

      public Map<String,String> getNamespaces()
      Description copied from interface: Graph
      Returns namespaces for the graph.

      Namespaces are prefix/namespace bindings, as rdf for http://www.w3.org/1999/02/22-rdf-syntax-ns#.

      Specified by:
      getNamespaces in interface Graph
      Returns:
      namespaces map of namespace bindings for the graph
    • size

      public Long size()
      Description copied from interface: Graph
      Returns the number of statements in the graph.
      Specified by:
      size in interface Graph
      Returns:
      number of statements as a Long
    • clear

      public void clear()
      Description copied from interface: Graph
      Clears the graph, removing all statements in it.
      Specified by:
      clear in interface Graph
    • add

      public void add(Statement statement)
      Description copied from interface: Graph
      Adds the statement object to the graph.
      Specified by:
      add in interface Graph
      Parameters:
      statement - statement to add
    • add

      public void add(List<Statement> statements)
      Description copied from interface: Graph
      Adds given list of Statement objects to the graph.
      Specified by:
      add in interface Graph
      Parameters:
      statements - list of Statement instances to add
    • remove

      public void remove(Statement statement)
      Description copied from interface: Graph
      Removes the statement object from the graph.
      Specified by:
      remove in interface Graph
      Parameters:
      statement - statement to remove
    • remove

      public void remove(List<Statement> statements)
      Description copied from interface: Graph
      Removes given list of Statement objects from the graph.
      Specified by:
      remove in interface Graph
      Parameters:
      statements - List of Statement instances to remove
    • getStatements

      public List<Statement> getStatements()
      Description copied from interface: Graph
      Returns all statements in the graph.
      Specified by:
      getStatements in interface Graph
      Returns:
      list of Statement instances
    • getStatements

      public List<Statement> getStatements(Node subject, Node predicate, Node object)
      Description copied from interface: Graph
      Returns all statements in the graph matching the pattern.
      Specified by:
      getStatements in interface Graph
      Returns:
      list of Statement instances matching the pattern
    • getStatements

      public List<Statement> getStatements(Statement statement)
      Description copied from interface: Graph
      Returns all statements in the graph matching the pattern.
      Specified by:
      getStatements in interface Graph
      Parameters:
      statement - pattern to match, can hold null nodes as wildcards
      Returns:
      list of Statement instances matching the pattern
    • getSubjects

      public List<Node> getSubjects(Node predicate, Node object)
      Description copied from interface: Graph
      Get items matching the statement pattern (null, predicate, object).
      Specified by:
      getSubjects in interface Graph
      Parameters:
      predicate - predicate pattern, null accepted
      object - object pattern, null accepted
      Returns:
      list of subjects
    • getPredicates

      public List<Node> getPredicates(Node subject, Node object)
      Description copied from interface: Graph
      Gets items matching the statement pattern (subject, null, object).
      Specified by:
      getPredicates in interface Graph
      Parameters:
      subject - subject pattern, null accepted
      object - object pattern, null accepted
      Returns:
      list of predicates
    • getObjects

      public List<Node> getObjects(Node subject, Node predicate)
      Description copied from interface: Graph
      Gets items matching the statement pattern (subject, predicate, null).
      Specified by:
      getObjects in interface Graph
      Parameters:
      subject - subject pattern, null accepted
      predicate - predicate pattern, null accepted
      Returns:
      list of node objects
    • hasStatement

      public boolean hasStatement(Statement statement)
      Description copied from interface: Graph
      Returns true if given statement pattern is in the graph.
      Specified by:
      hasStatement in interface Graph
      Parameters:
      statement - statement pattern, can use null as wild cards
      Returns:
      true or false
    • hasResource

      public boolean hasResource(Resource resource)
      Description copied from interface: Graph
      Returns true if given resource appears in any statement of the graph.
      Specified by:
      hasResource in interface Graph
      Returns:
      true or false
    • query

      public QueryResult query(String queryString, String language, String baseURI)
      Description copied from interface: Graph
      Query the graph using a base URI.
      Specified by:
      query in interface Graph
      Parameters:
      queryString - the query string
      language - the query language (sparql, rdql,...)
      baseURI - the base URI to use for query
      Returns:
      QueryResult instance
    • queryCount

      public int queryCount(String queryString, String language, String baseURI)
      Description copied from interface: Graph
      Counts the number of results of a query.
      Specified by:
      queryCount in interface Graph
      Parameters:
      queryString - the query string
      language - the query language (sparql, rdql,...)
      baseURI - the base URI to use for query
      Returns:
      the count
    • read

      public boolean read(String path, String lang, String base)
      Description copied from interface: Graph
      Parses source into the graph.
      Specified by:
      read in interface Graph
      Parameters:
      path - path on file system where to take the serialization file
      lang - format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".
      base - base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.
      Returns:
      true on success, else false
    • write

      public boolean write(String path, String lang, String base)
      Description copied from interface: Graph
      Serializes graph.
      Specified by:
      write in interface Graph
      Parameters:
      path - path on file system where to put the serialization file
      lang - format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".
      base - base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.
      Returns:
      true on success, else false
    • read

      public boolean read(InputStream in, String lang, String base)
      Description copied from interface: Graph
      Parses source into the graph.
      Specified by:
      read in interface Graph
      Parameters:
      in - input stream
      lang - format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".
      base - base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.
      Returns:
      true on success, else false
    • write

      public boolean write(OutputStream out, String lang, String base)
      Description copied from interface: Graph
      Serializes graph.
      Specified by:
      write in interface Graph
      Parameters:
      out - output stream
      lang - format for the input serialization, may be "RDF/XML", "RDF/XML-ABBREV", "N-TRIPLE" and "N3". The default value, represented by null, is "RDF/XML".
      base - base uri to be used when converting relative uris to absolute uris, may be null. If set to "", allows relative uris to be used in the model.
      Returns:
      true on success, else false
    • getDefaultRepositoryName

      protected static String getDefaultRepositoryName()
    • whereBuilder

      protected String whereBuilder(String query, Statement statement)
    • getNodeAsString

      protected static CoreGraph.NodeAsString getNodeAsString(Node node)
    • localNameToId

      protected static String localNameToId(String localName)
    • getAuthor

      protected static String getAuthor(Statement statement)
    • setAuthor

      protected static void setAuthor(Statement statement, String author)
    • getCreationDate

      protected static Date getCreationDate(Statement statement)
    • setCreationDate

      protected static void setCreationDate(Statement statement, Calendar created)
    • getModificationDate

      protected static Date getModificationDate(Statement statement)
    • setModificationDate

      protected static void setModificationDate(Statement statement, Calendar modified)
    • getComment

      protected static String getComment(Statement statement)
    • setComment

      protected static void setComment(Statement statement, String comment)
    • getStringProperty

      protected static String getStringProperty(Statement statement, Resource prop)
    • setStringProperty

      protected static void setStringProperty(Statement statement, Resource prop, String string)
    • getDateProperty

      protected static Date getDateProperty(Statement statement, Resource prop)
    • setDateProperty

      protected static void setDateProperty(Statement statement, Resource prop, Calendar date)