com.autonomy.client
Class aciObject

java.lang.Object
  |
  +--com.autonomy.client.aciObject
All Implemented Interfaces:
java.lang.Cloneable

public class aciObject
extends java.lang.Object
implements java.lang.Cloneable

aciObject is the fundamental construct in the ACI client API . You can use the aciObject objects as a:

Any classes extending aciObject should have a publicly available constructor taking one Integer parameter if linked lists of the extended aciObject are to be created by aciObjectExecute and parseResultString.


Field Summary
static java.lang.String ACI_COM_COMMAND
          Specifies the action parameter of a command type aciObject
static java.lang.String ACI_COM_INDEX_DATA
          Specifies the index data parameter of a command type aciObject
static java.lang.String ACI_COM_METHOD
          Deprecated. Use ACI_COM_USE_POST instead.
static java.lang.String ACI_COM_USE_MULTIPART
          Specifies the use multipart parameter of a command type aciObject
static java.lang.String ACI_COM_USE_POST
          Specifies the HTTP method parameter of a command type aciObject
static int ACI_COMMAND
          Specifies a command type aciObject.
static java.lang.String ACI_CONN_RECVENCODING
          Specifies the recieving character encoding parameter of a connection type aciObject
static java.lang.String ACI_CONN_RETRIES
          Specifies the number of retries parameter of a connection type aciObject
static java.lang.String ACI_CONN_SENDENCODING
          Specifies the sending character encoding parameter of a connection type aciObject
static java.lang.String ACI_CONN_TIMEOUT
          Specifies the timeout parameter of a connection type aciObject
static int ACI_CONNECTION
          Specifies a connection type aciObject.
static int ACI_DATA
          Specifies a data type aciObject.
static java.lang.String ACI_DATA_DATA
          Specifies the xml buffer parameter of a data type aciObject.
static java.lang.String ACI_DATA_NODE_NAME
          Specifies the node (xml tag or element) name parameter of a data type aciObject
static java.lang.String ACI_DATA_NODE_VALUE
          Specifies the node (xml tag or element) value parameter of a data type aciObject
static java.lang.String ACI_HOSTNAME
          Specifies the hostname parameter of a connection type aciObject
static java.lang.String ACI_PORTNUMBER
          Specifies the ACI port parameter of a connection type aciObject
static java.lang.String ACI_SECURITY_DATABASE_NAMES
          The "database" name parameter to pass in to setSecurityInfo when setting database information.
static java.lang.String ACI_SECURITY_DATABASES
          The repository parameter to pass in to setSecurityInfo when setting database information.
static java.lang.String ACI_SECURITY_DOMAIN
          The "domain" name parameter to pass in to setSecurityInfo when setting user access permissions.
static java.lang.String ACI_SECURITY_EXTENDED
          The "extended" name parameter to pass in to setSecurityInfo when setting user access permissions.
static java.lang.String ACI_SECURITY_GROUP
          The "group" name parameter to pass in to setSecurityInfo when setting user access permissions.
static java.lang.String ACI_SECURITY_PASSWORD
          The "password" name parameter to pass in to setSecurityInfo when setting user access permissions.
static java.lang.String ACI_SECURITY_USERNAME
          The "username" name parameter to pass in to setSecurityInfo when setting user access permissions.
static int ACICONTENT_ERRORBADPARAMETER
          ACI error code indicating that an incorrect or null parameter was encountered.
static int ACICONTENT_ERRORNOTFOUND
          ACI error code indicating that a file could not be found.
static int ACICONTENT_ERRORNOTMULTIPART
          ACI error code indicating an error in processing a multipart request.
static int ACICONTENT_SUCCESS
          ACI error code indicating no error.
static java.lang.String AUTN_XML_HEADER
           
static java.lang.String AUTN_XML_TAIL
           
static java.lang.String FORCEFILENAMEDELIMITER
           
