org.opengroup.arm40.transaction

Interface ArmIdentityProperties

public interface ArmIdentityProperties extends ArmInterface

Contains metadata attributes that are part of the identity of an application or a transaction.

ArmIdentityProperties is new in ARM 4.0. It addresses a requirement to accept a set of string (name,value) pairs that extend the concept of application and transaction identity and context.

ARM defines two types of properties - identity and context. The difference between them is as follows:

ArmIdentityProperties contains some attributes that are common to the identity of both an application and a transaction. The full identity is captured in ArmApplicationDefinition and ArmTransactionDefinition, which each adds other attributes to those listed here. All these attributes are immutable. The common attributes include: Property names and values are in arrays. A property name and value form a (name,value) pair. The array index of a property value in the value array is bound to the property name at the same index in the name array. Moving the (name,value) pair to a different index does not affect the identity of the application. For example, if an application is registered once with a name A and a value X in array indices 0 and once with the same name and value in array indices 1, the registered identity has not changed.

If a name is repeated in the array, the name and its corresponding value are ignored, and the first instance of the name in the array (and its corresponding value) is used. If the pointer is null or points to a zero-length string, the (name,value) pair is ignored. Names should not contain trailing blank characters or consist of only blank characters.

The names of identity and context properties can be any string, with one exception. Strings beginning with the four characters "ARM:" are reserved for the ARM specification. The specification will define names with known semantics using this prefix. One name format is currently defined. Any name beginning with the eight-character prefix "ARM:CIM:" represents a name defined using the DMTF CIM (Distributed Management Task Force Common Information Model) naming rules. For example, "ARM:CIM:CIM_SoftwareElement.Name" indicates that the property value has the semantics of the Name property of the CIM_SoftwareElement class. It is anticipated that additional naming semantics are likely to be added in the future.

Objects implementing this interface are created using ArmTransactionFactory.

Author: ARM Working Group of The Open Group

Method Summary
StringgetContextName(int index)
StringgetIdentityName(int index)
StringgetIdentityValue(int index)

Method Detail

getContextName

public String getContextName(int index)

Parameters: index the index of the context name to be returned.

Returns: the string (the name part of the (name,value) context property) at the specified array index. The returned value may be null.

getIdentityName

public String getIdentityName(int index)

Parameters: index the index of the identity name to be returned.

Returns: the string (the name part of the (name,value) identity property) at the specified array index. The returned value will be null if either the name or value at the index is set to null.

getIdentityValue

public String getIdentityValue(int index)

Parameters: index the index of the identity value to be returned.

Returns: the string (the value part of the (name,value) identity property) at the specified array index. The returned value will be null if either the name or value at the index is set to null.