private MediaTray[] getMediaTrays(){
if( mediaTrays != null ){
// the print service is a singleton per printer so we only do this once
return mediaTrays;
}
PaperSourceCollection trays = settings.get_PaperSources();
int count = trays.get_Count();
List<MediaTray> trayList = new ArrayList<MediaTray>();
for( int i=0; i < count; i++ ){
PaperSource tray = trays.get_Item(i);
MediaTray javaTray = getDefaultTray(tray);
if( javaTray != null ){
trayList.add( javaTray );
} else {
trayList.add( new NetMediaTray( tray ) );