Package org.eclipse.emf.cdo.spi.common.commit

## Class CDOChangeSetSegment

- java.lang.Object
- - org.eclipse.emf.cdo.spi.common.commit.CDOChangeSetSegment

- All Implemented Interfaces:
    `CDOBranchPoint`, `CDOBranchProvider`, `CDOTimeProvider`

      public class CDOChangeSetSegment
      extends java.lang.Object
      implements CDOBranchPoint

  If the meaning of this type isn't clear, there really should be more of a description here...
  Since:
    3.0
  Author:
    Eike Stepper
  No Extend
    This class is not intended to be subclassed by clients.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `CDOChangeSetSegment.Handler` |

  - ### Field Summary

    - ### Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint

      `INVALID_DATE, UNSPECIFIED_DATE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CDOChangeSetSegment​(CDOBranch branch, long timeStamp, long endTime)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `contains​(CDOBranchPoint branchPoint)` |
    `static boolean` | `contains​(CDOChangeSetSegment[] segments, CDOBranchPoint branchPoint)` |
    `static CDOChangeSetSegment[]` | `createFrom​(long startTime, CDOBranchPoint endPoint)` |
    `static CDOChangeSetSegment[]` | `createFrom​(CDOBranchPoint startPoint, CDOBranchPoint endPoint)` |
    `CDOBranch` | `getBranch()` | Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.
    `CDOBranchPoint` | `getEndPoint()` |
    `long` | `getEndTime()` |
    `long` | `getTimeStamp()` | Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.
    `static void` | `handleSegments​(long startTime, CDOBranchPoint endPoint, CDOChangeSetSegment.Handler handler)` | Calls the given `handler` for all `segments` from the given `endPoint` up to the given `startTime`.
    `static void` | `handleSegments​(CDOBranchPoint startPoint, CDOBranchPoint endPoint, CDOChangeSetSegment.Handler handler)` | Calls the given `handler` for all `segments` from the given `endPoint` up to the given `startPoint`.
    `static void` | `handleSegments​(CDOBranchPoint endPoint, CDOChangeSetSegment.Handler handler)` | Calls the given `handler` for all `segments` from the given `endPoint` up to the repository creation point.
    `boolean` | `isOpenEnded()` |
    `java.lang.String` | `toString()` |

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

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

- - ### Constructor Detail

    - #### CDOChangeSetSegment

          public CDOChangeSetSegment​(CDOBranch branch,
                                     long timeStamp,
                                     long endTime)

  - ### Method Detail

    - #### getBranch

          public CDOBranch getBranch()

      Description copied from interface: `CDOBranchPoint`
      Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.
      Specified by:
        `getBranch` in interface `CDOBranchPoint`
      Specified by:
        `getBranch` in interface `CDOBranchProvider`

    - #### getTimeStamp

          public long getTimeStamp()

      Description copied from interface: `CDOBranchPoint`
      Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.
      Specified by:
        `getTimeStamp` in interface `CDOBranchPoint`
      Specified by:
        `getTimeStamp` in interface `CDOTimeProvider`

    - #### getEndTime

          public long getEndTime()

    - #### getEndPoint

          public CDOBranchPoint getEndPoint()

    - #### isOpenEnded

          public boolean isOpenEnded()

    - #### contains

          public boolean contains​(CDOBranchPoint branchPoint)

      Since:
        4.6

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### handleSegments

          public static void handleSegments​(CDOBranchPoint endPoint,
                                            CDOChangeSetSegment.Handler handler)

      Calls the given `handler` for all `segments` from the given `endPoint` up to the repository creation point.
      Since:
        4.6

    - #### handleSegments

          public static void handleSegments​(long startTime,
                                            CDOBranchPoint endPoint,
                                            CDOChangeSetSegment.Handler handler)

      Calls the given `handler` for all `segments` from the given `endPoint` up to the given `startTime`.
      Since:
        4.6

    - #### handleSegments

          public static void handleSegments​(CDOBranchPoint startPoint,
                                            CDOBranchPoint endPoint,
                                            CDOChangeSetSegment.Handler handler)

      Calls the given `handler` for all `segments` from the given `endPoint` up to the given `startPoint`.
      Since:
        4.6

    - #### createFrom

          public static CDOChangeSetSegment[] createFrom​(long startTime,
                                                         CDOBranchPoint endPoint)

      Since:
        4.6

    - #### createFrom

          public static CDOChangeSetSegment[] createFrom​(CDOBranchPoint startPoint,
                                                         CDOBranchPoint endPoint)

    - #### contains

          public static boolean contains​(CDOChangeSetSegment[] segments,
                                         CDOBranchPoint branchPoint)

      Since:
        4.6