com.ibm.cics.server
Class TSQ

java.lang.Object
  extended bycom.ibm.cics.server.API
      extended bycom.ibm.cics.server.Resource
          extended bycom.ibm.cics.server.RemotableResource
              extended bycom.ibm.cics.server.TSQ
All Implemented Interfaces:
java.io.Serializable

public class TSQ
extends RemotableResource
implements java.io.Serializable

This Class provides the Java interface to CICS Temporary Storage Queues (TSQs).

Version:
1.2
Author:
John Colgrave
See Also:
Serialized Form

Constructor Summary
TSQ()
          Construct a TSQ bean.
 
Method Summary
 void delete()
          Delete a Temporary Storage Queue (TSQ).
 java.lang.String getName()
          Return the name of the TSQ as a string, using the platform's default character encoding to convert from the internal byte[] format in which the name is stored.
 byte[] getQueueName()
          Return the queueName of the TSQ.
 TSQType getType()
          Return the type of the TSQ.
 int readItem(int item, ItemHolder holder)
          Read a specified item from a TSQ.
 int readNextItem(ItemHolder holder)
          Read the next item from a TSQ.
 void rewriteItem(int item, byte[] data)
          Rewrite an existing item.
 void rewriteItemConditional(int item, byte[] data)
          Rewrite an existing item.
 void setName(java.lang.String name)
          Sets the name of the TSQ.
 void setQueueName(byte[] queueName)
          Sets the queueName of the TSQ.
 void setType(TSQType type)
          Sets the type of the TSQ.
 int writeItem(byte[] data)
          Simplest version of WRITEQ TS.
 int writeItemConditional(byte[] data)
          Write an item to a TSQ.
 
Methods inherited from class com.ibm.cics.server.RemotableResource
getSysId, setSysId
 
Methods inherited from class com.ibm.cics.server.Resource
getDescription, setDescription
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TSQ

public TSQ()
Construct a TSQ bean.

Method Detail

delete

public void delete()
            throws InvalidRequestException,
                   IOErrorException,
                   ISCInvalidRequestException,
                   NotAuthorisedException,
                   InvalidQueueIdException,
                   InvalidSystemIdException
Delete a Temporary Storage Queue (TSQ).

Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidQueueIdException - A QIDERR occurred.
InvalidSystemIdException - A SYSIDERR occurred.

getName

public java.lang.String getName()
Return the name of the TSQ as a string, using the platform's default character encoding to convert from the internal byte[] format in which the name is stored.

Overrides:
getName in class Resource
Returns:
String the TSQ name

getQueueName

public byte[] getQueueName()
Return the queueName of the TSQ.

Returns:
byte[] the TSQ queueName

getType

public TSQType getType()
Return the type of the TSQ.

Returns:
TSQType the type of the TSQ

readItem

public int readItem(int item,
                    ItemHolder holder)
             throws InvalidRequestException,
                    IOErrorException,
                    ISCInvalidRequestException,
                    ItemErrorException,
                    LengthErrorException,
                    NotAuthorisedException,
                    InvalidQueueIdException,
                    InvalidSystemIdException
Read a specified item from a TSQ.

Parameters:
item - The number of the item to read.
holder - The holder for the data to be returned.
Returns:
The number of items in the queue.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidQueueIdException - A QIDERR occurred.
InvalidSystemIdException - A SYSIDERR occurred.

readNextItem

public int readNextItem(ItemHolder holder)
                 throws InvalidRequestException,
                        IOErrorException,
                        ISCInvalidRequestException,
                        ItemErrorException,
                        LengthErrorException,
                        NotAuthorisedException,
                        InvalidQueueIdException,
                        InvalidSystemIdException
Read the next item from a TSQ.

Parameters:
holder - The holder for the data to be returned.
Returns:
The number of items in the queue.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidQueueIdException - A QIDERR occurred.
InvalidSystemIdException - A SYSIDERR occurred.

rewriteItem

public void rewriteItem(int item,
                        byte[] data)
                 throws InvalidRequestException,
                        IOErrorException,
                        ISCInvalidRequestException,
                        ItemErrorException,
                        LengthErrorException,
                        NotAuthorisedException,
                        InvalidQueueIdException,
                        InvalidSystemIdException
