|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.ibm.as400.access.Subsystem
public class Subsystem extends Object
Represents a subsystem on the system.
Most of the getter methods simply return the cached attribute value obtained by the most recent refresh()
. Other than getObjectDescription(), none of the getters will themselves go to the system to get the current attribute value. Prior to the first refresh(), many of the getters will return null or zero.
Example:
Subsystem sbs = new Subsystem(system, library, name); if (!sbs.exists()) { System.out.println("No such subsystem: "+sbs.getPath()); } else { sbs.refresh(); System.out.println("Status: " + sbs.getStatus()); System.out.println("Number of jobs: " + sbs.getCurrentActiveJobs()); System.out.println("Maximum jobs: " + sbs.getMaximumActiveJobs()); SystemPool[] pools = sbs.getPools(); System.out.print("Pools: "); if (pools == null) System.out.println("null"); else for (int i=0; i
Field Summary Modifier and Type Field and Description static int
NO_MAX
Value for the maximumActiveJobs property, indicating "no maximum".static int
NO_TIME_LIMIT
Value for the timeLimit parameter of the end() methods, indicating "no time limit".
Constructor Summary Constructor and Description Subsystem(AS400 system, String path)
Constructs a Subsystem object.Subsystem(AS400 system, String library, String name)
Constructs a Subsystem object.
Method Summary Modifier and Type Method and Description void
assignPool(int sequenceNumber, int size, int activityLevel)
Defines a private storage pool and adds it to the list of storage pools defined for the subsystem.void
assignPool(int sequenceNumber, String poolName)
Adds a shared system pool to the list of storage pools defined for the subsystem.void
changeDescriptionText(String text)
Sets the subsystem description text.void
changeDisplayFilePath(String path)
Specifies the signon display file that is used when showing signon displays at work stations allocated to the subsystem.void
changeLanguageLibrary(String library)
Specifies a library to enter ahead of other libraries in the system portion of the library list.void
changeMaximumActiveJobs(int maxJobs)
Sets the maximum number of active jobs that can run or use resources within the subsystem at one time.void
create()
Creates the subsystem on the system.void
create(String authority)
Creates the subsystem on the system.void
delete()
Deletes the subsystem from the system.void
end(int timeLimit)
Ends the subsystem on the system, in a controlled manner.static void
endAllSubsystems(AS400 system, int timeLimit)
Ends all active subsystems on the system, in a controlled manner.static void
endAllSubsystemsImmediately(AS400 system)
Ends all active subsystems on the system, immediately.void
endImmediately()
Ends the subsystem on the system, immediately.boolean
equals(Object obj)
Determines whether this Subsystem object is equal to another object.boolean
exists()
Determines if the subsystem currently exists on the system.int
getCurrentActiveJobs()
Returns the number of jobs currently active in the subsystem.String
getDescriptionText()
Returns the subsystem description text.String
getDisplayFilePath()
Returns the path of the signon display file that is used when showing signon displays at work stations allocated to the subsystem.String
getLanguageLibrary()
Returns the library that is entered ahead of other libraries in the system portion of the library list.String
getLibrary()
Returns the name of the library where the subsystem resides on the system.int
getMaximumActiveJobs()
Returns the maximum number of active jobs that can run or use resources within the subsystem at one time.Job
getMonitorJob()
Returns the subsystem monitor job.String
getName()
Returns the subsystem name.ObjectDescription
getObjectDescription()
Returns an ObjectDescription instance representing the subsystem.String
getPath()
Returns the fully-qualifed IFS pathname of the subsystem.SystemPool
getPool(int sequenceNumber)
Returns the storage pool defined at the specified position for the subsystem.SystemPool[]
getPools()
Returns the list of storage pools that are defined for the subsystem.String
getStatus()
Returns the extended status of the subsystem.AS400
getSystem()
Returns the system where the subsystem resides.int
hashCode()
Returns a hash code value for the object.static Subsystem[]
listAllSubsystems(AS400 system)
Lists all subsystems on the system.void
refresh()
Refreshes the attributes of this Subsystem object, to reflect the current state of the subsystem on the system.void
removePool(int sequenceNumber)
Removes a storage pool from the list of pools defined for the subsystem.void
start()
Starts the subsystem on the system.
Methods inherited from class java.lang.Object clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Field Detail NO_MAX
public static final int NO_MAX
- Value for the maximumActiveJobs property, indicating "no maximum".
- See Also:
- Constant Field Values
NO_TIME_LIMIT
public static final int NO_TIME_LIMIT
- Value for the timeLimit parameter of the end() methods, indicating "no time limit".
- See Also:
- Constant Field Values
Constructor Detail Subsystem
public Subsystem(AS400 system, String library, String name)
- Constructs a Subsystem object.
Note: Does not create a subsystem on the system.
- Parameters:
system
- The system.library
- The name of the library where the subsystem resides.name
- The simple name of the subsystem.- See Also:
create()
Subsystem
public Subsystem(AS400 system, String path)
- Constructs a Subsystem object.
Note: Does not create a subsystem on the system.
- Parameters:
system
- The system.path
- The qualified path. For example, "/QSYS.LIB/MYSUBSYS.SBSD".- See Also:
create()
Method Detail assignPool
public void assignPool(int sequenceNumber, String poolName) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Adds a shared system pool to the list of storage pools defined for the subsystem. Current pool definitions, other than the one specified, remain unchanged.
- Parameters:
sequenceNumber
- The number of the pool, within the pool list for the subsystem. Valid values are 1-10.poolName
- The name of a shared system storage pool. Valid values include: *BASE, *NOSTG, *INTERACT, *SPOOL, and *SHRPOOLnn, where nn is an integer from 1 to 60.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
assignPool
public void assignPool(int sequenceNumber, int size, int activityLevel) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Defines a private storage pool and adds it to the list of storage pools defined for the subsystem. Current pool definitions, other than the one specified, remain unchanged.
- Parameters:
sequenceNumber
- The number of the pool, within the pool list for the subsystem. Valid values are 1-10.size
- The size of the storage pool, in kilobytes. Must be at least 256 (meaning 256 kilobytes).activityLevel
- The activity level of the pool.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
changeDescriptionText
public void changeDescriptionText(String text) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Sets the subsystem description text. The default is "".
- Parameters:
text
- The subsystem description text. To clear the description, specify "".- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
changeDisplayFilePath
public void changeDisplayFilePath(String path) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Specifies the signon display file that is used when showing signon displays at work stations allocated to the subsystem. By default, QSYS/QDSIGNON (path /QSYS.LIB/QDSIGNON.FILE) is used.
- Parameters:
path
- The fully qualified pathname of the signon display file. SeeQSYSObjectPathName.toString()
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
changeLanguageLibrary
public void changeLanguageLibrary(String library) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Specifies a library to enter ahead of other libraries in the system portion of the library list. This method allows you to use a secondary language library.
- Parameters:
library
- The name of the library. Specify "" or "*NONE" to remove the current secondary language library from the system library list.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
changeMaximumActiveJobs
public void changeMaximumActiveJobs(int maxJobs) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Sets the maximum number of active jobs that can run or use resources within the subsystem at one time.
- Parameters:
maxJobs
- The maximum number of active jobs. Valid values are 0-1000. Special valueNO_MAX
is the default, and indicates no maximum.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
create
public void create() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException, ObjectAlreadyExistsException
- Creates the subsystem on the system.
More precisely, this method creates a subsystem description on the system.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.ObjectAlreadyExistsException
- If the object already exists on the system.
create
public void create(String authority) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException, ObjectAlreadyExistsException
- Creates the subsystem on the system.
More precisely, this method creates a subsystem description on the system.
- Parameters:
authority
- The authority to give to users who do not have specific authority for the object, who are not on an authorization list, and whose group profile or supplemental group profiles do not have specific authority for the object. The default is *LIBCRTAUT. The "base system pool" (*BASE) is used.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.ObjectAlreadyExistsException
- If the object already exists on the system.
delete
public void delete() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException
- Deletes the subsystem from the system.
More precisely, this method deletes a subsystem description on the system.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.
end
public void end(int timeLimit) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Ends the subsystem on the system, in a controlled manner. This allows the programs that are running in the subsystem, to perform cleanup (end of job processing). When a job being ended has a signal handling procedure for the asynchronous signal SIGTERM, the SIGTERM signal is generated for that job. The application has timeLimit seconds to complete cleanup before the job is ended.
- Parameters:
timeLimit
- The amount of time (in seconds) that is allowed to complete the controlled subsystem end operation. If this amount of time is exceeded and the end operation is not complete, any jobs still being processed in the subsystem are ended immediately. Special valueNO_TIME_LIMIT
indicates no time limit.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
endAllSubsystems
public static void endAllSubsystems(AS400 system, int timeLimit) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException
- Ends all active subsystems on the system, in a controlled manner.
- Parameters:
system
- The system.timeLimit
- The amount of time (in seconds) that is allowed to complete the controlled subsystem end operation. If this amount of time is exceeded and the end operation is not complete, any jobs still being processed in the subsystem are ended immediately. Special valueNO_TIME_LIMIT
indicates no time limit.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.
endAllSubsystemsImmediately
public static void endAllSubsystemsImmediately(AS400 system) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException
- Ends all active subsystems on the system, immediately.
- Parameters:
system
- The system.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.
endImmediately
public void endImmediately() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Ends the subsystem on the system, immediately.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
equals
public boolean equals(Object obj)
- Determines whether this Subsystem object is equal to another object.
- Overrides:
equals
in classObject
- Returns:
- true if the two instances are equal
hashCode
public int hashCode()
- Returns a hash code value for the object.
- Overrides:
hashCode
in classObject
- Returns:
- A hash code value for this object.
exists
public boolean exists() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Determines if the subsystem currently exists on the system.
More precisely, this method reports if the subsystem description exists on the system.
- Returns:
- true if the subsystem exists; false if the subsystem does not exist.
- Throws:
AS400Exception
- If the program call returns error messages.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the system API (that queries subsystem description information) is missing.
getCurrentActiveJobs
public int getCurrentActiveJobs()
- Returns the number of jobs currently active in the subsystem.
- Returns:
- The number of currently active jobs. 0 if refresh() has not been called, or if the subsystem status is *INACTIVE.
getDescriptionText
public String getDescriptionText()
- Returns the subsystem description text.
- Returns:
- The subsystem description text. null if refresh() has not been called. "" if description is blank.
getDisplayFilePath
public String getDisplayFilePath()
- Returns the path of the signon display file that is used when showing signon displays at work stations allocated to the subsystem. By default, QSYS/QDSIGNON (path /QSYS.LIB/QDSIGNON.FILE) is used.
- Returns:
- The path of the signon display file. null if refresh() has not been called.
getLanguageLibrary
public String getLanguageLibrary() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Returns the library that is entered ahead of other libraries in the system portion of the library list. This library typically specifies a secondary language library.
- Returns:
- The name of the secondary language library. null if refresh() has not been called. "*NONE" if no secondary language library is set.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
getLibrary
public String getLibrary()
- Returns the name of the library where the subsystem resides on the system.
- Returns:
- The name of the library.
getMaximumActiveJobs
public int getMaximumActiveJobs()
- Returns the maximum number of active jobs that can run or use resources within the subsystem at one time.
- Returns:
- The maximum number of active jobs. 0 if refresh() has not been called.
NO_MAX
if no maximum.
getMonitorJob
public Job getMonitorJob()
- Returns the subsystem monitor job.
- Returns:
- The subsystem monitor job. null if refresh() has not been called, or if subsystem status is *INACTIVE.
getName
public String getName()
- Returns the subsystem name.
- Returns:
- The subsystem name.
getObjectDescription
public ObjectDescription getObjectDescription()
- Returns an ObjectDescription instance representing the subsystem.
- Returns:
- An ObjectDescription for the subsystem.
getPath
public String getPath()
- Returns the fully-qualifed IFS pathname of the subsystem. For example: "/QSYS.LIB/MYSUBSYS.SBSD".
- Returns:
- The path of the subsystem.
getPool
public SystemPool getPool(int sequenceNumber)
- Returns the storage pool defined at the specified position for the subsystem.
- Parameters:
sequenceNumber
- The number of the pool, within the pool list for the subsystem. Valid values are 1-10.- Returns:
- The pool used by the subsystem, at the specified sequence position. null if refresh() has not been called, or if no pool has been assigned at that position.
getPools
public SystemPool[] getPools()
- Returns the list of storage pools that are defined for the subsystem. That is, the list of storage pool definitions that are in the subsystem description. The element at offset 0 represents subsystem pool #1, element at offset 1 represents pool #2, and so on. In positions where no pool assignment has been made, the array element will be null.
- Returns:
- The pools that are used by the subsystem. null if refresh() has not been called. Otherwise, a 10-element array is returned.
getStatus
public String getStatus()
- Returns the extended status of the subsystem. Possible values are: *ACTIVE, *ENDING, *INACTIVE, *RESTRICTED, and *STARTING.
- Returns:
- The subsystem status. null if refresh() has not been called.
getSystem
public AS400 getSystem()
- Returns the system where the subsystem resides.
- Returns:
- The system.
listAllSubsystems
public static Subsystem[] listAllSubsystems(AS400 system) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException, RequestNotSupportedException
- Lists all subsystems on the system.
- Returns:
- A list of all defined subsystems, both active and inactive.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.RequestNotSupportedException
- If the requested function is not supported because the system is not at the correct level.
refresh
public void refresh() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Refreshes the attributes of this Subsystem object, to reflect the current state of the subsystem on the system.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
removePool
public void removePool(int sequenceNumber) throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Removes a storage pool from the list of pools defined for the subsystem. You should first end the subsystem before removing a pool.
- Parameters:
sequenceNumber
- The number of the pool, within the pool list for the subsystem. Valid values are 1-10.- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
start
public void start() throws AS400Exception, AS400SecurityException, ErrorCompletingRequestException, InterruptedException, IOException, ObjectDoesNotExistException
- Starts the subsystem on the system.
- Throws:
AS400Exception
- If the system returns an error message.AS400SecurityException
- If a security or authority error occurs.ErrorCompletingRequestException
- If an error occurs before the request is completed.InterruptedException
- If this thread is interrupted.IOException
- If an error occurs while communicating with the system.ObjectDoesNotExistException
- If the object does not exist on the system.
Overview Package Class Tree Deprecated Index Help PREV CLASS NEXT CLASS FRAMES NO FRAMES SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD