IBM SC34-6814-04 User Manual

Page 906

Advertising
background image

*=====================================================================*
* LOCAL_REQUEST: Process Local TS Queues

*

*

An entry has been found in the TS_Routing Table for this TS

*

*

Queue Name. If required, rename the TS Queue Name, but do not

*

*

modify the SYSID.

*

*

*

*

Registers:

*

*

R1 = Work register

*

*

R6 = Link Register

*

*

R7 = Address of current Queue name

(Set on entry)

*

*

R8 = Command Parameter List (CLPS)

*

*

R9 = Address of table entry

(Set on entry)

*

*

R12= Work register (Shared_storage)

*

*

*

*

Logic:

*

*

Local_Request:

*

*

If entry_name ¬= new_name then

*

*

Call Getmain_Shared

*

*

Copy new_name into shared storage

*

*

Address the command plist

*

*

Update ADDR1 to point to address of the new TS QUEUE name

*

*

Set the Hi-order bit if last address in CLPS

*

*

End If

*

*

Return

*

*=====================================================================*
LOCAL_REQUEST DS 0H

USING TABLE_ENTRY,R9

R9 points to the table entry

CLC

NEW_NAME,0(R7)

Is the new_name=current_queue name?

BE

RETURN

..Yes Return

*
*

Obtain Shared storage to hold the new queue name
BAL

R6,GETMAIN_SHARED

GETMAIN SHARED storage

L

R12,UEPTQTOK

Fetch address of token

L

R12,0(R12)

Fetch shared storage pointer

USING SHARED_STORAGE,R12

Address using R12

MVC

SHARED_NAME,NEW_NAME Copy QNAME into shared storage

*
*

Update the Queue Name in CLPS
L

R8,UEPCLPS

Address the CLPS.

USING TS_ADDR_LIST,R8

..with Register 8

LA

R1,SHARED_NAME

Fetch address of the new QNAME

TM

TS_ADDR1,X’80’

Is the hi-order bit on?

BZ

LOCAL1

..No continue

O

R1,=X’80000000’

Indicate ADDR1 is last parameter

LOCAL1

DS

0H

ST

R1,TS_ADDR1

Store address in TS_ADDR1

B

RETURN

Return

DROP

R8

Drop TS_ADDR_LIST

DROP

R12

Drop SHARED_STORAGE

DROP

R9

Drop addressability to Entry

EJECT ,

*

Figure 141. Example exit program for the XTSEREQ exit (part 8)

884

Customization Guide

Advertising