static boolean m_bDebug
           
 
Constructor Summary
aciObject(java.lang.Integer ioType)
           
 
Method Summary
 com.autonomy.client.aciObject aciObjectExecute(com.autonomy.client.aciObject oCommandToExecute)
          Execute a command.
 com.autonomy.client.aciObject aciObjectFirstEntry()
          Return the first child entry from the object
 com.autonomy.client.aciObject aciObjectNextEntry()
          Return the next entry in object
 void allowSlackHTTP()
          Enables use of \n\n to detect the end of the response header section (as opposed to correct \r\n\r\n)
 boolean checkForSuccess()
          Checks whether an ACI server reply object contains a successful response entry.
 com.autonomy.client.aciObject duplicate(boolean bWithSiblings)
           
 com.autonomy.client.aciObject findFirstOccurrence(java.lang.String sTag)
          Finds first occurance of tag in the XML structure represented by acioTop (this includes the siblings of acioTop).
 com.autonomy.client.aciObject findFirstOccurrenceFromRoot(java.lang.String sTag)
          Finds first occurance of tag in the XML structure contained within the xml element represented by acioTop.
 java.lang.String getAttribute(java.lang.String sAttribName)
          Returns the value of an xml tag attribute as a String, or null if the attribute does not exist.
 java.util.Enumeration getAttributeNames()
          Returns an Enumeration of String objects containing the names of the attributes contained in this request.
 java.lang.String getBuild()
           
 java.lang.String getLastError()
          Retrieve the last error message
 int getNumber()
          Return the number of objects contained within the specific object
 int getRetries()
          Deprecated. call paramGetInt(aciObject.ACI_CONN_TIMEOUT) on the connection object instead.
 java.lang.String getTagValue(java.lang.String sTagName)
          Attempts to find an aciObject named sTagName and reads its aciObject.ACI_DATA_DATA parameter.
 java.lang.String getTagValue(java.lang.String sTagName, java.lang.String sDefault)
          Attempts to find an aciObject named sTagName and reads its aciObject.ACI_DATA_DATA parameter.
 int getTimeout()
          Deprecated. call paramGetInt(aciObject.ACI_CONN_TIMEOUT) on the connection object instead.
 java.lang.String getVersion()
          Return the aciObject version
 boolean isAlive()
          Checks whether the ACI server is up and running.
 boolean paramGetBool(java.lang.String szName)
          Retrieve the parameter from the object
 double paramGetDouble(java.lang.String szName)
          Retrieve the parameter from the object
 int paramGetInt(java.lang.String szName)
          Retrieve the parameter from the object
 long paramGetLong(java.lang.String szName)
          Retrieve the parameter from the object
 java.lang.String paramGetString(java.lang.String szName)
          Retrieve the parameter from the object
 int paramSetBool(java.lang.String szName, boolean bValue)
          Add a boolean parameter to the object
 int paramSetDouble(java.lang.String szName, double dValue)
          Add a double parameter to the object
 int paramSetFile(java.lang.String sName, java.lang.String sFilename)
          Adds a file for uploading via multipart encoding.
 int paramSetInt(java.lang.String szName, int nValue)
          Add a Int parameter to the object
 int paramSetLong(java.lang.String szName, long lnValue)
          Add a long parameter to the object
 int paramSetString(java.lang.String szName, java.lang.String szValue)
          Add a String parameter to the object
 int paramSetStringArray(java.lang.String szName, java.lang.String[] aszValues)
          Add an array of Strings as the value of a parameter to the object
 com.autonomy.client.aciObject parseResultString(java.lang.String sOrigXML)
          Turns xml response from an ACI server into an aciObject (or subclass) linked list using the an XML2ACIParser.
 void setRetries(int nRetries)
          Deprecated. call paramSetInt(aciObject.ACI_CONN_TIMEOUT, nTimeout) on the connection object instead.
 int setSecurityKeys(int n1, int n2, int n3, int n4)
          Set the keys used for secure communications with an ACI Server.
 void setTimeout(int nTimeout)
          Deprecated. call paramSetInt(aciObject.ACI_CONN_TIMEOUT, nTimeout) on the connection object instead.
 int setUserSecurityInfo(java.lang.String sRepository, java.lang.String sName, java.lang.String sValue)
          Set an item of security information for a specific security type.
 java.lang.String toHTMLString()
          Constructs a String representation of the linked list headed by this aciObject that can be viewed in a web browser, detailing all parameters and attributes set on each object in the linked list.
 java.lang.String toString()
          Constructs a String representation of the linked list headed by this aciObject, detailing all parameters and attributes set on each object in the linked list.
 java.lang.String toXMLString()
          Constructs an XML representation of the linked list headed by this aciObject, detailing all parameters and attributes set on each object in the linked list.
 java.lang.String URLEncode(java.lang.String s)
          Utility function to URLEncode a string using whatever character send encoding has been set using the ACI_CONN_SENDENCODING parameter or the platform default character encoding if this parameter has not been set.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

