Class ConcurrentEntityInstance

java.lang.Object
com.aquima.interactions.profile.wrapper.InstanceDelegate
com.aquima.interactions.portal.model.session.concurrent.ConcurrentEntityInstance
All Implemented Interfaces:
IEventChannel, IPropertyContainer, IEntityInstance, Serializable

public final class ConcurrentEntityInstance extends InstanceDelegate
This class makes sure that concurrent profile calls are handled correct.
Since:
8.4.3
Author:
Jon van Leuven
See Also:
  • Constructor Details

  • Method Details

    • getPropertyNames

      public String[] getPropertyNames()
      Description copied from interface: IPropertyContainer
      Returns the names of the properties.
      Specified by:
      getPropertyNames in interface IPropertyContainer
      Overrides:
      getPropertyNames in class InstanceDelegate
      Returns:
      All available properties.
    • setProperty

      public boolean setProperty(String name, IValue propertyValue)
      Description copied from interface: IPropertyContainer
      This method may be used to set the value of a property.
      Specified by:
      setProperty in interface IPropertyContainer
      Overrides:
      setProperty in class InstanceDelegate
      Parameters:
      name - The name of the property whose value should be set.
      propertyValue - The new value of the property.
      Returns:
      boolean indicating if the set operation was successful.
    • getReferringInstances

      public InstanceReferrer[] getReferringInstances()
      Description copied from interface: IEntityInstance
      This method returns information about the instances that are referring this instance. The InstanceReferrer objects can be used to determine what instance is referring this one, and through what attribute. The attribute by which this instance is referenced is needed, as an instance may have multiple references to another through different attributes.
      Specified by:
      getReferringInstances in interface IEntityInstance
      Overrides:
      getReferringInstances in class InstanceDelegate
      Returns:
      Array of reference objects containing information about the referring instance.
    • setValue

      public boolean setValue(String attributeName, Object objValue)
      Description copied from interface: IEntityInstance
      This method sets the specified value for the given attribute. Possible objects to pass to this method:
      • IEntityInstance denoting an instance.
      • EntityValue denoting an instance.
      • Number/NumberValue/IntegerValue/Currency/Percentage denoting one of [ number, currency, percentage ]
      • Boolean/BooleanValue denoting a boolean type.
      • Date/DateValue/DateTimeValue denoting a date object
      • String/StringValue denoting a string object, domain's short value
      • Collection containing any combination of above. Mixed is allowed i.e. [ EntityValue, IEntityInstance ]
      • Object[] containing any combination of above. Mixed is allowed i.e. [ EntityValue, IEntityInstance ]
      Specified by:
      setValue in interface IEntityInstance
      Overrides:
      setValue in class InstanceDelegate
      Parameters:
      attributeName - the attribute name, preferred name instead of Person.name
      objValue - The objects value to set as value (can be null).
      Returns:
      Boolean indicating whether the value of the attribute did change.
    • getValue

      public IValue getValue(String attributeName)
      Description copied from interface: IEntityInstance
      This method can be used to retrieve a value for an attribute of this instance in a non-type safe manner.
      • DataType.Boolean returns a BooleanValue
      • DataType.Currency returns a DoubleValue
      • DataType.Date returns a DateValue
      • DataType.Number returns a NumberValue
      • DataType.Integer returns a IntegerValue
      • DataType.Percentage returns a DoubleValue
      • DataType.String returns a StringValue
      • DataType.Domain returns a StringValue containing the short value, and has the display value as well.
      • DataType.Entity returns an EntityValue object denoting the instance this relation was pointing to.
      N.B.
      1. If the value was not answered the return value is as specified but on the IValue object the isUnknown function renders true
      2. If the value was answered and the single value was null the return value is not null, but the isUnknown function results in true
      3. If the value is a multivalued attribute a collection containing the only the object types listed above.
      Specified by:
      getValue in interface IEntityInstance
      Overrides:
      getValue in class InstanceDelegate
      Parameters:
      attributeName - String (without the entity name)
      Returns:
      The value for the specified attribute name.
    • getInstanceValue

      public IEntityInstance getInstanceValue(String attributeName)
      Description copied from interface: IEntityInstance
      This method returns the instances that is referred to by the given attribute. If the attribute does not refer to an instance, a null value is returned.
      Specified by:
      getInstanceValue in interface IEntityInstance
      Overrides:
      getInstanceValue in class InstanceDelegate
      Parameters:
      attributeName - The name of the attribute containing the instance.
      Returns:
      The IEntityInstance referred to by the attribute.
    • getInstanceValues

      public IEntityInstance[] getInstanceValues(String attributeName)
      Description copied from interface: IEntityInstance
      This method returns an array containing all the instances that are referred to by the given attribute. If the attribute does not refer to any instance, an empty array is returned.
      Specified by:
      getInstanceValues in interface IEntityInstance
      Overrides:
      getInstanceValues in class InstanceDelegate
      Parameters:
      attributeName - The name of the attribute containing the instances.
      Returns:
      An array containing all the instances that are referred to by the attribute.
    • removeValue

      public boolean removeValue(String attributeName, ISingleValue singleValue)
      Description copied from interface: IEntityInstance
      Removes a specified value from the multivalued-attribute. Possible datatypes for singleValue:
      • DataType.IEntityInstance denoting an instance.
      • DataType.EntityValue denoting an instance.
      • DataType.Number denoting one of [ domainValueId, number, currency, percentage ]
      • DataType.Boolean denoting a boolean type.
      • DataType.Date denoting a date object
      • DataType.String denoting a string object, domain's short value
      Specified by:
      removeValue in interface IEntityInstance
      Overrides:
      removeValue in class InstanceDelegate
      Parameters:
      attributeName - the attribute name ( without the entity name )
      singleValue - The value that should be removed.
      Returns:
      boolean if the value was found in the original value list.
    • addValue

      public boolean addValue(String attributeName, ISingleValue singleValue)
      Description copied from interface: IEntityInstance
      This function will add the designated value to the existing profile's value. If there was one, otherwise a single value is put in. Duplicate values are not allowed, and invoking this method with a value that is already present in the attribute has no effect.
      Specified by:
      addValue in interface IEntityInstance
      Overrides:
      addValue in class InstanceDelegate
      Parameters:
      attributeName - The name of the attribute to which the value should be added.
      singleValue - The value that should be added to the attribute specified.
      Returns:
      boolean indicating whether the value was actually added (a duplicate value will result in false).
    • clearValue

      public boolean clearValue(String attributeName)
      Description copied from interface: IEntityInstance
      Clears the designated value, returning its state to UNKNOWN.
      Specified by:
      clearValue in interface IEntityInstance
      Overrides:
      clearValue in class InstanceDelegate
      Parameters:
      attributeName - String the attribute name.
      Returns:
      boolean true whether the attribute-value was changed by this action.
    • getAttributeState

      public IAttributeValue getAttributeState(String attributeName)
      Description copied from interface: IEntityInstance
      When the attribute is known, it will return the state of the attribute.
      Specified by:
      getAttributeState in interface IEntityInstance
      Overrides:
      getAttributeState in class InstanceDelegate
      Parameters:
      attributeName - String Preferably without the entity name
      Returns:
      The state information of the attribute.