org.arm4.arm40.tranreport
Class ArmTranReportFactory

java.lang.Object
  extended by org.arm4.arm40.transaction.ArmInterface
      extended by org.arm4.arm40.transaction.ArmFactory
          extended by org.arm4.arm40.tranreport.ArmTranReportFactory
All Implemented Interfaces:
ArmTranReportFactory, ArmInterface

public class ArmTranReportFactory
extends ArmFactory
implements ArmTranReportFactory

Provides methods to create instances of the classes in the org.opengroup.arm40.tranreport package. An error callback method can be registered for objects created with this factory (see setErrorCallback(ArmErrorCallback)). For additional details about error handling philosophy see the description of ArmTransactionFactory.

Semantics of the factory methods are provided in the description of the individual methods below.

ArmTranReportFactory is instantiated using a class loader. The actual name of the factory implementation class is obtained from the system property whose name is provided in the propertyKey constant.

Version:
$Revision$ $Date$
Author:
dcarter

Field Summary
static java.lang.String propertyKey
           
 
Fields inherited from class org.arm4.arm40.transaction.ArmFactory
m_nativeLoaded
 
Fields inherited from class org.arm4.arm40.transaction.ArmInterface
m_errorCode, m_factory
 
Constructor Summary
ArmTranReportFactory()
           
 
Method Summary
 ArmApplicationRemote newArmApplicationRemote(ArmApplicationDefinition definition, java.lang.String group, java.lang.String instance, java.lang.String[] contextValues, ArmSystemAddress systemAddress)
          Creates an ArmApplicationRemote.
 ArmSystemAddress newArmSystemAddress(short format, byte[] addressBytes, ArmID id)
          Creates an ArmSystemAddress from the specified format and the input byte array.
 ArmSystemAddress newArmSystemAddress(short format, byte[] addressBytes, int offset, ArmID id)
          Creates an ArmSystemAddress from the specified format and the input byte array.
 ArmSystemAddress newArmSystemAddress(short format, byte[] addressBytes, int offset, int length, ArmID id)
          Creates an ArmSystemAddress from the specified format and the input byte array.
 ArmTranReport newArmTranReport(ArmApplication app, ArmTransactionDefinition definition)
          Creates an object that represents an instance of a transaction.
 boolean setErrorCallback(ArmErrorCallback errorCallback)
          Registers an error callback for objects created through this factory.
 
Methods inherited from class org.arm4.arm40.transaction.ArmInterface
getErrorCode, getErrorMessage, getFactory, setErrorCode, setFactory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.opengroup.arm40.transaction.ArmInterface
getErrorCode, getErrorMessage, setErrorCode
 

Field Detail

propertyKey

public static final java.lang.String propertyKey
See Also:
Constant Field Values
Constructor Detail

ArmTranReportFactory

public ArmTranReportFactory()
Method Detail

newArmApplicationRemote

public ArmApplicationRemote newArmApplicationRemote(ArmApplicationDefinition definition,
                                                    java.lang.String group,
                                                    java.lang.String instance,
                                                    java.lang.String[] contextValues,
                                                    ArmSystemAddress systemAddress)
Description copied from interface: ArmTranReportFactory
Creates an ArmApplicationRemote. If systemAddress is null, the addressing information for the local system is used.

Specified by:
newArmApplicationRemote in interface ArmTranReportFactory
Parameters:
definition - metadata describing the type of the ARM application. Must not be null.
group - Name of the group the application belongs to. May be null.
instance - Name this application instance is given. May be null.
contextValues - An array of strings providing the value parts of (name,value) context properties. May be null.
systemAddress - address of the remote system the application is executing on.
Returns:
a new ArmApplicationRemote instance.
See Also:
ArmApplication

newArmSystemAddress

public ArmSystemAddress newArmSystemAddress(short format,
                                            byte[] addressBytes,
                                            ArmID id)
Description copied from interface: ArmTranReportFactory
Creates an ArmSystemAddress from the specified format and the input byte array. See the ArmSystemAddress description for more details about the parameters. The length of the address data is the length of addressBytes, if not restricted otherwise through the format parameter.

Specified by:
newArmSystemAddress in interface ArmTranReportFactory
Parameters:
format - the address format.
addressBytes - a byte array containig the address data.
id - An optional 16-byte ID associated with the identity of the ArmSystemAddress.
Returns:
a new ArmSystemAddress

newArmSystemAddress

public ArmSystemAddress newArmSystemAddress(short format,
                                            byte[] addressBytes,
                                            int offset,
                                            ArmID id)
Description copied from interface: ArmTranReportFactory
Creates an ArmSystemAddress from the specified format and the input byte array. See the ArmSystemAddress description for more details about the parameters. The length of the address data is the length of addressBytes, if not restricted otherwise through the format parameter.

Specified by:
newArmSystemAddress in interface ArmTranReportFactory
Parameters:
format - the address format.
addressBytes - a byte array containig the address data.
offset - start of the address bytes within the array.
id - An optional 16-byte ID associated with the identity of the ArmSystemAddress.
Returns:
a new ArmSystemAddress

newArmSystemAddress

public ArmSystemAddress newArmSystemAddress(short format,
                                            byte[] addressBytes,
                                            int offset,
                                            int length,
                                            ArmID id)
Description copied from interface: ArmTranReportFactory
Creates an ArmSystemAddress from the specified format and the input byte array. See the ArmSystemAddress description for more details about the parameters. The length of the address data is length, if not restricted otherwise through the format parameter.

Specified by:
newArmSystemAddress in interface ArmTranReportFactory
Parameters:
format - the address format.
addressBytes - a byte array containig the address data.
offset - start of the address bytes within the array.
length - the number of bytes of valid address data.
id - An optional 16-byte ID associated with the identity of the ArmSystemAddress.
Returns:
a new ArmSystemAddress

newArmTranReport

public ArmTranReport newArmTranReport(ArmApplication app,
                                      ArmTransactionDefinition definition)
Description copied from interface: ArmTranReportFactory
Creates an object that represents an instance of a transaction. The metadata is supplied in an ArmTransactionDefinition object. It is scoped by an application instance, represented by ArmApplication (or its subclass, ArmApplicationRemote).

Specified by:
newArmTranReport in interface ArmTranReportFactory
Parameters:
app - the application instance the transaction belongs to.
definition - the metadata describing the type of the transaction.
Returns:
a new ArmTranReport instance.

setErrorCallback

public boolean setErrorCallback(ArmErrorCallback errorCallback)
Description copied from interface: ArmTranReportFactory
Registers an error callback for objects created through this factory. See the error handling philosophy comment in the description of ArmTransactionFactory.

Specified by:
setErrorCallback in interface ArmTranReportFactory
Overrides:
setErrorCallback in class ArmFactory
Parameters:
errorCallback - an application object implementing the ArmErrorCallback> interface.
Returns:
true if registration is accepted.