ACICONTENT_SUCCESS

public static final int ACICONTENT_SUCCESS
ACI error code indicating no error.

See Also:
Constant Field Values

ACICONTENT_ERRORBADPARAMETER

public static final int ACICONTENT_ERRORBADPARAMETER
ACI error code indicating that an incorrect or null parameter was encountered.

See Also:
Constant Field Values

ACICONTENT_ERRORNOTFOUND

public static final int ACICONTENT_ERRORNOTFOUND
ACI error code indicating that a file could not be found.

See Also:
Constant Field Values

ACICONTENT_ERRORNOTMULTIPART

public static final int ACICONTENT_ERRORNOTMULTIPART
ACI error code indicating an error in processing a multipart request.

See Also:
Constant Field Values

ACI_CONNECTION

public static final int ACI_CONNECTION
Specifies a connection type aciObject.

See Also:
Constant Field Values

ACI_COMMAND

public static final int ACI_COMMAND
Specifies a command type aciObject.

See Also:
Constant Field Values

ACI_DATA

public static final int ACI_DATA
Specifies a data type aciObject.

See Also:
Constant Field Values

ACI_HOSTNAME

public static final java.lang.String ACI_HOSTNAME
Specifies the hostname parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_PORTNUMBER

public static final java.lang.String ACI_PORTNUMBER
Specifies the ACI port parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_CONN_RETRIES

public static final java.lang.String ACI_CONN_RETRIES
Specifies the number of retries parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_CONN_TIMEOUT

public static final java.lang.String ACI_CONN_TIMEOUT
Specifies the timeout parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_CONN_RECVENCODING

public static final java.lang.String ACI_CONN_RECVENCODING
Specifies the recieving character encoding parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_CONN_SENDENCODING

public static final java.lang.String ACI_CONN_SENDENCODING
Specifies the sending character encoding parameter of a connection type aciObject

See Also:
Constant Field Values

ACI_COM_COMMAND

public static final java.lang.String ACI_COM_COMMAND
Specifies the action parameter of a command type aciObject

See Also:
Constant Field Values

ACI_COM_INDEX_DATA

public static final java.lang.String ACI_COM_INDEX_DATA
Specifies the index data parameter of a command type aciObject

See Also:
Constant Field Values

ACI_COM_METHOD

public static final java.lang.String ACI_COM_METHOD
Deprecated. Use ACI_COM_USE_POST instead.

Specifies the HTTP method parameter of a command type aciObject

See Also:
ACI_COM_USE_POST, Constant Field Values

ACI_COM_USE_POST

public static final java.lang.String ACI_COM_USE_POST
Specifies the HTTP method parameter of a command type aciObject

See Also:
Constant Field Values

ACI_COM_USE_MULTIPART

public static final java.lang.String ACI_COM_USE_MULTIPART
Specifies the use multipart parameter of a command type aciObject

See Also:
Constant Field Values

ACI_SECURITY_USERNAME

public static final java.lang.String ACI_SECURITY_USERNAME
The "username" name parameter to pass in to setSecurityInfo when setting user access permissions.

See Also:
Constant Field Values

ACI_SECURITY_PASSWORD

public static final java.lang.String ACI_SECURITY_PASSWORD
The "password" name parameter to pass in to setSecurityInfo when setting user access permissions.

See Also:
Constant Field Values

ACI_SECURITY_DOMAIN

public static final java.lang.String ACI_SECURITY_DOMAIN
The "domain" name parameter to pass in to setSecurityInfo when setting user access permissions.

See Also:
Constant Field Values

ACI_SECURITY_GROUP

public static final java.lang.String ACI_SECURITY_GROUP
The "group" name parameter to pass in to setSecurityInfo when setting user access permissions.

See Also:
Constant Field Values

ACI_SECURITY_EXTENDED

