Skip to content

Commit cb685ad

Browse files
authored
Merge pull request #113 from BroadcomMFD/Endevor-API
Update Endevor API programs and JCL. Add moveout.
2 parents 913a067 + aa073df commit cb685ad

File tree

10 files changed

+2579
-0
lines changed

10 files changed

+2579
-0
lines changed
Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
APIALAPP TITLE 'ENDEVOR - API LIST PACKAGE Approvers '
2+
* THESE ROUTINES ARE DISTRIBUTED BY THE CA TECHNOLOGIES STAFF
3+
* "AS IS". NO WARRANTY, EITHER EXPRESSED OR IMPLIED, IS MADE
4+
* FOR THEM. CA TECHNOLOGIES CANNOT GUARANTEE THAT THE ROUTINES
5+
* ARE ERROR FREE, OR THAT IF ERRORS ARE FOUND, THEY WILL BE
6+
* CORRECTED.
7+
***********************************************************************
8+
* DESCRIPTION: THIS SAMPLE PROGRAM ISSUES REQUESTS TO THE
9+
* ENDEVOR API TO EXTRACT ENDEVOR PACKAGE Approver info.
10+
*
11+
* HOW TO USE: PASS THE PACKAGE NAME IN THE PARM WITH THE PROGRAM
12+
* CALL.
13+
* EXAMPLE:
14+
* EXEC PGM=NDVRC1,
15+
* PARM='CONCALL,DDN:STEPLIB,APIALAPP,PR#BACKOUT#TEST1'
16+
*
17+
* REGISTER USAGE:
18+
* R2 -> SAVE RETURN CODE
19+
* R3 -> SAVE REASON CODE
20+
* R12 -> BASE PROGRAM
21+
* R13 -> STANDARD USAGE........
22+
* R15 -> RETURN CODE FROM CALL
23+
* ==> -> WE USE STANDARD STACK SAVEAREA USAGE
24+
*
25+
***********************************************************************
26+
* WORKAREA
27+
***********************************************************************
28+
WORKAREA DSECT
29+
SAVEAREA DS 18F
30+
WPARMLST DS 4F PARAMETER LIST
31+
WCNT DS H ACTION COUNTER
32+
DS 0D
33+
***********************************************************************
34+
* API CONTROL BLOCK
35+
** your CSIQOPTN(ENHALAPP)
36+
***********************************************************************
37+
ENHAACTL DSECT=NO
38+
***********************************************************************
39+
* API ACTION REQUEST BLOCKS
40+
***********************************************************************
41+
ENHALAPP DSECT=NO
42+
WORKLN EQU *-WORKAREA
43+
***********************************************************************
44+
* REQISTER EQUATES
45+
***********************************************************************
46+
R0 EQU 0
47+
R1 EQU 1
48+
R2 EQU 2
49+
R3 EQU 3
50+
R4 EQU 4
51+
R5 EQU 5
52+
R6 EQU 6
53+
R7 EQU 7
54+
R8 EQU 8
55+
R9 EQU 9
56+
R10 EQU 10
57+
R11 EQU 11
58+
R12 EQU 12
59+
R13 EQU 13
60+
R14 EQU 14
61+
R15 EQU 15
62+
APIALAPP CSECT
63+
APIALAPP AMODE 31
64+
APIALAPP RMODE ANY
65+
***********************************************************************
66+
* HOUSEKEEPING
67+
***********************************************************************
68+
SAVE (14,12) SAVE CALLERS REG 12(13)
69+
LR R12,R15 POINT TO THIS PROGRAM
70+
USING APIALAPP,R12
71+
***********************************************************************
72+
* VALIDATE PARM LEN
73+
***********************************************************************
74+
*
75+
L R6,0(,R1)
76+
LA R6,2(,R6) POINT TO package id in parm
77+
*
78+
***********************************************************************
79+
* GET STORAGE FOR WORKAREA
80+
***********************************************************************
81+
L R0,=A(WORKLN) GET SIZE OF W.A
82+
GETMAIN R,LV=(0) GET WORKING STORAGE
83+
ST R1,8(R13) STORE NEW STACK +8(OLD)
84+
ST R13,4(R1) STORE OLD STACK +4(NEW)
85+
LR R13,R1 POINT R13 TO OUR STACK
86+
USING SAVEAREA,R13 ESTABLISH ADDRESSIBILIY
87+
SPACE ,
88+
************************************************************
89+
* INITIALIZE AND POPULATE THE CONTROL STRUCTURE
90+
* NOTE: IF ANY INVENTORY MANAGEMENT MESSAGES ARE ISSUED, THEY
91+
* ARE WRITTEN TO THE MSG DATA SET. THE OUTPUT FROM THIS REQUEST
92+
* IS WRITTEN TO THE LIST DATA SET.
93+
************************************************************
94+
*
95+
XAPP000 DS 0H
96+
************************************************************
97+
* INITIALIZE AND POPULATE THE REQUEST STRUCTURE
98+
************************************************************
99+
*
100+
API$INIT STG=AACTL,BLOCK=AACTL
101+
API$INIT STG=ALAPP_RQ,BLOCK=ALAPP_RQ
102+
API$INIT STG=ALAPP_RS,BLOCK=ALAPP_RS
103+
*
104+
MVC AACTL_MSG_DDN(8),=C'APIMSGS '
105+
MVC AACTL_LIST_DDN(8),=C'APILIST '
106+
*
107+
MVC ALAPP_RQ_PKGID(16),0(R6) Move package id to request
108+
*
109+
************************************************************
110+
* BUILD PARMLIST
111+
************************************************************
112+
LA R1,WPARMLST
113+
LA R14,AACTL
114+
ST R14,0(0,R1)
115+
LA R14,ALAPP_RQ
116+
ST R14,4(0,R1)
117+
LA R14,ALAPP_RS
118+
ST R14,8(0,R1)
119+
OI 8(R1),X'80'
120+
************************************************************
121+
*
122+
* CALL THE ENDEVOR API INTERFACE PROGRAM
123+
************************************************************
124+
XCALLAPI DS 0H
125+
L R15,=V(ENA$NDVR)
126+
BALR R14,R15
127+
LR R2,R15 HOLD ONTO THE RETURN CODE
128+
LR R3,R0 HOLD ONTO THE REASON CODE
129+
************************************************************
130+
* SHUTDOWN THE API SERVER. ONLY THE AACTL BLOCK IS REQUIRED.
131+
************************************************************
132+
XSHUTDWN DS 0H
133+
API$INIT STG=AACTL,BLOCK=AACTL
134+
MVI AACTL_SHUTDOWN,C'Y'
135+
LA R1,WPARMLST
136+
LA R14,AACTL
137+
ST R14,0(0,R1)
138+
OI 0(R1),X'80'
139+
L R15,=V(ENA$NDVR)
140+
BALR R14,R15
141+
***********************************************************************
142+
* PROGRAM EXIT
143+
***********************************************************************
144+
LR R5,R13 SAVE SAVEAREA ADDRESS
145+
L R13,4(R13) POINT TO PREVIOUS SAVEAREA
146+
* CLEAN UP THIS PROGRAM'S STORAGE
147+
L R0,=A(WORKLN) GET SIZE
148+
FREEMAIN R,A=(R5),LV=(R0) FREE STORAGE
149+
LR R15,R2 SET RETURN CODE
150+
L R14,12(R13)
151+
LM R0,R12,20(R13)
152+
BSM 0,R14 RETURN
153+
END
File renamed without changes.
File renamed without changes.
File renamed without changes.
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
//IBMUSERT JOB (0000),
2+
// CLASS=A,MSGCLASS=X,REGION=4M,
3+
// NOTIFY=&SYSUID
4+
//*==================================================================*
5+
// JCLLIB ORDER=(YOURSITE.NDVR.TEAM.JCL)
6+
// SET PACKAGE=CONT#ZAXJ1908178
7+
// SET PACKAGE=FINA#YECQ4226795
8+
//*==================================================================*
9+
//*-------------------------------------------------------------------*
10+
//LSTBKOUT EXEC PGM=NDVRC1,
11+
// PARM='CONCALL,DDN:STEPLIB,APIALAPP,&PACKAGE'
12+
//* PARM='APIALAPP,FINA#YECQ4226795'
13+
// INCLUDE MEMBER=STEPLIB <- Endevor STEPLIB +
14+
//SYSOUT DD SYSOUT=*
15+
//SYSPRINT DD SYSOUT=*
16+
//BSTERR DD SYSOUT=*
17+
//BSTAPI DD SYSOUT=*
18+
//APIAPP DD SYSOUT=*
19+
//APIMSGS DD DSN=&&MSG3FILE,DISP=(NEW,PASS),
20+
// UNIT=SYSDA,SPACE=(TRK,(5,5)),
21+
// DCB=(RECFM=FB,LRECL=133,BLKSIZE=13300)
22+
//APILIST DD DSN=&&APIALAPP,DISP=(NEW,PASS),
23+
// UNIT=SYSDA,SPACE=(TRK,(5,5)),
24+
// DCB=(RECFM=VB,LRECL=2048,BLKSIZE=20480)
25+
//*
26+
//* PRINT ANY MESSAGES
27+
//STEP2 EXEC PGM=IEBGENER
28+
//SYSPRINT DD SYSOUT=*
29+
//SYSIN DD DUMMY
30+
//SYSUT1 DD DSN=&&MSG3FILE,DISP=(OLD,DELETE)
31+
//SYSUT2 DD SYSOUT=*
32+
//*
33+
//* PRINT EXTRACTED ELEMENT
34+
//STEP3 EXEC PGM=IEBGENER
35+
//SYSPRINT DD SYSOUT=*
36+
//SYSIN DD DUMMY
37+
//SYSUT1 DD DSN=&&APIALAPP,DISP=(OLD,DELETE)
38+
//SYSUT2 DD SYSOUT=*
39+
//* DD DISP=SHR,DSN=YOUR.SIQ126S1.CONLIB
File renamed without changes.
File renamed without changes.
File renamed without changes.
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
REM In Windows, execute this command file to collect all Package
2+
@ECHO OFF
3+
ECHO ./ ADD NAME=@README > API-Assembler.moveout
4+
ECHO These items come from the Endevor GitHub at >> API-Assembler.moveout
5+
ECHO https://github.com/BroadcomMFD/broadcom-product-scripts >> API-Assembler.moveout
6+
ECHO ------------------------------------------------------- >> API-Assembler.moveout
7+
ECHO These are asm : APIAEADD APIAERET APIAESCL APIALAPP APIALBKO APIALDIR APIALDST APIALELM APIALPKG APIALSUM APIAPBKO >> API-Assembler.moveout
8+
ECHO These are jcl : JCLAEADD JCLAEELM JCLAERET JCLALAPP JCLALDIR JCLALELM JCLALPKG >> API-Assembler.moveout
9+
ECHO ./ ADD NAME=APIAEADD >> API-Assembler.moveout
10+
TYPE API-Assembler-Examples\APIAEADD.asm >> API-Assembler.moveout
11+
ECHO. >> API-Assembler.moveout
12+
ECHO ./ ADD NAME=APIAERET >> API-Assembler.moveout
13+
TYPE API-Assembler-Examples\APIAERET.asm >> API-Assembler.moveout
14+
ECHO. >> API-Assembler.moveout
15+
ECHO ./ ADD NAME=APIAESCL >> API-Assembler.moveout
16+
TYPE API-Assembler-Examples\APIAESCL.asm >> API-Assembler.moveout
17+
ECHO. >> API-Assembler.moveout
18+
ECHO ./ ADD NAME=APIALAPP >> API-Assembler.moveout
19+
TYPE API-Assembler-Examples\APIALAPP.asm >> API-Assembler.moveout
20+
ECHO. >> API-Assembler.moveout
21+
ECHO ./ ADD NAME=APIALBKO >> API-Assembler.moveout
22+
TYPE API-Assembler-Examples\APIALBKO.asm >> API-Assembler.moveout
23+
ECHO. >> API-Assembler.moveout
24+
ECHO ./ ADD NAME=APIALDIR >> API-Assembler.moveout
25+
TYPE API-Assembler-Examples\APIALDIR.asm >> API-Assembler.moveout
26+
ECHO. >> API-Assembler.moveout
27+
ECHO ./ ADD NAME=APIALDST >> API-Assembler.moveout
28+
TYPE API-Assembler-Examples\APIALDST.asm >> API-Assembler.moveout
29+
ECHO. >> API-Assembler.moveout
30+
ECHO ./ ADD NAME=APIALELM >> API-Assembler.moveout
31+
TYPE API-Assembler-Examples\APIALELM.asm >> API-Assembler.moveout
32+
ECHO. >> API-Assembler.moveout
33+
ECHO ./ ADD NAME=APIALPKG >> API-Assembler.moveout
34+
TYPE API-Assembler-Examples\APIALPKG.asm >> API-Assembler.moveout
35+
ECHO. >> API-Assembler.moveout
36+
ECHO ./ ADD NAME=APIALSUM >> API-Assembler.moveout
37+
TYPE API-Assembler-Examples\APIALSUM.asm >> API-Assembler.moveout
38+
ECHO. >> API-Assembler.moveout
39+
ECHO ./ ADD NAME=APIAPBKO >> API-Assembler.moveout
40+
TYPE API-Assembler-Examples\APIAPBKO.asm >> API-Assembler.moveout
41+
ECHO. >> API-Assembler.moveout
42+
ECHO ./ ADD NAME=JCLAEADD >> API-Assembler.moveout
43+
TYPE API-Assembler-Examples\JCLAEADD.jcl >> API-Assembler.moveout
44+
ECHO. >> API-Assembler.moveout
45+
ECHO ./ ADD NAME=JCLAEELM >> API-Assembler.moveout
46+
TYPE API-Assembler-Examples\JCLAEELM.jcl >> API-Assembler.moveout
47+
ECHO. >> API-Assembler.moveout
48+
ECHO ./ ADD NAME=JCLAERET >> API-Assembler.moveout
49+
TYPE API-Assembler-Examples\JCLAERET.jcl >> API-Assembler.moveout
50+
ECHO. >> API-Assembler.moveout
51+
ECHO ./ ADD NAME=JCLALAPP >> API-Assembler.moveout
52+
TYPE API-Assembler-Examples\JCLALAPP.jcl >> API-Assembler.moveout
53+
ECHO. >> API-Assembler.moveout
54+
ECHO ./ ADD NAME=JCLALDIR >> API-Assembler.moveout
55+
TYPE API-Assembler-Examples\JCLALDIR.jcl >> API-Assembler.moveout
56+
ECHO. >> API-Assembler.moveout
57+
ECHO ./ ADD NAME=JCLALELM >> API-Assembler.moveout
58+
TYPE API-Assembler-Examples\JCLALELM.jcl >> API-Assembler.moveout
59+
ECHO. >> API-Assembler.moveout
60+
ECHO ./ ADD NAME=JCLALPKG >> API-Assembler.moveout
61+
TYPE API-Assembler-Examples\JCLALPKG.jcl >> API-Assembler.moveout
62+
ECHO. >> API-Assembler.moveout
63+
REM

0 commit comments

Comments
 (0)