org.apache.tinkerpop.gremlin.process.traversal.traverser

## Class B_O_Traverser<T>

- java.lang.Object
- - org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser<T>
  - - org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser<T>
    - - org.apache.tinkerpop.gremlin.process.traversal.traverser.B_O_Traverser<T>

- All Implemented Interfaces:
    Serializable, Cloneable, Comparable<Traverser<T>>, Traverser<T>, Traverser.Admin<T>, Attachable<T>
  Direct Known Subclasses:
    B_O_S_SE_SL_Traverser

      public class B_O_Traverser<T>
      extends O_Traverser<T>

  Author:
    Marko A. Rodriguez (http://markorodriguez.com)
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser

      `Traverser.Admin<T>`

    - ### Nested classes/interfaces inherited from interface org.apache.tinkerpop.gremlin.structure.util.Attachable

      `Attachable.Exceptions, Attachable.Method`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected long` | `bulk`
    `protected String` | `future`

    - ### Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser

      `tags`

    - ### Fields inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser

      `t`

    - ### Fields inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser.Admin

      `HALT`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `B_O_Traverser()`
    `` | `B_O_Traverser(T t, long initialBulk)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `bulk()` A traverser may represent a grouping of traversers to allow for more efficient data propagation.
    `protected boolean` | `equals(B_O_Traverser other)`
    `boolean` | `equals(Object object)`
    `String` | `getStepId()` Get the step id of where the traverser is located.
    `int` | `hashCode()`
    `void` | `merge(Traverser.Admin<?> other)` When two traversers are have equality with each other, then they can be merged.
    `void` | `setBulk(long count)` Set the number of traversers represented by this traverser.
    `void` | `setStepId(String stepId)` Set the step id of where the traverser is located.

    - ### Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.O_Traverser

      `equals, getTags, split, split`

    - ### Methods inherited from class org.apache.tinkerpop.gremlin.process.traversal.traverser.util.AbstractTraverser

      `addLabels, attach, clone, detach, dropLabels, dropPath, get, getSideEffects, incrLoops, initialiseLoops, keepLabels, loops, loops, path, resetLoops, sack, sack, set, setSideEffects, toString`

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

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

    - ### Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser.Admin

      `isHalted`

    - ### Methods inherited from interface org.apache.tinkerpop.gremlin.process.traversal.Traverser

      `asAdmin, compareTo, path, path, sideEffects, sideEffects`

- - ### Field Detail

    - #### bulk

          protected long bulk

    - #### future

          protected String future

  - ### Constructor Detail

    - #### B_O_Traverser

          protected B_O_Traverser()

    - #### B_O_Traverser

          public B_O_Traverser(T t,
                               long initialBulk)

  - ### Method Detail

    - #### setBulk

          public void setBulk(long count)

      Description copied from interface: `Traverser.Admin`
      Set the number of traversers represented by this traverser.
      Specified by:
        `setBulk` in interface `Traverser.Admin<T>`
      Overrides:
        `setBulk` in class `AbstractTraverser<T>`
      Parameters:
        `count` - the number of traversers

    - #### bulk

          public long bulk()

      Description copied from interface: `Traverser`
      A traverser may represent a grouping of traversers to allow for more efficient data propagation.
      Specified by:
        `bulk` in interface `Traverser<T>`
      Overrides:
        `bulk` in class `AbstractTraverser<T>`
      Returns:
        the number of traversers represented in this traverser.

    - #### merge

          public void merge(Traverser.Admin<?> other)

      Description copied from interface: `Traverser.Admin`
      When two traversers are have equality with each other, then they can be merged. This method is used to merge the traversers into a single traverser. This is used for optimization where instead of enumerating all traversers, they can be counted.
      Specified by:
        `merge` in interface `Traverser.Admin<T>`
      Overrides:
        `merge` in class `O_Traverser<T>`
      Parameters:
        `other` - the other traverser to merge into this traverser. Once merged, the other can be garbage collected.

    - #### getStepId

          public String getStepId()

      Description copied from interface: `Traverser.Admin`
      Get the step id of where the traverser is located. This is typically used in multi-machine systems that require the movement of traversers between different traversal instances.
      Specified by:
        `getStepId` in interface `Traverser.Admin<T>`
      Overrides:
        `getStepId` in class `AbstractTraverser<T>`
      Returns:
        The future step for the traverser

    - #### setStepId

          public void setStepId(String stepId)

      Description copied from interface: `Traverser.Admin`
      Set the step id of where the traverser is located. If the future is `Traverser.Admin.HALT`, then `Traverser.Admin.isHalted()` is true.
      Specified by:
        `setStepId` in interface `Traverser.Admin<T>`
      Overrides:
        `setStepId` in class `AbstractTraverser<T>`
      Parameters:
        `stepId` - The future step of the traverser

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `O_Traverser<T>`

    - #### equals

          protected final boolean equals(B_O_Traverser other)

    - #### equals

          public boolean equals(Object object)

      Overrides:
        `equals` in class `O_Traverser<T>`

Copyright © 2013–2021 Apache Software Foundation. All rights reserved.