EVALUATION
Since this report cites Solaris then I will address that O/S first:
This was a deliberate and conscious implementation decision, forced on us
by the lack of any printer enumeration API on Solaris. So it takes an enormous
amount of time (seconds!) to get the list of printers on Solaris, and on
many networks there are hundreds of printers. There would also need to be
a way to identify new ones quickly. So we are unlikely to do anything about
this until such time as the O/S provides the necessary services with
suitable performance characteristics.
We took into account the rarity of new print services being added during
the execution of a program.
The other implementations were made consistent with this, although
its generally faster to identify new print services on windows, and linux
tends to have fewer printers, which also make it quicker. Its certainly
more possible to do this on windows, but again the extreme rarity and easy
solution (restart the app) meant it was not a priority.
###@###.### 2002-09-10
============================
If implemented this also needs to track changes to default values of
attributes such as the default page size for printer, and also the
default printer for a system, as requested in RFE 6182986
###@###.### 2005-1-06 18:36:32 GMT
Fixed by using a polling method on Solaris and Linux (ie Unix) with an option to use another method by refreshing it everytime lookupPrintServices is called. This is set using an internal (non-public) system property. In Windows, refresh is done everytime we get a printer change notification.
###@###.### 2005-03-28 22:50:23 GMT
###@###.### 2005-03-29 17:16:05 GMT
|