Interface SailSink

  • All Superinterfaces:
    AutoCloseable, SailClosable
    All Known Implementing Classes:
    Changeset

    public interface SailSink
    extends SailClosable
    A mutable source of RDF graphs. The life cycle follows that of a write operation.
    Author:
    James Leigh
    • Method Detail

      • setNamespace

        void setNamespace​(String prefix,
                          String name)
                   throws SailException
        Sets the prefix for a namespace.
        Parameters:
        prefix - The new prefix, or an empty string in case of the default namespace.
        name - The namespace name that the prefix maps to.
        Throws:
        SailException - If the Sail object encountered an error or unexpected situation internally.
        NullPointerException - In case prefix or name is null.
      • removeNamespace

        void removeNamespace​(String prefix)
                      throws SailException
        Removes a namespace declaration by removing the association between a prefix and a namespace name.
        Parameters:
        prefix - The namespace prefix, or an empty string in case of the default namespace.
        Throws:
        SailException
        NullPointerException - In case prefix is null.
      • clear

        void clear​(Resource... contexts)
            throws SailException
        Removes all statements from the specified/all contexts. If no contexts are specified the method operates on the entire repository.
        Parameters:
        contexts - The context(s) from which to remove the statements. Note that this parameter is a vararg and as such is optional. If no contexts are specified the method operates on the entire repository. A null value can be used to match context-less statements.
        Throws:
        SailException - If the statements could not be removed.
      • observe

        void observe​(Resource subj,
                     IRI pred,
                     Value obj,
                     Resource... contexts)
              throws SailException
        Called to indicate matching statements have been observed and must not change their state until after this SailSink is committed, iff this was opened in an isolation level compatible with IsolationLevels.SERIALIZABLE.
        Parameters:
        subj - A Resource specifying the subject, or null for a wildcard.
        pred - A IRI specifying the predicate, or null for a wildcard.
        obj - A Value specifying the object, or null for a wildcard.
        contexts - The context(s) of the observed statements. Note that this parameter is a vararg and as such is optional. If no contexts are supplied the method operates on all contexts.
        Throws:
        SailException - If the triple source failed to observe these statements.
      • observe

        default void observe​(Resource subj,
                             IRI pred,
                             Value obj,
                             Resource context)
                      throws SailException
        Called to indicate matching statements have been observed and must not change their state until after this SailSink is committed, iff this was opened in an isolation level compatible with IsolationLevels.SERIALIZABLE.
        Parameters:
        subj - A Resource specifying the subject, or null for a wildcard.
        pred - A IRI specifying the predicate, or null for a wildcard.
        obj - A Value specifying the object, or null for a wildcard.
        context - The context of the observed statements.
        Throws:
        SailException - If the triple source failed to observe these statements.
      • approve

        void approve​(Resource subj,
                     IRI pred,
                     Value obj,
                     Resource ctx)
              throws SailException
        Adds a statement to the store.
        Parameters:
        subj - The subject of the statement to add.
        pred - The predicate of the statement to add.
        obj - The object of the statement to add.
        ctx - The context to add the statement to.
        Throws:
        SailException - If the statement could not be added, for example because no transaction is active.
      • approve

        default void approve​(Statement statement)
                      throws SailException
        Adds a statement to the store.
        Parameters:
        statement - The statement to add.
        Throws:
        SailException - If the statement could not be added, for example because no transaction is active.
      • deprecate

        @Deprecated
        default void deprecate​(Resource subj,
                               IRI pred,
                               Value obj,
                               Resource ctx)
                        throws SailException
        Deprecated.
        Removes a statement with the specified subject, predicate, object, and context. All four parameters may be non-null.

        Deprecated since 3.1.0 2019.

        Parameters:
        subj - The subject of the statement that should be removed
        pred - The predicate of the statement that should be removed
        obj - The object of the statement that should be removed
        ctx - The context from which to remove the statement
        Throws:
        SailException - If the statement could not be removed, for example because no transaction is active.
      • deprecate

        void deprecate​(Statement statement)
                throws SailException
        Removes a statement.
        Parameters:
        statement - The statement that should be removed
        Throws:
        SailException - If the statement could not be removed, for example because no transaction is active.
      • deprecateByQuery

        default boolean deprecateByQuery​(Resource subj,
                                         IRI pred,
                                         Value obj,
                                         Resource[] contexts)
        Removes all statements with the specified subject, predicate, object, and context. All four parameters may be null.
        Throws:
        SailException - If statements could not be removed, for example because no transaction is active.
      • supportsDeprecateByQuery

        default boolean supportsDeprecateByQuery()
      • deprecateAll

        default void deprecateAll​(Set<Statement> deprecated)