Skip navigation links

Oracle Role Manager Java API Reference
10g (10.1.4)
E12031-02


oracle.iam.rm.temporal
Interface TemporalObject


public interface TemporalObject

A representation of an object with both value and transaction histories. <p/> A temporal object has one or more identifying, immutable, pantemporal attributes. A temporal object has zero or more temporal attributes. A temporal object has zero or more relative objects.


Method Summary
 void delete(oracle.iam.rm.util.DateTime valueTime)
          Makes this object ineffective at the provided value time.
 void delete(oracle.iam.rm.util.DateTime valueTime, boolean cascade)
          Makes this object ineffective at the provided value time.
 AttributeChangeSet[] getAttributeChangeSets()
          Gets all the attribute changes for this object within this transaction grouped by value time.
 java.lang.Object getAttributeForTime(java.lang.String attributeKey, oracle.iam.rm.util.DateTime valueTime)
          Gets an attribute value for the provided value time.
 AttributeSet getAttributeSetForTime(oracle.iam.rm.util.DateTime valueTime)
          Gets the AttributeSet for the provided value time.
 java.util.Map<java.lang.String,? extends java.lang.Object> getAttributesForTime(oracle.iam.rm.util.DateTime valueTime)
          Gets all of the values for the provided value time.
 java.lang.Object getIdentifyingAttributeValue(java.lang.String attributeKey)
          Gets the value for the specified identifying attribute.
 TemporalObject getMixin(java.lang.String mixinType, oracle.iam.rm.util.DateTime valueTime)
          Gets the TemporalObject that represents the mixin type.
 ObjectKey getObjectKey()
          Gets the pantemporal identification object for this object.
 ObjectType getObjectType()
          Gets the ObjectType that defines this object.
 long getVersion()
          Gets the current version of the object.
 boolean isEditable()
          Determines whether this object is editable.
 boolean isEffective(oracle.iam.rm.util.DateTime valueTime)
          Determines whether the object is effective at the time specified.
 void makeReadConsistent()
          Marks this object to act in a "read consistent" fashion so that if it is changed in another transaction an appropriate constraint violation is thrown.
 AttributeChangeSet setAttributeValues(java.util.Map<java.lang.String,java.lang.Object> attributeValues, oracle.iam.rm.util.DateTime startTime)
          Sets a collection of attribute values to be effective as of the specified time.
 void updateVersion(TemporalObject temporalObject)
          Updates the version of this object based on its equivalent from the system (read-only) session.

 

Method Detail

getObjectKey

ObjectKey getObjectKey()
Gets the pantemporal identification object for this object.
Returns:
ObjectKey identifying this object

getAttributeSetForTime

AttributeSet getAttributeSetForTime(oracle.iam.rm.util.DateTime valueTime)
Gets the AttributeSet for the provided value time.
Parameters:
valueTime - value time for this AttributeSet to refer to
Returns:
AttributeSet

isEditable

boolean isEditable()
Determines whether this object is editable.
Returns:
Boolean true if this object is editable, otherwise false.

setAttributeValues

AttributeChangeSet setAttributeValues(java.util.Map<java.lang.String,java.lang.Object> attributeValues,
                                      oracle.iam.rm.util.DateTime startTime)
                                      throws TemporalException
Sets a collection of attribute values to be effective as of the specified time.
Parameters:
attributeValues - names/values to set
startTime - value time for the attributes
Returns:
AttributeChangeSet representing the operation
Throws:
TemporalException - if the object is not editable

getAttributeChangeSets

AttributeChangeSet[] getAttributeChangeSets()
Gets all the attribute changes for this object within this transaction grouped by value time.
Returns:
Array of attribute change sets

getObjectType

ObjectType getObjectType()
Gets the ObjectType that defines this object.
Returns:
ObjectType that defines this object.

getIdentifyingAttributeValue

java.lang.Object getIdentifyingAttributeValue(java.lang.String attributeKey)
Gets the value for the specified identifying attribute.
Parameters:
attributeKey - key of the attribute to return Object representing value of the specified attribute key
Returns:
Object representing value.

getAttributesForTime

java.util.Map<java.lang.String,? extends java.lang.Object> getAttributesForTime(oracle.iam.rm.util.DateTime valueTime)
Gets all of the values for the provided value time.
Parameters:
valueTime - time for this set of attributes to refer to
Returns:
Map of values representing attributes for the specified time.

getAttributeForTime

java.lang.Object getAttributeForTime(java.lang.String attributeKey,
                                     oracle.iam.rm.util.DateTime valueTime)
Gets an attribute value for the provided value time.
Parameters:
attributeKey - key of the attribute to get
valueTime - value time for this set of attributes
Returns:
Object representing value.

delete

void delete(oracle.iam.rm.util.DateTime valueTime)
Makes this object ineffective at the provided value time.
Parameters:
valueTime - value time at which this object should be made ineffective

delete

void delete(oracle.iam.rm.util.DateTime valueTime,
            boolean cascade)
Makes this object ineffective at the provided value time. Forces a cascade action.
Parameters:
valueTime - value time at which this object should be made ineffective

makeReadConsistent

void makeReadConsistent()
Marks this object to act in a "read consistent" fashion so that if it is changed in another transaction an appropriate constraint violation is thrown.
Throws:
TemporalException - if this object is not editable or marking it "read consistent" fails

updateVersion

void updateVersion(TemporalObject temporalObject)
Updates the version of this object based on its equivalent from the system (read-only) session.
Parameters:
temporalObject - version of this object from the system (read-only) session
Throws:
java.lang.IllegalStateException - if the object is not editable and not within a merge handler
java.lang.IllegalArgumentException - if the temporal object provided is not the same as the current object or not from a system (read-only) session

getVersion

long getVersion()
Gets the current version of the object.
Returns:
long representing the current version of this object.

getMixin

TemporalObject getMixin(java.lang.String mixinType,
                        oracle.iam.rm.util.DateTime valueTime)
Gets the TemporalObject that represents the mixin type.
Parameters:
mixinType - the type of mix-in
valueTime - value time at which the mixin is related
Returns:
TemporalObject representing the mixin or null if this object does not have that mixin

isEffective

boolean isEffective(oracle.iam.rm.util.DateTime valueTime)
Determines whether the object is effective at the time specified.
Parameters:
valueTime - time to test for effectivity
Returns:
Boolean true if effective at that time, otherwise false.

Skip navigation links

Oracle Role Manager Java API Reference
10g (10.1.4)
E12031-02


Copyright © 2007, 2008 Oracle. All Rights Reserved.