2 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
4 <!ENTITY gnome-vfs-writing-modules SYSTEM "writing-modules.sgml">
5 <!ENTITY gnome-vfs-about SYSTEM "about.sgml">
6 <!ENTITY gnome-vfs-mime-monitor SYSTEM "xml/gnome-vfs-mime-monitor.xml">
7 <!ENTITY gnome-vfs-file-size SYSTEM "xml/gnome-vfs-file-size.xml">
8 <!ENTITY gnome-vfs-utils SYSTEM "xml/gnome-vfs-utils.xml">
9 <!ENTITY gnome-vfs-application-registry SYSTEM "xml/gnome-vfs-application-registry.xml">
10 <!ENTITY gnome-vfs-transform SYSTEM "xml/gnome-vfs-transform.xml">
11 <!ENTITY gnome-vfs-ops SYSTEM "xml/gnome-vfs-ops.xml">
12 <!ENTITY gnome-vfs-ssl SYSTEM "xml/gnome-vfs-ssl.xml">
13 <!ENTITY gnome-vfs-uri SYSTEM "xml/gnome-vfs-uri.xml">
14 <!ENTITY gnome-vfs-standard-callbacks SYSTEM "xml/gnome-vfs-standard-callbacks.xml">
15 <!ENTITY gnome-vfs-inet-connection SYSTEM "xml/gnome-vfs-inet-connection.xml">
16 <!ENTITY gnome-vfs-socket SYSTEM "xml/gnome-vfs-socket.xml">
17 <!ENTITY gnome-vfs-parse-ls SYSTEM "xml/gnome-vfs-parse-ls.xml">
18 <!ENTITY gnome-vfs-module-callback SYSTEM "xml/gnome-vfs-module-callback.xml">
19 <!ENTITY gnome-vfs-context SYSTEM "xml/gnome-vfs-context.xml">
20 <!ENTITY gnome-vfs-file-info SYSTEM "xml/gnome-vfs-file-info.xml">
21 <!ENTITY gnome-vfs-method SYSTEM "xml/gnome-vfs-method.xml">
22 <!ENTITY gnome-vfs-directory SYSTEM "xml/gnome-vfs-directory.xml">
23 <!ENTITY gnome-vfs-directory-basic-ops SYSTEM "xml/gnome-vfs-directory-basic-ops.xml">
24 <!ENTITY gnome-vfs-directory-list-ops SYSTEM "xml/gnome-vfs-directory-list-ops.xml">
25 <!ENTITY gnome-vfs-directory-find-ops SYSTEM "xml/gnome-vfs-directory-find-ops.xml">
26 <!ENTITY gnome-vfs-file-basic-ops SYSTEM "xml/gnome-vfs-file-basic-ops.xml">
27 <!ENTITY gnome-vfs-file-rw-ops SYSTEM "xml/gnome-vfs-file-rw-ops.xml">
28 <!ENTITY gnome-vfs-file-trunc-ops SYSTEM "xml/gnome-vfs-file-trunc-ops.xml">
29 <!ENTITY gnome-vfs-file-info-ops SYSTEM "xml/gnome-vfs-file-info-ops.xml">
30 <!ENTITY gnome-vfs-file-advanced-ops SYSTEM "xml/gnome-vfs-file-advanced-ops.xml">
31 <!ENTITY gnome-vfs-file-async-ops SYSTEM "xml/gnome-vfs-async-ops.xml">
32 <!ENTITY gnome-vfs-result SYSTEM "xml/gnome-vfs-result.xml">
33 <!ENTITY gnome-vfs-mime-database SYSTEM "xml/gnome-vfs-mime-database.xml">
34 <!ENTITY gnome-vfs-module SYSTEM "xml/gnome-vfs-module.xml">
35 <!ENTITY gnome-vfs-module-shared SYSTEM "xml/gnome-vfs-module-shared.xml">
36 <!ENTITY gnome-vfs-module-callback-module-api SYSTEM "xml/gnome-vfs-module-callback-module-api.xml">
37 <!ENTITY gnome-vfs-init SYSTEM "xml/gnome-vfs-init.xml">
38 <!ENTITY gnome-vfs-mime SYSTEM "xml/gnome-vfs-mime.xml">
39 <!ENTITY gnome-vfs-cancellation SYSTEM "xml/gnome-vfs-cancellation.xml">
40 <!ENTITY gnome-vfs-xfer SYSTEM "xml/gnome-vfs-xfer.xml">
41 <!ENTITY gnome-vfs-socket-buffer SYSTEM "xml/gnome-vfs-socket-buffer.xml">
42 <!ENTITY gnome-vfs-monitor SYSTEM "xml/gnome-vfs-monitor.xml">
47 <title>GnomeVFS - Filesystem Abstraction library</title>
50 <firstname>Seth</firstname>
51 <surname>Nickell</surname>
54 <email>snickell@Stanford.edu</email>
62 Permission is granted to copy, distribute and/or modify this document
63 under the terms of the GNU Free Documentation License, Version 1.1
64 or any later version published by the Free Software Foundation;
65 A copy of the license is included in the section entitled "GNU
66 Free Documentation License".
72 <holder>The Free Software Foundation</holder>
79 <chapter id="gnome-vfs-directory-operations">
80 <title>Directory Handling</title>
82 Functions for creating, removing, and listing directories.
85 &gnome-vfs-directory-basic-ops;
86 &gnome-vfs-directory-list-ops;
87 &gnome-vfs-directory-find-ops;
90 <chapter id="gnome-vfs-file-operations">
91 <title>File Handling</title>
93 GnomeVFS file operations are, for the most part, patterned after
94 their POSIX equivalents, with the systematic difference that they
95 accept URIs rather than paths on the local filesystem. This makes
96 them easy to learn as if you are already familiar with basic commands
97 such as open(), seek(), write(), etc you will feel right at home
98 with GnomeVFS after learning a little about URIs.
102 GnomeVFS also provides asynchronous versions of these basic operations
103 for allowing application developers to provide non-blocking file I/O
104 without the use of threads.
107 &gnome-vfs-file-basic-ops;
108 &gnome-vfs-file-rw-ops;
109 &gnome-vfs-file-info-ops;
110 &gnome-vfs-file-trunc-ops;
111 &gnome-vfs-file-advanced-ops;
112 &gnome-vfs-file-async-ops;
116 <chapter id="advanced-operations">
117 <title>Advanced Operations</title>
119 &gnome-vfs-cancellation;
123 <chapter id="data-types">
124 <title>Data Types</title>
125 &gnome-vfs-file-info;
126 &gnome-vfs-file-size;
131 <chapter id="mime-registry">
132 <title>MIME Registry</title>
134 MIME types provide a standardized for denoting the content of files or
135 file streams. GnomeVFS exposes simple methods for both identifying the
136 MIME type of a particular file, and deciding how to act on it. The MIME
137 and application registries provide a mapping between files of a particular
138 mime type and applications / bonobo components which can view or edit
139 those files. Applications such as Nautilus use this database to generate
140 appropriate actions when files are activated.
143 &gnome-vfs-application-registry;
144 &gnome-vfs-mime-database;
145 &gnome-vfs-mime-monitor;
148 <chapter id="modules">
149 <title>Filesystem Modules</title>
151 Modules are the mechanism by which GnomeVFS accesses different filesystems,
152 from http, to the local disk, to smb. Module authors must implement a simple
153 set of filesystem operations and can provide varying degrees of service (read-only,
154 read-write, seeking, etc). Modules are dynamically loaded based upon the URI
155 scheme passed into the high-level GnomeVFS APIs.
158 &gnome-vfs-writing-modules;
162 &gnome-vfs-module-shared;
163 &gnome-vfs-module-callback-module-api;
167 &gnome-vfs-socket-buffer;
168 &gnome-vfs-transform;
173 <title>Other Stuff</title>
176 &gnome-vfs-standard-callbacks;
177 &gnome-vfs-inet-connection;
178 &gnome-vfs-module-callback;