Skip to content

CICS SET defect fixes #2732

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -870,9 +870,9 @@ cics_set_connection: (CONNECTION cics_data_area | (ACQUIRED | RELEASED | ENDAFFI
cics_set_db2conn: ((DB2CONN | UOW | TASK | TXID | NONE | GROUP | SIGN | TERM | TX | OPID | USERID | WAIT | NOWAIT | FORCE | CGROUP | CSIGN | CTERM | CTX | COPID | CUSERID | ABEND | SQLCODE | CONNECTED | NOTCONNECTED | RELEASE | NORELEASE | HIGH | EQUAL | LOW | RESYNC | NORESYNC | NOCONNECT | CONNECT | RECONNECT | TWAIT | NOTWAIT) | SECURITY cics_rebuild |
(AUTHID | COMAUTHID | COMTHREADLIM | DB2GROUPID | DB2ID | MSGQUEUE1 | MSGQUEUE2 | MSGQUEUE3 | PLAN | PLANEXITNAME | PURGECYCLEM | PURGECYCLES | REUSELIMIT | SIGNID | STATSQUEUE | TCBLIMIT | THREADLIMIT) cics_data_value |
(ACCOUNTREC | AUTHTYPE | BUSY | COMAUTHTYPE | CONNECTERROR | CONNECTST | NONTERMREL | PRIORITY | RESYNCMEMBER | STANDBYMODE | THREADWAIT) cics_cvda | cics_handle_response)+;
cics_set_db2entry: (DB2ENTRY cics_data_area? | (UOW | TASK | TXID | NONE | GROUP | SIGN | TERM | TX | OPID | USERID | WAIT | NOWAIT | FORCE | ABEND | SQLCODE | POOL | ENABLED | DISABLED | HIGH | EQUAL | LOW | YES | NO | TWAIT | NOTWAIT | TPOOL) |
(AUTHID | PLAN | PLANEXITNAME | PROTECTNUM | THREADLIMIT) cics_data_area | (ACCOUNTREC | AUTHTYPE | BUSY | DISABLEDACT | ENABLESTATUS | PRIORITY | SHARELOCKS | THREADWAIT) cics_cvda | cics_handle_response)+;
cics_set_db2tran: (DB2TRAN | (DB2ENTRY | TRANSID) cics_data_area | cics_handle_response)+;
cics_set_db2entry: ((UOW | TASK | TXID | NONE | GROUP | SIGN | TERM | TX | OPID | USERID | WAIT | NOWAIT | FORCE | ABEND | SQLCODE | POOL | ENABLED | DISABLED | HIGH | EQUAL | LOW | YES | NO | TWAIT | NOTWAIT | TPOOL) |
(DB2ENTRY | AUTHID | PLAN | PLANEXITNAME | PROTECTNUM | THREADLIMIT) cics_data_area | (ACCOUNTREC | AUTHTYPE | BUSY | DISABLEDACT | ENABLESTATUS | PRIORITY | SHARELOCKS | THREADWAIT) cics_cvda | cics_handle_response)+;
cics_set_db2tran: ((DB2ENTRY | DB2TRAN | TRANSID) cics_data_area | cics_handle_response)+;
cics_set_deletshipped: (DELETSHIPPED | (IDLE | IDLEHRS | IDLEMINS | IDLESECS | INTERVAL | INTERVALHRS | INTERVALMINS | INTERVALSECS) cics_data_value | cics_handle_response)+;
cics_set_dispatcher: (DISPATCHER | (MAXOPENTCBS | MAXSSLTCBS | MAXXPTCBS | MROBATCH | PRTYAGING | RUNAWAY | SCANDELAY | TIME) cics_data_value | cics_handle_response)+;
cics_set_doctemplate: (DOCTEMPLATE cics_data_value | NEWCOPY | COPY cics_cvda | cics_handle_response)+;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1015,7 +1015,7 @@ private void checkDumpds(CICSParser.Cics_set_dumpdsContext ctx) {
private void checkEnqmodel(CICSParser.Cics_set_enqmodelContext ctx) {
checkHasMandatoryOptions(ctx.ENQMODEL(), ctx, "ENQMODEL");

checkHasExactlyOneOption("STATUS, ENABLED or DISABLED", ctx, ctx.STATUS(), ctx.ENABLED(), ctx.DISABLED());
checkMutuallyExclusiveOptions("STATUS, ENABLED or DISABLED", ctx.STATUS(), ctx.ENABLED(), ctx.DISABLED());
}

private void checkEpadapter(CICSParser.Cics_set_epadapterContext ctx) {
Expand All @@ -1039,7 +1039,7 @@ private void checkEventbinding(CICSParser.Cics_set_eventbindingContext ctx) {
private void checkEventprocess(CICSParser.Cics_set_eventprocessContext ctx) {
checkHasMandatoryOptions(ctx.EVENTPROCESS(), ctx, "EVENTPROCESS");

checkHasExactlyOneOption("EPSTATUS, STARTED, DRAIN or STOPPED", ctx, ctx.EPSTATUS(), ctx.STARTED(), ctx.DRAIN(), ctx.STOPPED());
checkMutuallyExclusiveOptions("EPSTATUS, STARTED, DRAIN or STOPPED", ctx.EPSTATUS(), ctx.STARTED(), ctx.DRAIN(), ctx.STOPPED());
}

private void checkFile(CICSParser.Cics_set_fileContext ctx) {
Expand Down Expand Up @@ -1088,8 +1088,7 @@ private void checkIrc(CICSParser.Cics_set_ircContext ctx) {
private void checkJournalname(CICSParser.Cics_set_journalnameContext ctx) {
checkHasMandatoryOptions(ctx.JOURNALNAME(), ctx, "JOURNALNAME");

checkHasExactlyOneOption("ACTION, FLUSH or RESET", ctx, ctx.ACTION(), ctx.FLUSH(), ctx.RESET());
checkHasExactlyOneOption("STATUS, DISABLED or ENABLED", ctx, ctx.STATUS(), ctx.DISABLED(), ctx.ENABLED());
checkMutuallyExclusiveOptions("ACTION, FLUSH, RESET, STATUS, DISABLED or ENABLED", ctx.ACTION(), ctx.FLUSH(), ctx.RESET(), ctx.STATUS(), ctx.DISABLED(), ctx.ENABLED());
}

private void checkJournalnum(CICSParser.Cics_set_journalnumContext ctx) {
Expand All @@ -1109,14 +1108,14 @@ private void checkJournalnum(CICSParser.Cics_set_journalnumContext ctx) {
private void checkJvmendpoint(CICSParser.Cics_set_jvmendpointContext ctx) {
checkHasMandatoryOptions(ctx.JVMENDPOINT(), ctx, "JVMENDPOINT");
checkHasMandatoryOptions(ctx.JVMSERVER(), ctx, "JVMSERVER");
checkHasExactlyOneOption("ENABLESTATUS, ENABLED or DISABLED", ctx, ctx.ENABLESTATUS(), ctx.DISABLED(), ctx.ENABLED());
checkMutuallyExclusiveOptions("ENABLESTATUS, ENABLED or DISABLED", ctx.ENABLESTATUS(), ctx.DISABLED(), ctx.ENABLED());
}

private void checkJvmserver(CICSParser.Cics_set_jvmserverContext ctx) {
checkHasMandatoryOptions(ctx.JVMSERVER(), ctx, "JVMSERVER");

checkMutuallyExclusiveOptions("PHASEOUT, PURGETYPE, PURGE, FORCEPURGE or KILL", ctx.PHASEOUT(), ctx.PURGETYPE(), ctx.PURGE(), ctx.FORCEPURGE(), ctx.KILL());
checkHasExactlyOneOption("ENABLESTATUS, ENABLED or DISABLED", ctx, ctx.ENABLESTATUS(), ctx.DISABLED(), ctx.ENABLED());
checkMutuallyExclusiveOptions("ENABLESTATUS, ENABLED or DISABLED", ctx.ENABLESTATUS(), ctx.ENABLED(), ctx.DISABLED());
}

private void checkLibrary(CICSParser.Cics_set_libraryContext ctx) {
Expand Down Expand Up @@ -1155,7 +1154,7 @@ private void checkMqconn(CICSParser.Cics_set_mqconnContext ctx) {
checkHasMandatoryOptions(ctx.MQCONN(), ctx, "MQCONN");

if (!ctx.WAIT().isEmpty() || !ctx.BUSY().isEmpty() || !ctx.NOWAIT().isEmpty() || !ctx.FORCE().isEmpty())
checkHasExactlyOneOption("CONNECTST, CONNECTED or NOTCONNECTED", ctx, ctx.CONNECTST(), ctx.CONNECTED(), ctx.NOTCONNECTED());
checkMutuallyExclusiveOptions("CONNECTST, CONNECTED or NOTCONNECTED", ctx.CONNECTST(), ctx.CONNECTED(), ctx.NOTCONNECTED());

checkMutuallyExclusiveOptions("WAIT, BUSY, NOWAIT or FORCE", ctx.WAIT(), ctx.BUSY(), ctx.NOWAIT(), ctx.FORCE());
checkMutuallyExclusiveOptions("CONNECTST, CONNECTED or NOTCONNECTED", ctx.CONNECTST(), ctx.CONNECTED(), ctx.NOTCONNECTED());
Expand All @@ -1166,13 +1165,8 @@ private void checkMqmonitor(CICSParser.Cics_set_mqmonitorContext ctx) {
checkHasMandatoryOptions(ctx.MQMONITOR(), ctx, "MQMONITOR");

checkMutuallyExclusiveOptions("AUTOSTATUS, AUTOSTART or NOAUTOSTART", ctx.AUTOSTATUS(), ctx.AUTOSTART(), ctx.NOAUTOSTART());

if (!ctx.AUTOSTATUS().isEmpty() || !ctx.AUTOSTART().isEmpty() || !ctx.NOAUTOSTART().isEmpty() || !ctx.ENABLESTATUS().isEmpty() || !ctx.ENABLED().isEmpty()
|| !ctx.DISABLED().isEmpty() || !ctx.MONSTATUS().isEmpty() || !ctx.STARTED().isEmpty() || !ctx.STOPPED().isEmpty()) {
checkHasExactlyOneOption("AUTOSTATUS, AUTOSTART or NOAUTOSTART", ctx, ctx.AUTOSTATUS(), ctx.AUTOSTART(), ctx.NOAUTOSTART());
checkHasExactlyOneOption("ENABLESTATUS, ENABLED or DISABLED", ctx, ctx.ENABLESTATUS(), ctx.ENABLED(), ctx.DISABLED());
checkHasExactlyOneOption("MONSTATUS, STARTED or STOPPED", ctx, ctx.MONSTATUS(), ctx.STARTED(), ctx.STOPPED());
}
checkMutuallyExclusiveOptions("ENABLESTATUS, ENABLED or DISABLED", ctx.ENABLESTATUS(), ctx.ENABLED(), ctx.DISABLED());
checkMutuallyExclusiveOptions("MONSTATUS, STARTED or STOPPED", ctx.MONSTATUS(), ctx.STARTED(), ctx.STOPPED());
}

private void checkNetname(CICSParser.Cics_set_netnameContext ctx) {
Expand Down Expand Up @@ -1232,12 +1226,9 @@ private void checkSecdiscovery(CICSParser.Cics_set_secdiscoveryContext ctx) {
private void checkSecrecording(CICSParser.Cics_set_secrecordingContext ctx) {
checkHasMandatoryOptions(ctx.SECRECORDING(), ctx, "SECRECORDING");

checkPrerequisiteIsMet(ctx.ADD(), ctx.MAXIMUM(), ctx, "MAXIMUM without ADD");
checkAllOptionsArePresentOrAbsent("ADD and MAXIMUM", ctx, ctx.ADD(), ctx.MAXIMUM());

checkMutuallyExclusiveOptions("ACTION, ADD MAXIMUM, MODIFY or REMOVE", ctx.ACTION(), ctx.ADD(), ctx.MODIFY(), ctx.REMOVE());
checkMutuallyExclusiveOptions("ODADPTRID, ODADPTRDATA1, ODADPTRDATA2, ODADPTRDATA3, ODAPPLID, ODCLNTIPADDR, ODCLNTPORT, ODFACILNAME, ODFACILTYPE, ODIPFAMILY, ODLUNAME, ODNETID, ODNETWORKID, ODSERVERPORT, ODTCPIPS, ODTRANSID or ODUSERID",
ctx.ODADPTRID(), ctx.ODADPTRDATA1(), ctx.ODADPTRDATA2(), ctx.ODADPTRDATA3(), ctx.ODAPPLID(), ctx.ODCLNTIPADDR(), ctx.ODCLNTPORT(), ctx.ODFACILNAME(), ctx.ODFACILTYPE(), ctx.ODIPFAMILY(), ctx.ODLUNAME(), ctx.ODNETID(),
ctx.ODNETWORKID(), ctx.ODSERVERPORT(), ctx.ODTCPIPS(), ctx.ODTRANSID(), ctx.ODUSERID());
checkHasExactlyOneOption("ACTION, ADD MAXIMUM, MODIFY or REMOVE", ctx, ctx.ACTION(), ctx.ADD(), ctx.MODIFY(), ctx.REMOVE());
}

private void checkStatistics(CICSParser.Cics_set_statisticsContext ctx) {
Expand Down Expand Up @@ -1299,16 +1290,12 @@ private void checkTclass(CICSParser.Cics_set_tclassContext ctx) {
private void checkTcpip(CICSParser.Cics_set_tcpipContext ctx) {
checkHasMandatoryOptions(ctx.TCPIP(), ctx, "TCPIP");

checkHasMandatoryOptions(ctx.MAXSOCKETS(), ctx, "MAXSOCKETS");
checkHasMandatoryOptions(ctx.NEWMAXSOCKET(), ctx, "NEWMAXSOCKET");
checkMutuallyExclusiveOptions("OPENSTATUS, CLOSED, IMMCLOSE or OPEN", ctx.OPENSTATUS(), ctx.CLOSED(), ctx.IMMCLOSE(), ctx.OPEN());
}

private void checkTcpipservice(CICSParser.Cics_set_tcpipserviceContext ctx) {
checkHasMandatoryOptions(ctx.TCPIPSERVICE(), ctx, "TCPIPSERVICE");

checkHasMandatoryOptions(ctx.BACKLOG(), ctx, "BACKLOG");
checkHasMandatoryOptions(ctx.MAXDATALEN(), ctx, "MAXDATALEN");
checkMutuallyExclusiveOptions("OPENSTATUS, CLOSED, IMMCLOSE or OPEN", ctx.OPENSTATUS(), ctx.CLOSED(), ctx.IMMCLOSE(), ctx.OPEN());
}

Expand All @@ -1322,8 +1309,6 @@ private void checkTdqueue(CICSParser.Cics_set_tdqueueContext ctx) {

private void checkTempstorage(CICSParser.Cics_set_tempstorageContext ctx) {
checkHasMandatoryOptions(ctx.TEMPSTORAGE(), ctx, "TEMPSTORAGE");

checkHasMandatoryOptions(ctx.TSMAINLIMIT(), ctx, "TSMAINLIMIT");
}

private void checkTerminal(CICSParser.Cics_set_terminalContext ctx) {
Expand Down Expand Up @@ -1465,7 +1450,7 @@ private void checkTsqueue(CICSParser.Cics_set_tsqueueContext ctx) {
private void checkUow(CICSParser.Cics_set_uowContext ctx) {
checkHasMandatoryOptions(ctx.UOW(), ctx, "UOW");

checkHasExactlyOneOption("UOWSTATE, COMMIT, BACKOUT or FORCE", ctx, ctx.UOWSTATE(), ctx.COMMIT(), ctx.BACKOUT(), ctx.FORCE());
checkMutuallyExclusiveOptions("UOWSTATE, COMMIT, BACKOUT or FORCE", ctx.UOWSTATE(), ctx.COMMIT(), ctx.BACKOUT(), ctx.FORCE());
}

private void checkUowlink(CICSParser.Cics_set_uowlinkContext ctx) {
Expand Down
Loading
Loading