com.ibm.as400.access.JavaProgram Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jt400 Show documentation
Show all versions of jt400 Show documentation
The Open Source version of the IBM Toolbox for Java
The newest version!
///////////////////////////////////////////////////////////////////////////////
//
// JTOpen (IBM Toolbox for Java - OSS version)
//
// Filename: JavaProgram.java
//
// The source code contained herein is licensed under the IBM Public License
// Version 1.0, which has been approved by the Open Source Initiative.
// Copyright (C) 1997-2003 International Business Machines Corporation and
// others. All rights reserved.
//
///////////////////////////////////////////////////////////////////////////////
package com.ibm.as400.access;
import java.io.IOException;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Calendar;
import java.util.Date;
/**
Represents an IBM i Java program. This class is supported
only when connecting to systems running IBM i V5R1 or higher, and is not supported beyond IBM i 7.1.
In the context of this discussion, a "Java program" is the IBM i executable object that is created when the CRTJVAPGM (Create Java Program) CL command is run against a class, JAR, or ZIP file.
Using the JavaProgram class, you can obtain the following information about an IBM i Java program:
- Adopted authority profile
- File change date
- File owner
- Java program creation date
- Release program was created for
- Licensed Internal Code options
- Number of attached java programs
- Number of classes
- Number of classes with current java programs
- Number of classes without current java programs
- Number of classes with errors
- Optimization level
- Path used
- Performance Collection Enabled flag
- Performance Collection type
- Profiling data status
- Size of attached java programs
- Use adopted authority
An Example using the JavaProgram class:
// Create a JavaProgram object to refer to a specific Java program.
AS400 system = new AS400("MYSYSTEM", "MYUSERID", "MYPASSWORD");
JavaProgram javaProgram = new JavaProgram(system, "/home/mydir/HelloWorld.class");
// Get the optimization.
int optimization = javaProgram.getOptimizationLevel();
// Get the file owner.
String owner = javaProgram.getFileOwner();
**/
public class JavaProgram implements Serializable
{
static final long serialVersionUID = -209990140140936884L;
private boolean loaded_ = false; // Have we retrieved values from the system yet?
private AS400 system_;
private String path_;
private String fileOwner_;
private Date fileChangeDate_;
private Date javaProgramCreationDate_;
private int numberOfAttachedPrograms_;
private int numberOfClassesWithJavaPrograms_;
private int numberOfClassesWithoutPrograms_;
private int numberOfClassesWithErrors_;
private int numberOfClasses_;
private int optimizationLevel_;
private String performanceCollectionEnabledFlag_;
private String performanceCollectionType_;
private boolean useAdoptedAuthority_;
private String adoptedAuthorityProfile_;
private int sizeOfAttachedPrograms_;
private String javaProgramVersion_;
private String profilingDataStatus_;
private String LICoptions_;
/**
Constant indicating that the profile to use when the use adopted authority field is set is *USER.
**/
public static final String ADOPTED_AUTHORITY_PROFILE_USER = "*USER";
/**
Constant indicating that the profile to use when the use adopted authority field is set is *OWNER.
**/
public static final String ADOPTED_AUTHORITY_PROFILE_OWNER = "*OWNER";
/**
Constant indicating the type of performance collection is *ENTRYEXIT.
**/
public static final String PERFORMANCE_COLLECTION_TYPE_ENTRYEXIT = "*ENTRYEXIT";
/**
Constant indicating the type of performance collection is *FULL.
**/
public static final String PERFORMANCE_COLLECTION_TYPE_FULL = "*FULL";
/**
Constant indicating that profile data collection is not enabled for the the Java program(s).
**/
public static final String PROFILING_DATA_STATUS_NOCOL = "*NOCOL";
/**
Constant indicating that profile data collection is enabled for the attached Java program(s).
**/
public static final String PROFILING_DATA_STATUS_COL = "*COL";
/**
Constant indicating that profile data has been applied to the attached Java program(s).
**/
public static final String PROFILING_DATA_STATUS_APY = "*APY";
/**
Creates a JavaProgram
**/
public JavaProgram()
{
}
/**
Creates a JavaProgram
@param system The system.
@param path The path. This can specify any class, jar, or zip file.
**/
public JavaProgram(AS400 system, String path)
{
setSystem(system);
setPath(path);
}
private void checkVRM()
throws UnsupportedOperationException
{
try
{
// See if the system VRM is higher than IBM i 7.1.
if (getSystem() != null && getSystem().getVRM() > 0x00070100) {
Trace.log(Trace.ERROR, "JavaProgram is not supported beyond IBM i 7.1.");
throw new UnsupportedOperationException("JavaProgram");
}
}
catch (UnsupportedOperationException e) { throw e; }
catch (Exception e) {
if (Trace.isTraceOn())
Trace.log(Trace.ERROR, "Error when checking system VRM.", e);
throw new UnsupportedOperationException(e);
}
}
/**
Returns the name of the system.
@return system name
**/
public AS400 getSystem()
{
return system_;
}
/**
Returns the path to a class, jar, or zip file used to create the Java program.
@return path
**/
public String getPath()
{
return path_;
}
/**
Returns the profile to use when the "Use Adopted Authority" field is set.
@return the profile to use. Possible values are:
- {@link #ADOPTED_AUTHORITY_PROFILE_USER ADOPTED_AUTHORITY_PROFILE_USER}
- {@link #ADOPTED_AUTHORITY_PROFILE_OWNER ADOPTED_AUTHORITY_PROFILE_OWNER}
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getAdoptedAuthorityProfile()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if (!loaded_) refresh();
if(adoptedAuthorityProfile_.equals("0"))
return ADOPTED_AUTHORITY_PROFILE_USER;
else
return ADOPTED_AUTHORITY_PROFILE_OWNER;
}
/**
Returns the date and time the file was last modified or changed.
@return the last-changed date and time
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public Date getFileChangeDate()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return (Date)fileChangeDate_.clone();
}
/**
Returns the name of the owner of the file.
The string is in job CCSID
@return the file owner
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getFileOwner()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return fileOwner_;
}
/**
Returns the date and time the Java program was created for the file.
@return the creation date
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public Date getJavaProgramCreationDate()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return (Date)javaProgramCreationDate_.clone();
}
/**
Returns the IBM i version the Java program was created for.
@return the version
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getJavaProgramVersion()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return javaProgramVersion_;
}
/**
Returns the number of classes.
@return the number of classes.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getNumberOfClasses()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return numberOfClasses_;
}
/**
Returns the number of classes with representations up-to-date in the attached Java programs.
@return the number of classes with current java programs.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getNumberOfClassesWithCurrentJavaPrograms()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return numberOfClassesWithJavaPrograms_;
}
/**
Returns the number of classes containing errors.
@return the number of classes with errors.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getNumberOfClassesWithErrors()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return numberOfClassesWithErrors_;
}
/**
Returns the number of classes with representations out-of-date.
@return the number of classes without current java programs.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getNumberOfClassesWithoutCurrentJavaPrograms()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return numberOfClassesWithoutPrograms_;
}
/**
Returns the number of Java prgroams attached to the .class or .jar/sip file.
@return the number of programs
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getNumberOfAttachedPrograms()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return numberOfAttachedPrograms_;
}
/**
Returns the optimization level used to create the java program.
@return the optimization level. Possible values are:
- 0
- 10
- 20
- 30
- 40
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getOptimizationLevel()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return optimizationLevel_;
}
/**
Returns whether or not performance collection is enabled.
@return the performance collection enabled flag. Possible values are:
- 0 - "NONE
- 1 - on
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getPerformanceCollectionEnabledFlag()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return performanceCollectionEnabledFlag_;
}
/**
Returns the type of performance collection if the performance collection flag is set.
@return the type of performance collection. Possible values are:
- {@link #PERFORMANCE_COLLECTION_TYPE_ENTRYEXIT PERFORMANCE_COLLECTION_TYPE_ENTRYEXIT}
- {@link #PERFORMANCE_COLLECTION_TYPE_FULL PERFORMANCE_COLLECTION_TYPE_FULL}
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getPerformanceCollectionType()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
if(performanceCollectionType_.equals("0"))
return PERFORMANCE_COLLECTION_TYPE_ENTRYEXIT;
else
return PERFORMANCE_COLLECTION_TYPE_FULL;
}
/**
Returns whether or not the used adopted authority is set.
@return true if the use adopted authority is set, false otherwise
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public boolean isUseAdoptedAuthority()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return useAdoptedAuthority_;
}
/**
Returns the size in kilobytes of all the attached java programs.
@return the size
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public int getSizeOfAttachedJavaPrograms()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return sizeOfAttachedPrograms_;
}
/**
Returns whether profiling data is enabled or applied.
@return whether profiling data is enabled or applied. Possible values are:
- {@link #PROFILING_DATA_STATUS_NOCOL PROFILING_DATA_STATUS_NOCOL}
- {@link #PROFILING_DATA_STATUS_COL PROFILING_DATA_STATUS_COL}
- {@link #PROFILING_DATA_STATUS_APY PROFILING_DATA_STATUS_APY}
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getProfilingDataStatus()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
if(profilingDataStatus_.equals("0"))
return PROFILING_DATA_STATUS_NOCOL;
else if(profilingDataStatus_.equals("1"))
return PROFILING_DATA_STATUS_COL;
else
return PROFILING_DATA_STATUS_APY;
}
/**
Returns the LIC options string specified when the java program was last modified.
@return the LIC options.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws IOException If an error occurs while communicating with the system.
* @throws ObjectDoesNotExistException If the object does not exist.
**/
public String getLICOptions()
throws AS400Exception,
AS400SecurityException,
ErrorCompletingRequestException,
InterruptedException,
IOException,
ObjectDoesNotExistException
{
if(!loaded_) refresh();
return LICoptions_;
}
/**
Refreshes all the values for this PTF by retrieving them from the system.
* @throws AS400Exception If an error occurs.
* @throws AS400SecurityException If a security or authority error occurs.
* @throws ConnectionDroppedException If the connection is dropped.
* @throws ErrorCompletingRequestException If an error occurs before the request is completed.
* @throws InterruptedException If this thread is interrupted.
* @throws ObjectDoesNotExistException If the object does not exist.
* @throws IOException If an error occurs while communicating with the system.
* @throws UnsupportedEncodingException If the Character Encoding is not supported.
**/
public void refresh()
throws AS400Exception,
AS400SecurityException,
ConnectionDroppedException,
ErrorCompletingRequestException,
InterruptedException,
ObjectDoesNotExistException,
IOException,
UnsupportedEncodingException
{
checkVRM();
int ccsid = system_.getCcsid();
ConvTable conv = ConvTable.getTable(ccsid, null);
int len=4096;
ProgramParameter[] parms = new ProgramParameter[15];
parms[0] = new ProgramParameter(len); // receiver variable
parms[1] = new ProgramParameter(BinaryConverter.intToByteArray(len)); // length of receiver variable
parms[2] = new ProgramParameter(conv.stringToByteArray("RJPI0100")); // format name
parms[3] = new ProgramParameter(0); //Class list receiver variable
parms[4] = new ProgramParameter(BinaryConverter.intToByteArray(0)); //Length of class list receiver variable
parms[5] = new ProgramParameter(conv.stringToByteArray("RJPC0100")); //format of class list receiver variable
parms[6] = new ProgramParameter(conv.stringToByteArray(path_)); //path name
parms[7] = new ProgramParameter(BinaryConverter.intToByteArray(path_.length())); //length of path name
parms[8] = new ProgramParameter(conv.stringToByteArray(" ")); //classpath
parms[9] = new ProgramParameter(BinaryConverter.intToByteArray(0)); //length of classpath
parms[10] = new ProgramParameter(0); //classpath used receiver variable
parms[11] = new ProgramParameter(BinaryConverter.intToByteArray(0)); //length of classpath used receiver variable
parms[12] = new ProgramParameter(BinaryConverter.intToByteArray(1)); //status of calsses to return in the class list
parms[13] = new ProgramParameter(conv.stringToByteArray("*PGM")); //JDK version
parms[14] = new ProgramParameter(BinaryConverter.intToByteArray(0)); // error code
ProgramCall pc = new ProgramCall(system_, "/QSYS.LIB/QJVAMAT.PGM", parms);
// Assumption of thread-safety defaults to false, or to the value of the "threadSafe" system property (if it has been set).
//pc.setThreadSafe(false);
if (!pc.run())
{
throw new AS400Exception(pc.getMessageList());
}
byte[] output = parms[0].getOutputData();
//int bytesReturned = BinaryConverter.byteArrayToInt(output, 0);
//int bytesAvailable = BinaryConverter.byteArrayToInt(output, 4);
fileOwner_ = conv.byteArrayToString(output, 8, 10);
String d = conv.byteArrayToString(output, 18, 13);
// Parse the "file change" date
if (d.trim().length() == 13)
{
Calendar cal = AS400Calendar.getGregorianInstance();
cal.clear();
cal.set(Integer.parseInt(d.substring(0,3)) + 1900, // year
Integer.parseInt(d.substring(3,5))-1, // month is zero-based
Integer.parseInt(d.substring(5,7)), // day
Integer.parseInt(d.substring(7,9)), // hour
Integer.parseInt(d.substring(9,11)), // minute
Integer.parseInt(d.substring(11,13))); // second
fileChangeDate_ = cal.getTime();
}
else
{
fileChangeDate_ = null;
}
d = conv.byteArrayToString(output, 31, 13);
//Parse the "Java program creation" date
if (d.trim().length() == 13)
{
Calendar cal = AS400Calendar.getGregorianInstance();
cal.clear();
cal.set(Integer.parseInt(d.substring(0,3)) + 1900, // year
Integer.parseInt(d.substring(3,5))-1, // month is zero-based
Integer.parseInt(d.substring(5,7)), // day
Integer.parseInt(d.substring(7,9)), // hour
Integer.parseInt(d.substring(9,11)), // minute
Integer.parseInt(d.substring(11,13))); // second
javaProgramCreationDate_ = cal.getTime();
}
else
{
javaProgramCreationDate_ = null;
}
numberOfAttachedPrograms_ = BinaryConverter.byteArrayToInt(output, 44);
numberOfClassesWithJavaPrograms_ = BinaryConverter.byteArrayToInt(output, 48);
numberOfClassesWithoutPrograms_ = BinaryConverter.byteArrayToInt(output, 52);
numberOfClassesWithErrors_ = BinaryConverter.byteArrayToInt(output, 56);
numberOfClasses_ = BinaryConverter.byteArrayToInt(output, 60);
optimizationLevel_ = BinaryConverter.byteArrayToInt(output, 64);
performanceCollectionEnabledFlag_ = conv.byteArrayToString(output, 68, 1);
performanceCollectionType_ = conv.byteArrayToString(output, 69, 1);
String useAdopAuthority = conv.byteArrayToString(output, 70, 1);
adoptedAuthorityProfile_ = conv.byteArrayToString(output, 71, 1);
sizeOfAttachedPrograms_ = BinaryConverter.byteArrayToInt(output, 72);
String version = Integer.toString( (output[76] & 0xff ) + 0x100, 16 /* radix */ ) .substring( 1 ); //get version
String release = Integer.toString( (output[77] & 0xff ) + 0x100, 16 /* radix */ ) .substring( 1 ); //get release and modification
javaProgramVersion_ = getVersion((version + release).toCharArray());
profilingDataStatus_ = Byte.toString(output[78]);
int offsetToLICOptions = BinaryConverter.byteArrayToInt(output, 80);
int lengthOfLIC = BinaryConverter.byteArrayToInt(output, 84);
int lengthOfAvailableLIC = BinaryConverter.byteArrayToInt(output, 88);
LICoptions_ = conv.byteArrayToString(output, offsetToLICOptions, lengthOfLIC);
if(useAdopAuthority.equals("0"))
useAdoptedAuthority_ = false;
else
useAdoptedAuthority_ = true;
loaded_= true;
}
/**
Gets the IBM i version.
**/
private String getVersion(char[] version)
{
String v = "V";
String r = "R";
String m = "M";
if(version[0] != '0')
v += version[0];
v += version[1];
r += version[2];
m += version[3];
return v+r+m;
}
/**
Sets the name of the system to search for a Java Program.
@param system The system
**/
public void setSystem(AS400 system)
{
if(loaded_)
throw new ExtendedIllegalStateException("propertiesFrozen", ExtendedIllegalStateException.PROPERTY_NOT_CHANGED);
if(system == null)
throw new NullPointerException("system");
system_ = system;
}
/**
Sets the qualified path name to use.
@param path - the qualified path name.
**/
public void setPath(String path)
{
if(loaded_)
throw new ExtendedIllegalStateException("propertiesFrozen", ExtendedIllegalStateException.PROPERTY_NOT_CHANGED);
if (path == null)
throw new NullPointerException("path");
path_ = path;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy