Package org.eclipse.rdf4j.sail.memory.model

## Class MemBNode

- java.lang.Object
- - org.eclipse.rdf4j.model.base.AbstractBNode
  - - org.eclipse.rdf4j.model.impl.SimpleBNode
    - - org.eclipse.rdf4j.sail.memory.model.MemBNode

- All Implemented Interfaces:
    `Serializable`, `BNode`, `Resource`, `Value`, `MemResource`, `MemValue`

      public class MemBNode
      extends SimpleBNode
      implements MemResource

  A MemoryStore-specific extension of BNodeImpl giving it node properties.
  See Also:
    Serialized Form

- - ### Field Summary

    - ### Fields inherited from interface org.eclipse.rdf4j.sail.memory.model.MemValue

      `EMPTY_LIST`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MemBNode​(Object creator, String id)` | Creates a new MemBNode for a bnode ID.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addContextStatement​(MemStatement st)` | Adds a statement to this MemResource's list of statements for which it represents the context.
    `void` | `addObjectStatement​(MemStatement st)` | Adds a statement to this MemValue's list of statements for which it is the object.
    `void` | `addSubjectStatement​(MemStatement st)` | Adds a statement to this MemResource's list of statements for which it is the subject.
    `void` | `cleanSnapshotsFromContextStatements​(int currentSnapshot)` | Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the context.
    `void` | `cleanSnapshotsFromObjectStatements​(int currentSnapshot)` | Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the object.
    `void` | `cleanSnapshotsFromSubjectStatements​(int currentSnapshot)` | Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the subject.
    `int` | `getContextStatementCount()` | Gets the number of statements for which this MemResource represents the context.
    `MemStatementList` | `getContextStatementList()` | Gets the list of statements for which this MemResource represents the context.
    `Object` | `getCreator()` | Returns the object that created this MemValue.
    `int` | `getObjectStatementCount()` | Gets the number of statements for which this MemValue is the object.
    `MemStatementList` | `getObjectStatementList()` | Gets the list of statements for which this MemValue is the object.
    `int` | `getSubjectStatementCount()` | Gets the number of statements for which this MemResource is the subject.
    `MemStatementList` | `getSubjectStatementList()` | Gets the list of statements for which this MemResource is the subject.
    `boolean` | `hasStatements()` | Checks whether this MemValue has any statements.
    `void` | `removeContextStatement​(MemStatement st)` | Removes a statement from this MemResource's list of statements for which it represents the context.
    `void` | `removeObjectStatement​(MemStatement st)` | Removes a statement from this MemValue's list of statements for which it is the object.
    `void` | `removeSubjectStatement​(MemStatement st)` | Removes a statement from this MemResource's list of statements for which it is the subject.

    - ### Methods inherited from class org.eclipse.rdf4j.model.impl.SimpleBNode

      `getID, setID`

    - ### Methods inherited from class org.eclipse.rdf4j.model.base.AbstractBNode

      `equals, hashCode, stringValue, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.eclipse.rdf4j.model.BNode

      `isBNode`

    - ### Methods inherited from interface org.eclipse.rdf4j.model.Resource

      `isResource`

    - ### Methods inherited from interface org.eclipse.rdf4j.model.Value

      `isIRI, isLiteral, isTriple, stringValue`

- - ### Constructor Detail

    - #### MemBNode

          public MemBNode​(Object creator,
                          String id)

      Creates a new MemBNode for a bnode ID.
      Parameters:
        `creator` - The object that is creating this MemBNode.
        `id` - bnode ID.

  - ### Method Detail

    - #### getCreator

          public Object getCreator()

      Description copied from interface: `MemValue`
      Returns the object that created this MemValue. MemValues are only unique within a single repository, but an application could use several repositories at the same time, passing MemValues generated by one Sail to another Sail. In such situations, the MemValue of the first Sail cannot be used by the second Sail.
      Specified by:
        `getCreator` in interface `MemValue`

    - #### hasStatements

          public boolean hasStatements()

      Description copied from interface: `MemValue`
      Checks whether this MemValue has any statements. A MemValue object has statements if there is at least one statement where it is used as the subject, predicate, object or context value.
      Specified by:
        `hasStatements` in interface `MemValue`
      Returns:
        true if the MemValue has statements, false otherwise.

    - #### getSubjectStatementList

          public MemStatementList getSubjectStatementList()

      Description copied from interface: `MemResource`
      Gets the list of statements for which this MemResource is the subject.
      Specified by:
        `getSubjectStatementList` in interface `MemResource`
      Returns:
        a MemStatementList containing the statements.

    - #### getSubjectStatementCount

          public int getSubjectStatementCount()

      Description copied from interface: `MemResource`
      Gets the number of statements for which this MemResource is the subject.
      Specified by:
        `getSubjectStatementCount` in interface `MemResource`
      Returns:
        An integer larger than or equal to 0.

    - #### addSubjectStatement

          public void addSubjectStatement​(MemStatement st)

      Description copied from interface: `MemResource`
      Adds a statement to this MemResource's list of statements for which it is the subject.
      Specified by:
        `addSubjectStatement` in interface `MemResource`

    - #### removeSubjectStatement

          public void removeSubjectStatement​(MemStatement st)

      Description copied from interface: `MemResource`
      Removes a statement from this MemResource's list of statements for which it is the subject.
      Specified by:
        `removeSubjectStatement` in interface `MemResource`

    - #### cleanSnapshotsFromSubjectStatements

          public void cleanSnapshotsFromSubjectStatements​(int currentSnapshot)

      Description copied from interface: `MemResource`
      Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the subject.
      Specified by:
        `cleanSnapshotsFromSubjectStatements` in interface `MemResource`
      Parameters:
        `currentSnapshot` - The current snapshot version.

    - #### getObjectStatementList

          public MemStatementList getObjectStatementList()

      Description copied from interface: `MemValue`
      Gets the list of statements for which this MemValue is the object.
      Specified by:
        `getObjectStatementList` in interface `MemValue`
      Returns:
        A MemStatementList containing the statements.

    - #### getObjectStatementCount

          public int getObjectStatementCount()

      Description copied from interface: `MemValue`
      Gets the number of statements for which this MemValue is the object.
      Specified by:
        `getObjectStatementCount` in interface `MemValue`
      Returns:
        An integer larger than or equal to 0.

    - #### addObjectStatement

          public void addObjectStatement​(MemStatement st)

      Description copied from interface: `MemValue`
      Adds a statement to this MemValue's list of statements for which it is the object.
      Specified by:
        `addObjectStatement` in interface `MemValue`

    - #### removeObjectStatement

          public void removeObjectStatement​(MemStatement st)

      Description copied from interface: `MemValue`
      Removes a statement from this MemValue's list of statements for which it is the object.
      Specified by:
        `removeObjectStatement` in interface `MemValue`

    - #### cleanSnapshotsFromObjectStatements

          public void cleanSnapshotsFromObjectStatements​(int currentSnapshot)

      Description copied from interface: `MemValue`
      Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the object.
      Specified by:
        `cleanSnapshotsFromObjectStatements` in interface `MemValue`
      Parameters:
        `currentSnapshot` - The current snapshot version.

    - #### getContextStatementList

          public MemStatementList getContextStatementList()

      Description copied from interface: `MemResource`
      Gets the list of statements for which this MemResource represents the context.
      Specified by:
        `getContextStatementList` in interface `MemResource`
      Returns:
        a MemStatementList containing the statements.

    - #### getContextStatementCount

          public int getContextStatementCount()

      Description copied from interface: `MemResource`
      Gets the number of statements for which this MemResource represents the context.
      Specified by:
        `getContextStatementCount` in interface `MemResource`
      Returns:
        An integer larger than or equal to 0.

    - #### addContextStatement

          public void addContextStatement​(MemStatement st)

      Description copied from interface: `MemResource`
      Adds a statement to this MemResource's list of statements for which it represents the context.
      Specified by:
        `addContextStatement` in interface `MemResource`

    - #### removeContextStatement

          public void removeContextStatement​(MemStatement st)

      Description copied from interface: `MemResource`
      Removes a statement from this MemResource's list of statements for which it represents the context.
      Specified by:
        `removeContextStatement` in interface `MemResource`

    - #### cleanSnapshotsFromContextStatements

          public void cleanSnapshotsFromContextStatements​(int currentSnapshot)

      Description copied from interface: `MemResource`
      Removes statements from old snapshots (those that have expired at or before the specified snapshot version) from this MemValue's list of statements for which it is the context.
      Specified by:
        `cleanSnapshotsFromContextStatements` in interface `MemResource`
      Parameters:
        `currentSnapshot` - The current snapshot version.