Listar unidades del sistema en un JList con java

Desempolvando mi baúl de códigos personales, les traigo una parte de una aplicación que hice haces unos años,cada lunes compartiré con todos ustedes códigos personales que no se han visto en ninguna web,y espero que sean de su utilidad. 
¿Pero como listamos las unidades del sistema en un JList?
primero importamos la librería nativa JNA( api nativa para manipular librerías compartidas de windows .dll y .so en linux). también hacemos uso de la librería RT que la encontramos en el paquete de java con la ruta, C:\Program Files (x86)\Java\jre7\lib, en el proyecto solo viene incluida la librería JNA ya que la librería rt es muy pesada (45 a 50MB).
una vez hecho esto vamos hacer uso del Kernel, el cual nos proporcionara cierta información importante para proceder a escanear y verificar la existencia de alguna unidad de disco(sea disco duro o dispositivo USB)
Método el cual obtenemos las unidades.

         
     File[] files = File.listRoots();
		if (files != null) {
			for (File f : files) {
			DriveInfo di = new DriveInfo();
			di.drive = f.getAbsolutePath();
			if (di.drive.endsWith("\\")) {
			di.drive = di.drive.substring(0, di.drive.length() - 1);
			}
				di.size = f.getTotalSpace();
				di.free = f.getFreeSpace();
				try {
			VolumeInformation vi = getVolumeInformation(di.drive + "\\");
					di.fileSystem = vi.fileSystemName;
					di.name = vi.volumeName;
					drives.add(di);
				} catch (LastError ex) {
					// device is not ready
					if (ex.getLastError() != 21) {
						ex.printStackTrace();
					}
				}
			}
		}

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Ese código ... PONE!

Voy a probarlo. Qué buen código. Saludos.

Imagen de Sr. Negativo

Deberías publicar tu código

Deberías publicar tu código completo aqui mismo. Muy buen aporte.

0_o