Rewrite an existing item. If there is insufficient space in the TS dataset, the task will be suspended.

Parameters:
item - The number of the item to be rewritten.
data - A Java byte array containing the data to rewrite.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidQueueIdException - A QIDERR occurred.
InvalidSystemIdException - A SYSIDERR occurred.

rewriteItemConditional

public void rewriteItemConditional(int item,
                                   byte[] data)
                            throws InvalidRequestException,
                                   IOErrorException,
                                   ISCInvalidRequestException,
                                   ItemErrorException,
                                   LengthErrorException,
                                   NoSpaceException,
                                   NotAuthorisedException,
                                   InvalidQueueIdException,
                                   InvalidSystemIdException
Rewrite an existing item. If there is insufficient space in the TS dataset, a NoSpaceException will be thrown.

Parameters:
item - The number of the item to be rewritten.
data - A Java byte array containing the data to rewrite.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NoSpaceException - A NOSPACE occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidQueueIdException - A QIDERR occurred.
InvalidSystemIdException - A SYSIDERR occurred.

setName

public void setName(java.lang.String name)
             throws java.lang.NullPointerException
Sets the name of the TSQ.

Overrides:
setName in class Resource
Parameters:
name - the name of the TSQ as a string. This string is padded with blanks to the next higher queue name length boundary and converted to bytes using the platform's default character encoding. Overlength queue names will be truncated. For example: queueName in AIX will be in MVS will be "ABC" x'4142432020202020' x'C1C2C34040404040' "ABCDEFGHI" x'4142434445464748' x'C1C2C3C4C5C6C7C8C940404040404040'
Throws:
java.lang.NullPointerException - queueName is null

setQueueName

public void setQueueName(byte[] queueName)
                  throws java.lang.NullPointerException
Sets the queueName of the TSQ.

Parameters:
queueName - the queueName of the TSQ. If the queueName passed in is shorter than the TSQ name length of the platform, it is padded to the next higher queue name length boundary. The pad byte contains the hex value of blank in the platform's default character encoding. Overlength queueNames will be truncated. For example: queueName in AIX will be in MVS will be x'414243' x'4142432020202020' x'4142434040404040' x'C1C2C3C4C5C6C7C8C9' x'C1C2C3C4C5C6C7C8' x'C1C2C3C4C5C6C7C8C940404040404040'
Throws:
java.lang.NullPointerException - queueName is null

setType

public void setType(TSQType type)
Sets the type of the TSQ.

Parameters:
type - the type of the TSQ.

writeItem

public int writeItem(byte[] data)
              throws InvalidRequestException,
                     IOErrorException,
                     ISCInvalidRequestException,
                     ItemErrorException,
                     LengthErrorException,
                     NotAuthorisedException,
                     InvalidSystemIdException
Simplest version of WRITEQ TS. If there is insufficient space in the TS dataset, the task will be suspended.

Parameters:
data - A Java byte array containing the data to be written to the TSQ.
Returns:
The item number assigned to the new item.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidSystemIdException - A SYSIDERR occurred.

writeItemConditional

public int writeItemConditional(byte[] data)
                         throws InvalidRequestException,
                                IOErrorException,
                                ISCInvalidRequestException,
                                ItemErrorException,
                                LengthErrorException,
                                NoSpaceException,
                                NotAuthorisedException,
                                InvalidSystemIdException
Write an item to a TSQ. If there is insufficient space in the TS data set, a NoSpaceException will be thrown.

Parameters:
data - A Java byte array containing the data to rewrite.
Returns:
The item number assigned to the new item.
Throws:
InvalidRequestException - An INVREQ occurred.
IOErrorException - An IOERR occurred.
ISCInvalidRequestException - An ISCINVREQ occurred.
ItemErrorException - An ITEMERROR occurred.
LengthErrorException - A LENGERR occurred.
NoSpaceException - A NOSPACE occurred.
NotAuthorisedException - A NOTAUTH occurred.
InvalidSystemIdException - A SYSIDERR occurred.