///////////////////////////////////////////////////////////////////////// // // Example that shows listing all spooled files on a system Asynchronously without // using the PrintObjectListListener interface. After opening the list the caller // can do some additional work before waiting for the list to complete. // ///////////////////////////////////////////////////////////////////////// // // This source is an example of IBM Toolbox for Java "PrintObjectList". // ///////////////////////////////////////////////////////////////////////// import java.util.Enumeration; import com.ibm.as400.access.AS400; import com.ibm.as400.access.SpooledFileList; import com.ibm.as400.access.SpooledFile; public class NPExampleListSplfAsynch2 extends Object { private AS400 system_; public NPExampleListSplfAsynch2(AS400 system) { system_ = system; } // list all spooled files on the system asynchronously public void listSpooledFiles() { try { String strSpooledFileName; int listed, size; if( system_ == null ) { system_ = new AS400(); } System.out.println( "Now receiving all spooled files Asynchronously without using a listener"); SpooledFileList splfList = new SpooledFileList(system_); // set filters, all users, on all queues splfList.setUserFilter("*ALL"); splfList.setQueueFilter("/QSYS.LIB/%ALL%.LIB/%ALL%.OUTQ"); // open list, openAsynchronously() returns immediately // we have not added any listeners... splfList.openAsynchronously(); System.out.println(" Do some processing before waiting..."); // ... do some processing here while the list is being built.... System.out.println(" Now wait for list to complete."); // wait for the list to complete splfList.waitForListToComplete(); Enumeration enum = splfList.getObjects(); // output the name of all objects on the list while( enum.hasMoreElements() ) { SpooledFile splf = (SpooledFile)enum.nextElement(); if (splf != null) { // output this spooled file's name strSpooledFileName = splf.getStringAttribute(SpooledFile.ATTR_SPOOLFILE); System.out.println(" spooled file = " + strSpooledFileName); } } // clean up after we are done with the list splfList.close(); } catch( Exception e ) { // ...handle any exceptions... e.printStackTrace(); } } public static void main( String args[] ) { NPExampleListSplfAsynch2 list = new NPExampleListSplfAsynch2(new AS400()); try{ list.listSpooledFiles(); } catch( Exception e ) { e.printStackTrace(); } System.exit(0); } }