public static final java.lang.String ACI_SECURITY_EXTENDED
The "extended" name parameter to pass in to setSecurityInfo when setting user access permissions.

See Also:
Constant Field Values

ACI_SECURITY_DATABASES

public static final java.lang.String ACI_SECURITY_DATABASES
The repository parameter to pass in to setSecurityInfo when setting database information.

See Also:
Constant Field Values

ACI_SECURITY_DATABASE_NAMES

public static final java.lang.String ACI_SECURITY_DATABASE_NAMES
The "database" name parameter to pass in to setSecurityInfo when setting database information.

See Also:
Constant Field Values

ACI_DATA_NODE_NAME

public static final java.lang.String ACI_DATA_NODE_NAME
Specifies the node (xml tag or element) name parameter of a data type aciObject

See Also:
Constant Field Values

ACI_DATA_NODE_VALUE

public static final java.lang.String ACI_DATA_NODE_VALUE
Specifies the node (xml tag or element) value parameter of a data type aciObject

See Also:
Constant Field Values

ACI_DATA_DATA

public static final java.lang.String ACI_DATA_DATA
Specifies the xml buffer parameter of a data type aciObject. This parameter only has a in the top-most aciObject returned from a call to aciObjectExecute

See Also:
Constant Field Values

AUTN_XML_HEADER

public static final java.lang.String AUTN_XML_HEADER
See Also:
Constant Field Values

AUTN_XML_TAIL

public static final java.lang.String AUTN_XML_TAIL
See Also:
Constant Field Values

FORCEFILENAMEDELIMITER

public static final java.lang.String FORCEFILENAMEDELIMITER
See Also:
Constant Field Values

m_bDebug

public static boolean m_bDebug
Constructor Detail

aciObject

public aciObject(java.lang.Integer ioType)
Method Detail

checkForSuccess

public boolean checkForSuccess()
Checks whether an ACI server reply object contains a successful response entry. Can only be call on an ACI_DATA type aciObject.

Returns:
true if this object is an ACI_DATA type aciObject and holds a response object with value "SUCCESS", false otherwise.

aciObjectFirstEntry

public com.autonomy.client.aciObject aciObjectFirstEntry()
Return the first child entry from the object

Returns:
the first child object or return null if there is no object

aciObjectNextEntry

public com.autonomy.client.aciObject aciObjectNextEntry()
Return the next entry in object

Returns:
the next entry or null if there is no next entry

duplicate

public com.autonomy.client.aciObject duplicate(boolean bWithSiblings)

getNumber

public int getNumber()
Return the number of objects contained within the specific object

Returns:
nNumber the number of sub-objects

getAttribute

public java.lang.String getAttribute(java.lang.String sAttribName)
Returns the value of an xml tag attribute as a String, or null if the attribute does not exist. Can only be called on a ACI_DATA type aciObject.

Parameters:
sAttribName - a String specifying the name of the attribute.

getAttributeNames

public java.util.Enumeration getAttributeNames()
Returns an Enumeration of String objects containing the names of the attributes contained in this request. If the xml tag has no attributes, the method returns an empty Enumeration. Can only be called on a ACI_DATA type aciObject.

Returns:
an Enumeration of String objects, each String containing the name of an attribute; or an empty Enumerationif the xml tag has no attributes.

paramSetString

public int paramSetString(java.lang.String szName,
                          java.lang.String szValue)
Add a String parameter to the object

Parameters:
szName - name of the parameter
szValue - value for the parameter. May be null in which case the parameter's value is set to empty string.
Returns:
ACI error code

paramSetStringArray

public int paramSetStringArray(java.lang.String szName,
                               java.lang.String[] aszValues)
Add an array of Strings as the value of a parameter to the object

Parameters:
szName - name of the parameter
aszValues - a String array of values. May be null in which case the parameter's value is set to empty string.
Returns:
ACI error code

paramSetDouble

public int paramSetDouble(java.lang.String szName,
                          double dValue)
Add a double parameter to the object

Parameters:
szName - name of the parameter
dValue - value for the parameter
Returns:
ACI error code

paramSetInt

public int paramSetInt(java.lang.String szName,
                       int nValue)
Add a Int parameter to the object

Parameters:
szName - name of the parameter
nValue - value for the parameter
Returns:
ACI error code

paramSetLong

