public class AnnotationRevisionMetadata<N extends Number & Comparable<N>> extends Object implements RevisionMetadata<N>
RevisionMetadata
implementation that inspects the given object for fields with the configured annotations
and returns the field's values on calls to getRevisionDate()
and getRevisionNumber()
.Constructor and Description |
---|
AnnotationRevisionMetadata(Object entity,
Class<? extends Annotation> revisionNumberAnnotation,
Class<? extends Annotation> revisionTimeStampAnnotation)
Creates a new
AnnotationRevisionMetadata inspecting the given entity for the given annotations. |
Modifier and Type | Method and Description |
---|---|
<T> T |
getDelegate()
Returns the underlying revision metadata which might provider more detailed implementation specific information.
|
Optional<LocalDateTime> |
getRevisionDate()
Returns the date of the revision.
|
Optional<N> |
getRevisionNumber()
Returns the revision number of the revision.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getRequiredRevisionDate, getRequiredRevisionNumber
public AnnotationRevisionMetadata(Object entity, Class<? extends Annotation> revisionNumberAnnotation, Class<? extends Annotation> revisionTimeStampAnnotation)
AnnotationRevisionMetadata
inspecting the given entity for the given annotations. If no
annotations will be provided these values will not be looked up from the entity and return null.entity
- must not be null.revisionNumberAnnotation
- must not be null.revisionTimeStampAnnotation
- must not be null.public Optional<N> getRevisionNumber()
RevisionMetadata
getRevisionNumber
in interface RevisionMetadata<N extends Number & Comparable<N>>
public Optional<LocalDateTime> getRevisionDate()
RevisionMetadata
getRevisionDate
in interface RevisionMetadata<N extends Number & Comparable<N>>
public <T> T getDelegate()
RevisionMetadata
getDelegate
in interface RevisionMetadata<N extends Number & Comparable<N>>
Copyright © 2011-2016–2017 Pivotal Software, Inc.. All rights reserved.