Interface IProgramDefinition
-
- All Superinterfaces:
ICICSDefinition
,ICICSObject
,IDefinition
,com.ibm.cics.model.meta.ITypedObject
public interface IProgramDefinition extends ICICSDefinition
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
IProgramDefinition.ApiValue
Enumeration type for field APIstatic class
IProgramDefinition.ChangeAgentValue
Enumeration type for field CHANGEAGENTstatic class
IProgramDefinition.ConcurrencyValue
Enumeration type for field CONCURRENCYstatic class
IProgramDefinition.DatalocationValue
Enumeration type for field DATALOCATIONstatic class
IProgramDefinition.ExeckeyValue
Enumeration type for field EXECKEYstatic class
IProgramDefinition.ExecutionsetValue
Enumeration type for field EXECUTIONSETstatic class
IProgramDefinition.JvmValue
Enumeration type for field JVMstatic class
IProgramDefinition.LanguageValue
Enumeration type for field LANGUAGEstatic class
IProgramDefinition.UsageValue
Enumeration type for field USAGE
-
Field Summary
-
Fields inherited from interface com.ibm.cics.model.ICICSDefinition
COPYRIGHT
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IProgramDefinition.ApiValue
getApi()
Getter for field APIICICSEnums.YesNoValue
getCedf()
Getter for field CEDFIProgramDefinition.ChangeAgentValue
getChangeAgent()
Getter for field CHANGEAGENTICICSDefinitionReference<IProgramDefinition>
getCICSObjectReference()
IProgramDefinition.ConcurrencyValue
getConcurrency()
Getter for field CONCURRENCYIProgramDefinition.DatalocationValue
getDatalocation()
Getter for field DATALOCATIONICICSEnums.YesNoValue
getDynamic()
Getter for field DYNAMICIProgramDefinition.ExeckeyValue
getExeckey()
Getter for field EXECKEYIProgramDefinition.ExecutionsetValue
getExecutionset()
Getter for field EXECUTIONSETICICSEnums.YesNoValue
getHotpool()
Getter for field HOTPOOLIProgramDefinition.JvmValue
getJvm()
Getter for field JVMjava.lang.String
getJvmclass()
Getter for field JVMCLASSjava.lang.String
getJvmprofile()
Getter for field JVMPROFILEjava.lang.String
getJvmserver()
Getter for field JVMSERVERIProgramDefinition.LanguageValue
getLanguage()
Getter for field LANGUAGEICICSType<IProgramDefinition>
getObjectType()
ICICSEnums.YesNoValue
getReload()
Getter for field RELOADjava.lang.String
getRemotename()
Getter for field REMOTENAMEjava.lang.String
getRemotesystem()
Getter for field REMOTESYSTEMICICSEnums.YesNoValue
getResident()
Getter for field RESIDENTICICSEnums.EnablementValue
getStatus()
Getter for field STATUSjava.lang.String
getTransid()
Getter for field TRANSIDIProgramDefinition.UsageValue
getUsage()
Getter for field USAGEICICSEnums.YesNoValue
getUselpacopy()
Getter for field USELPACOPYjava.lang.String
getUserdata1()
Getter for field USERDATA1java.lang.String
getUserdata2()
Getter for field USERDATA2java.lang.String
getUserdata3()
Getter for field USERDATA3-
Methods inherited from interface com.ibm.cics.model.ICICSDefinition
getChangeAgentRelease, getChangeTime, getChangeUserID, getCICSContainer, getCreateTime, getCSDGroup, getDescription, getVersion
-
Methods inherited from interface com.ibm.cics.model.ICICSObject
getCICSType, getName
-
-
-
-
Method Detail
-
getObjectType
ICICSType<IProgramDefinition> getObjectType()
- Specified by:
getObjectType
in interfaceICICSDefinition
- Specified by:
getObjectType
in interfaceICICSObject
- Specified by:
getObjectType
in interfaceIDefinition
- Specified by:
getObjectType
in interfacecom.ibm.cics.model.meta.ITypedObject
-
getChangeAgent
IProgramDefinition.ChangeAgentValue getChangeAgent()
Getter for field CHANGEAGENTLast modification agent
The change agent identifier that made the last modification.
- CSDAPI - The resource was last changed by a CEDA transaction, by the programmable interface to DFHEDAP or by an EXEC CICS CSD command.
- CSDBATCH - The resource was last changed by a DFHCSDUP job.
- DREPAPI - Resource was last changed by a CICSPlex SM API command.
- N_A - Resource was created or last updated prior to CICS TS Version 4 Release 1 and support for resource signatures.
-
getCedf
ICICSEnums.YesNoValue getCedf()
Getter for field CEDFDisplay execution diagnostic facility (EDF) screens
Indicates whether EDF diagnostic screens are displayed. If the program was translated with the EDF option, all EDF screens are displayed; if it was translated with NOEDF, only the program initiation and termination screens appear. CVDA values are:
- CEDF - EDF diagnostic screens are displayed. If the program was translated with the EDF option, all EDF screens are displayed; if it was translated with NOEDF, only the program initiation and termination screens appear.
- NOCEDF - No EDF screens are displayed.
- NOTAPPLIC - EDF is not applicable because the module is a remote program, a map set, or a partition set.
-
getDatalocation
IProgramDefinition.DatalocationValue getDatalocation()
Getter for field DATALOCATIONData location
Indicates whether this module can accept data addresses higher than 16MB. CVDA values are:
- ANY - The program can accept an address above 16MB.
- BELOW - The program requires any data address returned to it from CICS to be less than 16MB.
- NOTAPPLIC - The option is not applicable because the module is a remote program, a map set, or a partition set.
-
getExeckey
IProgramDefinition.ExeckeyValue getExeckey()
Getter for field EXECKEYProgram execution key
The key in which CICS gives control to the program, and determines whether the program can modify CICS-key storage.
- CICS - This specifies that CICS is to give control to the program in CICS key when it is invoked.
- USER - This specifies that CICS is to give control to the program in user key when it is invoked
-
getExecutionset
IProgramDefinition.ExecutionsetValue getExecutionset()
Getter for field EXECUTIONSETAPI subset restriction type
Specifies whether you want CICS to link to and run a program as if it were running in a remote CICS region.
-
getLanguage
IProgramDefinition.LanguageValue getLanguage()
Getter for field LANGUAGELanguage
The program language. Options are: ASSEMBLER, C, COBOL, LE370, PLI.
Specify LE370 if the program exploits multi-language support, or if the program has been compiled by a Language Environment-conforming compiler.
In most cases, you do not need to specify the LANGUAGE attribute, because the CICS program manager deduces the correct language and ignores the value you have specified. If the language is not specified, and CICS cannot deduce it, transactions that attempt to use the program will aband with code ALIG.
-
getReload
ICICSEnums.YesNoValue getReload()
Getter for field RELOADReload new copy
Specifies whether a program control link, load, or XCTL request is to bring in a fresh copy of a program. This attribute does not apply to JVM programs.
- NO - Any valid copy of the program currently in storage is reused for the request.
- YES - A fresh copy of the program is brought into storage for every request. Furthermore,
each of these program copies must be removed from storage explicitly, using a storage control
FREEMAIN request, when it is no longer required and before the transaction terminates. If the
relevant FREEMAINs are not issued, areas of the DSA/EDSA become tied up with inaccessible
program copies, potentially causing storage shortage or fragmentation. Note: If a new version
of the program has been placed in the LIBRARY concatenation, a NEWCOPY or PHASEIN must be
issued for the program before the new version will be loaded.
RELOAD(YES) can be used to load tables or control blocks that are modified by execution of any associated programs. It should not be specified for the first program loaded for a task. This is because the task would have no way of issuing a FREEMAIN for the program.
You must specify RELOAD(YES) for nonreentrant programs.
-
getStatus
ICICSEnums.EnablementValue getStatus()
Getter for field STATUSEnabled status
Indicates whether the module is available for use. CVDA values are:
- DISABLED - The module is not available for use.
- ENABLED - The module is available for use.
-
getUselpacopy
ICICSEnums.YesNoValue getUselpacopy()
Getter for field USELPACOPYUse program from the link pack area (LPA)
Specifies whether the program is to be used from the link pack area (LPA). This attribute does not apply to JVM programs.
- NO - The program is not to be used from the LPA. It is loaded into the CICS address space.
- YES - The program can be used from the LPA if LPA=YES is specified as a system initialization parameter
-
getUsage
IProgramDefinition.UsageValue getUsage()
Getter for field USAGEProgram storage release
Indicates when the storage for this program should be released:
- NORMAL : When the use count of the program reaches zero, it becomes eligible for removal from storage as part of the normal dynamic storage compression process.
- TRANSIENT : When the use count of the program reaches zero, the storage is released.
-
getResident
ICICSEnums.YesNoValue getResident()
Getter for field RESIDENTResidence status
The residence status of the program. This attribute does not apply to JVM programs.
-
getRemotename
java.lang.String getRemotename()
Getter for field REMOTENAMEProgram name in remote system
(Optional.) Specifies, if the program resides on a remote system, the name by which the program is known in the remote CICS region. If you specify REMOTESYSTEM and omit REMOTENAME, this attribute defaults to the same name as the local name (that is, the program name on this resource definition).
-
getRemotesystem
java.lang.String getRemotesystem()
Getter for field REMOTESYSTEMRemote system name
(Optional.) If you want CICS to ship a DPL request to another CICS system, specify the system ID of the remote system. If REMOTENAME is specified then a value must be specified for REMOTESYSTEM. This value must be the name of the connection definition (CONNDEF or IPCONDEF) for the link to the remote system. CICSPlex SM uses this system ID only if the program is part of a resource group that is directly associated with a resource description (via RESINDSC). If the program is being assigned by a resource assignment (RASGNDEF), CICSPlex SM sets the remote system according to the rules, as follows:
- USAGE(LOCAL) MODE(N/A): Remote system value from program definition is used.
- USAGE(REMOTE) MODE(DYNAM): Remote system value from program definition is used.
- USAGE(REMOTE) MODE(STAT): Remote system value set to the SYSID of the related system.
-
getTransid
java.lang.String getTransid()
Getter for field TRANSIDMirror transaction name for remote attach
If the program is dynamic, this is the default TRANSID used for the distributed program link (DPL) request. If the program is not dynamic, this specifies the name of the transaction you want the remote CICS to attach, and under which it is to run the remote program. If you do not specify a transaction name on the TRANSID attribute, the remote region executes the DPL program under one of the CICS-supplied default mirror transactions.
-
getUserdata1
java.lang.String getUserdata1()
Getter for field USERDATA1User data area 1
Optional string of up to 8 characters that allows you to provide additional site-specific data related to the BAS resource definition. This field is ignored for CICS CSD resource definitions.
-
getUserdata2
java.lang.String getUserdata2()
Getter for field USERDATA2User data area 2
Optional string of up to 8 characters that allows you to provide additional site-specific data related to the BAS resource definition. This field is ignored for CICS CSD resource definitions.
-
getUserdata3
java.lang.String getUserdata3()
Getter for field USERDATA3User data area 3
Optional string of up to 8 characters that allows you to provide additional site-specific data related to the BAS resource definition. This field is ignored for CICS CSD resource definitions.
-
getDynamic
ICICSEnums.YesNoValue getDynamic()
Getter for field DYNAMICDynamic routing status
Indicates whether, if the program is the subject of a program-link request, the request can be dynamically routed. CVDA values are:
- DYNAMIC - If the program is the subject of a program-link request, the CICS dynamic routing program is invoked. Providing that a remote server region is not named explicitly on the SYSID option of the LINK command, the routing program can route the request to the region on which the program is to execute.
- NOTDYNAMIC - If the program is the subject of a program-link request, the dynamic routing program is not invoked. For a distributed program link (DPL) request, the server region on which the program is to execute must be specified explicitly on the REMOTESYSTEM option of the PROGRAM definition or on the SYSID option of the LINK command; otherwise it defaults to the local region.
-
getConcurrency
IProgramDefinition.ConcurrencyValue getConcurrency()
Getter for field CONCURRENCYConcurrency status
The concurrency attribute of the installed program definition. The CVDA values are:
- QUASIRENT - The program is defined as being quasi-reentrant, and is able to run only under the CICS QR TCB.
- THREADSAFE - The program is defined as threadsafe, and is able to run under whichever TCB is in use by its user task when the program is given control. This could be either an open TCB or the CICS QR TCB. The program must be coded to threadsafe standards.
- REQUIRED - The program is required to run on an open TCB. The type of open TCB used
depends on the setting of the Application program interface attribute and the language of the
program.
- For Java programs a T8, J8 or J9 is used. J8 and J9 TCBs are obsolete from CICS Transaction Server Version 5 onwards.
- For C or C++ XPLINK programs an X8 or X9 is used.
- For Cobol, Pli, non-xplink C and assembler programs if CICSAPI is set, an L8 TCB is always used as CICS services run in CICS key or USER key regardless of the key of the TCB. If OPENAPI is set, then an L8 or an L9 TCB is used dependent upon the execution key of the program.
-
getJvm
IProgramDefinition.JvmValue getJvm()
Getter for field JVMJava virtual machine (JVM) mode
Specifies whether or not the program is a Java program that has to operate under the control of a Java Virtual Machine (JVM).
-
getJvmclass
java.lang.String getJvmclass()
Getter for field JVMCLASSJava virtual machine (JVM) class
- For OSGi bundles in an OSGi JVM server this value is the name of the OSGi service.
- For Liberty applications in a Liberty JVM server this is the name of the service.
- For Java programs in a JVM pool this is the class name qualified by the package name.
-
getHotpool
ICICSEnums.YesNoValue getHotpool()
Getter for field HOTPOOLHot pooling status
The HOTPOOLING option is obsolete.
-
getJvmprofile
java.lang.String getJvmprofile()
Getter for field JVMPROFILEJava virtual machine (JVM) profile
This is obsolete from CICS TS Version 5 Release 1. The JVM profile name. The name can be up to eight characters in length. Do not use profile names beginning with DFH, because these characters are reserved for use by CICS.
-
getApi
IProgramDefinition.ApiValue getApi()
Getter for field APIApplication program interfaces
The API attribute of the installed program definition. The API attribute is used for application programs, PLT programs, user replaceable modules and task related user exits. The API attribute is not used for global user exits. CVDA values are:
- CICSAPI - The program is restricted to use of the CICS permitted application programming interfaces only. Dependent upon the program's CONCURRENCY setting, the application will either always run on the quasi-reentrant (QR) TCB, or if it is defined as threadsafe it may run on whichever TCB in use by CICS at the time which is determined as suitable.
- OPENAPI - The program is not restricted to the CICS permitted application programming interfaces only. CICS will execute the program on its own open TCB dependent upon the EXECKEY setting. If when executing a CICS command, CICS requires a switch to QR TCB, it will return to the open TCB before handing control back to the application program. OPENAPI requires the program to be coded to threadsafe standards and defined with CONCURRENCY(REQUIRED).
-
getJvmserver
java.lang.String getJvmserver()
Getter for field JVMSERVERJava virtual machine (JVM) server
The JVMSERVER resource to be used by this PROGRAM. The name can be up to eight characters in length. You must specify an EXECKEY of CICS and a Concurrency status of REQUIRED if the PROGRAM uses a JVMSERVER.
-
getCICSObjectReference
ICICSDefinitionReference<IProgramDefinition> getCICSObjectReference()
- Specified by:
getCICSObjectReference
in interfaceICICSDefinition
- Specified by:
getCICSObjectReference
in interfaceICICSObject
- Specified by:
getCICSObjectReference
in interfaceIDefinition
-
-