public int paramSetLong(java.lang.String szName,
                        long lnValue)
Add a long parameter to the object

Parameters:
szName - name of the parameter
lnValue - value for the parameter
Returns:
ACI error code

paramSetBool

public int paramSetBool(java.lang.String szName,
                        boolean bValue)
Add a boolean parameter to the object

Parameters:
szName - name of the parameter
bValue - value for the parameter
Returns:
ACI error code

paramSetFile

public int paramSetFile(java.lang.String sName,
                        java.lang.String sFilename)
Adds a file for uploading via multipart encoding. Must have set aciObjectParamSetBool(ACI_COM_USE_MULTIPART) or will return ACICONTENT_ERRORNOTMULTIPART error

Parameters:
sName - name of file parameter
sFilename - fully qualified location of file on disk
Returns:
ACI error code

paramGetString

public java.lang.String paramGetString(java.lang.String szName)
Retrieve the parameter from the object

Parameters:
szName - the name of the variable to retrieve
Returns:
the value for the parameter or null if the parameter was not found

paramGetInt

public int paramGetInt(java.lang.String szName)
Retrieve the parameter from the object

Parameters:
szName - the name of the variable to retrieve
Returns:
the value for the parameter or -1 if the parameter was not found

paramGetLong

public long paramGetLong(java.lang.String szName)
Retrieve the parameter from the object

Parameters:
szName - the name of the variable to retrieve
Returns:
the value for the parameter or -1 if the parameter was not found

paramGetDouble

public double paramGetDouble(java.lang.String szName)
Retrieve the parameter from the object

Parameters:
szName - the name of the variable to retrieve
Returns:
the value for the parameter or -1 if the parameter was not found

paramGetBool

public boolean paramGetBool(java.lang.String szName)
Retrieve the parameter from the object

Parameters:
szName - the name of the variable to retrieve
Returns:
the value for the parameter or false if the parameter was not found

getTagValue

public java.lang.String getTagValue(java.lang.String sTagName,
                                    java.lang.String sDefault)
Attempts to find an aciObject named sTagName and reads its aciObject.ACI_DATA_DATA parameter. If no such tag is found or if it does not contain this parameter, the default value is returned. Note that an empty string is considered a valid value.

Parameters:
sTagName - the name of the xml tag whose value is required.
sDefault - a default value which the method will return if no value was found (can be null).
Returns:
the value of the named tag or the default parameter passed in if this tag was not found or has no value.

getTagValue

public java.lang.String getTagValue(java.lang.String sTagName)
Attempts to find an aciObject named sTagName and reads its aciObject.ACI_DATA_DATA parameter. If no such tag is found or if it does not contain this parameter, null is returned. Note that an empty string is considered a valid value.

Parameters:
sTagName - the name of the xml tag whose value is required.
Returns:
the value of the named tag or null if this tag was not found or has no value.

setSecurityKeys

public int setSecurityKeys(int n1,
                           int n2,
                           int n3,
                           int n4)
Set the keys used for secure communications with an ACI Server. The values given here must correspond to the values of the SecurityInfoKeys parameter in the [Security] section of the server.

Parameters:
n1 - key1
n2 - key2
n3 - key3
n4 - key4
Returns:
ACI error code

setUserSecurityInfo

public int setUserSecurityInfo(java.lang.String sRepository,
                               java.lang.String sName,
                               java.lang.String sValue)
Set an item of security information for a specific security type. This will automatically be added to the encrypted security string (&secinfo=.....) sent with the action to the ACI server. You do NOT need to set this parameter separately using, for example, a call to paramSetString("secinfo", sSecString).

You also use this method to set the database information for a query/suggest type action by setting sRepository to the constant value ACI_SECURITY_DATABASES, sName to ACI_SECURITY_DATABASE_NAMES and sValue to a '+' separated list of the databases the query/suggest should check against.

Parameters:
sRepository - the name of the security scheme for which this information should be set. This must correspond to one of the security types as defined in the [Security] section of the server configuration.
sName - the name of the security parameter that is being set. This must be one of the defined constants:
  • ACI_SECURITY_USERNAME
  • ACI_SECURITY_PASSWORD
  • ACI_SECURITY_DOMAIN
  • ACI_SECURITY_GROUP
  • ACI_SECURITY_EXTENDED
