com.anasoft.os.daofusion.bitemporal
Interface Bitemporal

All Known Implementing Classes:
BitemporalWrapper

public interface Bitemporal

A bitemporal object. A bitemporal object is essentially a value tracked in two time dimensions:

Tracking information bitemporally allows you to aswer questions along the lines of "On January 2, 1999, what did we think the valid value was for September 1, 1980?".

In most cases, application level should not directly implement this interface, but should instead wrap existing value classes bitemporally using a BitemporalWrapper.

Author:
Erwin Vervaet, Christophe Vanfleteren
See Also:
BitemporalTrace, BitemporalWrapper

Method Summary
 Bitemporal copyWith(org.joda.time.Interval validityInterval)
          Create and return a new bitemporal object representing the same value as this object, but with specified validity.
 void end()
          End the recording interval of this bitemporal object, indicating that it has been superseded by a new object, or is deemed as no longer relevant (i.e. because it was faulty knowledge) and should be "forgotten".
 org.joda.time.Interval getRecordInterval()
          Returns the interval in which this bitemporal object is known.
 org.joda.time.Interval getValidityInterval()
          Returns the interval in which this bitemporal object is valid.
 

Method Detail

getValidityInterval

org.joda.time.Interval getValidityInterval()
Returns the interval in which this bitemporal object is valid.


getRecordInterval

org.joda.time.Interval getRecordInterval()
Returns the interval in which this bitemporal object is known.


end

void end()
End the recording interval of this bitemporal object, indicating that it has been superseded by a new object, or is deemed as no longer relevant (i.e. because it was faulty knowledge) and should be "forgotten".


copyWith

Bitemporal copyWith(org.joda.time.Interval validityInterval)
Create and return a new bitemporal object representing the same value as this object, but with specified validity. The recording interval of the returned object will always be from now on.

Parameters:
validityInterval - Validity interval of the new object.
Returns:
New bitemporal object with the given validity and its value retained from its original.


Copyright © 2008-2009 ANASOFT and contributors. All Rights Reserved.