com.amazon.redshift.replication

## Class LogSequenceNumber

- java.lang.Object
- - com.amazon.redshift.replication.LogSequenceNumber

All Implemented Interfaces:
  Comparable<LogSequenceNumber>

    public final class LogSequenceNumber
    extends Object
    implements Comparable<LogSequenceNumber>

LSN (Log Sequence Number) data which is a pointer to a location in the XLOG.

### Field Summary

Fields
`static LogSequenceNumber` `INVALID_LSN` Zero is used indicate an invalid pointer.

### Method Summary

Methods
`long` `asLong()`
`String` `asString()`
`int` `compareTo(LogSequenceNumber o)`
`boolean` `equals(Object o)`
`int` `hashCode()`
`String` `toString()`
`static LogSequenceNumber` `valueOf(long value)`
`static LogSequenceNumber` `valueOf(String strValue)` Create LSN instance by string represent LSN.

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

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

### Field Detail

#### INVALID_LSN

    public static final LogSequenceNumber INVALID_LSN

Zero is used indicate an invalid pointer. Bootstrap skips the first possible WAL segment, initializing the first WAL page at XLOG_SEG_SIZE, so no XLOG record can begin at zero.

### Method Detail

#### valueOf

    public static LogSequenceNumber valueOf(long value)

Parameters:
  `value` - numeric represent position in the write-ahead log stream
Returns:
  not null LSN instance

#### valueOf

    public static LogSequenceNumber valueOf(String strValue)

Create LSN instance by string represent LSN.

Parameters:
  `strValue` - not null string as two hexadecimal numbers of up to 8 digits each, separated by a slash. For example `16/3002D50`, `0/15D68C50`
Returns:
  not null LSN instance where if specified string represent have not valid form `INVALID_LSN`

#### asLong

    public long asLong()

Returns:
  Long represent position in the write-ahead log stream

#### asString

    public String asString()

Returns:
  String represent position in the write-ahead log stream as two hexadecimal numbers of up to 8 digits each, separated by a slash. For example `16/3002D50`, `0/15D68C50`

#### equals

    public boolean equals(Object o)

Overrides:
  `equals` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### compareTo

    public int compareTo(LogSequenceNumber o)

Specified by:
  `compareTo` in interface `Comparable<LogSequenceNumber>`