- KIO-Slaves
-
KDE Input/Output (KIO) stellt ein asynchrones virtuelles Dateisystem dar. Hinter diesem virtuellen Dateisystem stellen zahlreiche KIO-Slaves Zugriff auf unterschiedlichste Funktionalitäten bereit. Diese KIO-Slaves implementieren eine einheitliche Schnittstelle, welche Anwendungsprogrammen den transparenten Zugriff auf Systeme erlaubt, die ihre Funktionalitäten über Protokolle wie HTTP, FTP, SSH, WebDAV, POP3, IMAP, Bluetooth und vielen weiteren ermöglichen. Dies wird über eine Abstraktion der gemeinsamen Funktionalitäten, die solche Protokolle ermöglichen, erreicht. Auch verschiedene Archivarten wie tar, cpio und zip sowie unterschiedliche lokale Quellen (Audio-CD, USB-Stick, …) werden so gehandhabt.
Die Grundidee dieses Konzeptes ist, dass für die Handhabung jedes neu dazukommenden Protokolls für dessen Verwendung kein separater neuer Client zu schreiben ist, der dieses Protokoll beherrscht. Durch das Kio-Slave-Konzept genügt es, für das neue Protokoll einen Kio-Slave zu entwickeln und anzumelden. Dieser stellt dann über das virtuelle Dateisystem einen einheitlichen Dateizugriff für KDE-Anwendungen bereit, ohne dass diese etwas über die eigentliche Funktionsweise wissen müssen.
Konqueror, Dolphin und andere KDE-Programme können im Zusammenspiel über diese API zum Beispiel auf Netzwerkfreigaben oder Geräte (Bluetooth), … zugreifen, ohne einen Unterschied zu den üblichen Dateien berücksichtigen oder diesen kennen zu müssen. Für die Benutzer ergeben sich dadurch oftmals effiziente und bequemere Möglichkeiten, als dieselben, meist komplexen, Arbeiten zum Beispiel über die Konsole (KDE) zu erledigen.
Anwendungsbeispiele:
Konvertieren der Stücke einer Audio-CD in Ogg Vorbis
Mit Konqueror in einem Unterfenster die Pseudo-URI audiocd:/ eingeben. Danach sieht man den Inhalt der Audio-CD. Es gibt ein Unterverzeichnis Ogg/, dessen Inhalt kopiert man einfach in ein Verzeichnis auf der Festplatte. Fertig. Der Audio-CD KIO-Slave erledigt die Konvertierung automatisch während des Kopierens. Analog funktioniert dies auch fürs Konvertieren in WAV oder andere Containerformate / Dateiformate.
Siehe auch:
GVFS - Vergleichbares Schnittstellensystem unter GNOME
Weblinks
Wikimedia Foundation.