sValue - the value of the parameter specified by sName.
Returns:
ACI error code

setTimeout

public void setTimeout(int nTimeout)
Deprecated. call paramSetInt(aciObject.ACI_CONN_TIMEOUT, nTimeout) on the connection object instead.

Sets the timeout to be used for reading responses from the server. Can only be call on a connection type aciObject.

Parameters:
nTimeout - the time in milliseconds. A time of 0 means wait indefinitely.

getTimeout

public int getTimeout()
Deprecated. call paramGetInt(aciObject.ACI_CONN_TIMEOUT) on the connection object instead.

Gets the timeout used for reading response data. Can only be call on a connection type aciObject.

Returns:
the current time out value

setRetries

public void setRetries(int nRetries)
Deprecated. call paramSetInt(aciObject.ACI_CONN_TIMEOUT, nTimeout) on the connection object instead.

Set the number of times a connection with the server is attempted before exiting. Can only be call on a connection type aciObject.

Parameters:
nRetries - the number of times a connection with the server is attempted before timing out.

getRetries

public int getRetries()
Deprecated. call paramGetInt(aciObject.ACI_CONN_TIMEOUT) on the connection object instead.

Get the number of times a connection with the server is attempted before exiting. Can only be call on a connection type aciObject.


getLastError

public java.lang.String getLastError()
Retrieve the last error message

Returns:
the last error message this client object produced

allowSlackHTTP

public void allowSlackHTTP()
Enables use of \n\n to detect the end of the response header section (as opposed to correct \r\n\r\n)


findFirstOccurrence

public com.autonomy.client.aciObject findFirstOccurrence(java.lang.String sTag)
Finds first occurance of tag in the XML structure represented by acioTop (this includes the siblings of acioTop). Returns null if tag is not found.
Recursive.

Returns:
the first aciObject called sTag.

findFirstOccurrenceFromRoot

public com.autonomy.client.aciObject findFirstOccurrenceFromRoot(java.lang.String sTag)
Finds first occurance of tag in the XML structure contained within the xml element represented by acioTop. Returns null if tag is not found.
Recursive.

Returns:
the first aciObject called sTag.

aciObjectExecute

public com.autonomy.client.aciObject aciObjectExecute(com.autonomy.client.aciObject oCommandToExecute)
Execute a command. HTTP requests use GET unless the parameter ACI_COM_USE_POST is set to true for the command object. Can only be called on an aciObject of type ACI_CONNECTION

Parameters:
oCommandToExecute - - The object which contains to the command to be executed
Returns:
the result object - The results of the execution

isAlive

public boolean isAlive()
Checks whether the ACI server is up and running. Can only be called on a ACI_CONNECTION type aciObject.

Returns:
true if ACI server is running, false otherwise.

parseResultString

public com.autonomy.client.aciObject parseResultString(java.lang.String sOrigXML)
                                                throws java.lang.NullPointerException
Turns xml response from an ACI server into an aciObject (or subclass) linked list using the an XML2ACIParser.

Parameters:
sOrigXML - the string response from an ACI server
Returns:
a linked list of DATA type aciObject (or subclass) objects representing the xml passed in
java.lang.NullPointerException

URLEncode

public java.lang.String URLEncode(java.lang.String s)
Utility function to URLEncode a string using whatever character send encoding has been set using the ACI_CONN_SENDENCODING parameter or the platform default character encoding if this parameter has not been set.

Parameters:
s - the String to URL encode.
Returns:
the URL encoded string.

getVersion

public java.lang.String getVersion()
Return the aciObject version

Returns:
String the build of autonomyClient Jar

getBuild

public java.lang.String getBuild()

toString

public java.lang.String toString()
Constructs a String representation of the linked list headed by this aciObject, detailing all parameters and attributes set on each object in the linked list.

Overrides:
toString in class java.lang.Object

toHTMLString

public java.lang.String toHTMLString()
Constructs a String representation of the linked list headed by this aciObject that can be viewed in a web browser, detailing all parameters and attributes set on each object in the linked list.


toXMLString

public java.lang.String toXMLString()
Constructs an XML representation of the linked list headed by this aciObject, detailing all parameters and attributes set on each object in the linked list.