# Class Timestamp

java.lang.Object
java.security.Timestamp

All Implemented Interfaces:
  `Serializable`

public final class Timestamp extends Object implements Serializable
This class encapsulates information about a signed timestamp. It is immutable. It includes the timestamp's date and time as well as information about the Timestamping Authority (TSA) which generated and signed the timestamp.

Since:
  1.5
See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`Timestamp(Date timestamp, CertPath signerCertPath)`
Constructs a `Timestamp`.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
Tests for equality between the specified object and this `Timestamp`.
`CertPath`
`getSignerCertPath()`
Returns the certificate path for the Timestamping Authority.
`Date`
`getTimestamp()`
Returns the date and time when the `Timestamp` was generated.
`int`
`hashCode()`
Returns the hash code value for this `Timestamp`.
`String`
`toString()`
Returns a string describing this `Timestamp`.

### Methods declared in class java.lang.Object

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

## Constructor Details

### Timestamp

public Timestamp(Date timestamp, CertPath signerCertPath)
Constructs a `Timestamp`.

Parameters:
  `timestamp` - is the timestamp's date and time. It must not be `null`.
  `signerCertPath` - is the TSA's certificate path. It must not be `null`.
Throws:
  `NullPointerException` - if timestamp or signerCertPath is `null`.

## Method Details

### getTimestamp

public Date getTimestamp()
Returns the date and time when the `Timestamp` was generated.

Returns:
  The timestamp's date and time.

### getSignerCertPath

public CertPath getSignerCertPath()
Returns the certificate path for the Timestamping Authority.

Returns:
  The TSA's certificate path.

### hashCode

public int hashCode()
Returns the hash code value for this `Timestamp`. The hash code is generated using the date and time of the `Timestamp` and the TSA's certificate path.

Overrides:
  `hashCode` in class `Object`
Returns:
  a hash code value for this `Timestamp`.
See Also:
  - `Object.equals(java.lang.Object)`
  - `System.identityHashCode(java.lang.Object)`

### equals

public boolean equals(Object obj)
Tests for equality between the specified object and this `Timestamp`. Two timestamps are considered equal if the date and time of their timestamp's and their signer's certificate paths are equal.

Overrides:
  `equals` in class `Object`
Parameters:
  `obj` - the object to test for equality with this `Timestamp`.
Returns:
  `true` if the timestamps are considered equal, `false` otherwise.
See Also:
  - `Object.hashCode()`
  - `HashMap`

### toString

public String toString()
Returns a string describing this `Timestamp`.

Overrides:
  `toString` in class `Object`
Returns:
  A string comprising the date and time of the `Timestamp` and its signer's certificate.