title: PrintServiceLookup.lookupPrintServices(null, null) is very slow
body: <p>We have a printing in our system.To that need to get print information.
  Use <strong>PrintServiceLookup.lookupPrintServices(null, null)</strong> method to get printer information.Also use <strong>printService.getSupportedAttributeValues(Media.class, flavor, null)</strong> to get trays.
  But this is very slow.
  Do we have a way to optimize this call.</p>
  
  <pre><code>public class PrintTest
  {
    public static void main(String[] args)
    {
      PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
      for (int i = 0; i &lt; services.length; i++) {
          PrintService service = services[i];
          System.out.println(service);
          DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PAGEABLE;
          Object o = service.getSupportedAttributeValues(Media.class, flavor, service.getAttributes());
          if (o != null &amp;&amp; o.getClass().isArray()) {
              for (Media media : (Media[]) o) {
                  if (media instanceof MediaTray) {
                      System.out.println(media + " ID: " + media.getValue() + "\t" + media.getClass().getName());
                  }
              }
          }
      }
    }
  }
  </code></pre>
  
  <p>When getting trays it comes with paper types also.But i only need Paper source.</p>