diff options
author | Ondrej Holy <oholy@redhat.com> | 2015-11-20 09:02:45 +0100 |
---|---|---|
committer | Ondrej Holy <oholy@redhat.com> | 2015-11-20 16:23:36 +0100 |
commit | 054b2b691855428c32d6e40ff090c1a741dfafff (patch) | |
tree | 4a3a806709d88ff52cfb33328e0085f6e608ef0e | |
parent | 5fa7c1ef3e41100f43c7ce9dac72d3e62cb81ea4 (diff) | |
download | gvfs-054b2b691855428c32d6e40ff090c1a741dfafff.tar.gz |
Remove some obsoleted txt files
Those obsolete files are covered by up to date online docs:
https://wiki.gnome.org/Projects/gvfs/doc
-rw-r--r-- | TODO | 32 | ||||
-rw-r--r-- | dbus.txt | 83 | ||||
-rw-r--r-- | txt/gvfs_dbus.txt | 65 | ||||
-rw-r--r-- | txt/ops.txt | 140 |
4 files changed, 0 insertions, 320 deletions
@@ -1,32 +0,0 @@ -Implement the rest of the mountable GDaemonFile ops: - unmount_mountable - eject_mountable - -implement readahead in GVFSReadStream, time difference - -implement seek & truncate - -implement get_file_info for GFileInputStreamDaemon, needs marshalling attributes over custom protocol - -finish implementing copy progress callbacks - -implement stuff in GDaemonVolume / GDaemonVolumeMonitor - -convert GDaemonFiles to fuse paths on request - -detect fuse paths and reverse map back to GDaemonFile - -remove owners from bus_name_map when they fail - -smb support for smbc_getxattr! -smb - handle server going down - -add trash:/// support - -decide exactly how to handle not-mounted errors and make sure its consistent. -mount daemons should re-register when new owner for vfs daemon. - -Make built-in uri parsers link into gvfs shared lib instead of using a module - (smb is a shared lib atm to make sure that works) - -Implement GFileCreateFlags in backends as possible diff --git a/dbus.txt b/dbus.txt deleted file mode 100644 index c9925b11..00000000 --- a/dbus.txt +++ /dev/null @@ -1,83 +0,0 @@ -All info for mapping uri -> dbus name + remainder path is stored in config files read by the client at startup. - -Each "mountpoint" in a mountpoint daemon owns a name like "org.gtk.vfs.mount.smb.$server.$share". -It also instantiates a Mountpoint interface at /org/gtk/vfs/mount/smb/$server/$share which -listens to operations. - -Each daemon that contains at least one mountpoint also registers a org.gtk.vfs.Daemon interface -at /org/gtk/vfs/Daemon which supports operations like GetConnection and CancelOp. - -Clients use GetNameOwner to map uri -> mountpoint name -> owner of name -> GetConnection call so that -it can handle multiple mountpoints in each daemon. This can be cached, and NameOwnerChanged can be used -to invalidate the cache. - ----------------------- -How we map URIs ----------------------- - -Mapping functions needed: -uri to mount + path -mount + path to uri -root parent - -Mapping %m://%u@%h:%p/%f - -ftp: - -m_ftp.h_%h.p_%p.u_%u - -smb: - -smb://user@/ <-> smb-root.u_user -smb:/// <-> smb-root; path = / -smb:///foo <-> smb-root; path = /foo, type == link -smb://foo/ <-> smb-browse; path = /foo -smb://foo/server -> smb-browse; path = /foo/server, type == link -smb://user@foo/ <-> smb-browse.u_user; path = /foo -smb://user@foo:21/ <-> smb-browse.u_user.p_21; path = /foo -smb://domain;user@foo:21/ <-> smb-browse.d_domain.u_user.p_21; path = /foo -smb:///foo/share/blah <-> smb-share.h_foo.s_share, path = /blah - -m_smb-browse.u_%u path includes hostname - -computer: - -m_computer - -network: - -m_network - -http: -https: - -m_http(s), username+path+port in path - -authentication (no mount) - -dav: -davs: - -m_dav.h_%h.p_%p.u_%u.f_%f (f== path prefix) - - -nfs.h_server.p_port.u_user.f_/opt/prefix - -Find it by using ListNames - -nfs: - -nfs.h_server.p_port.f_/opt/prefix - -Find it by using ListNames - -sftp: - -trash: ---- - -HowTo handle: - -uri query part -filename encoding - paths are raw, get utf8 via get_display_name op. (What about IRIs? Try to do utf8 paths if possible?) -automounting? - http? diff --git a/txt/gvfs_dbus.txt b/txt/gvfs_dbus.txt deleted file mode 100644 index 86ac19ac..00000000 --- a/txt/gvfs_dbus.txt +++ /dev/null @@ -1,65 +0,0 @@ -how to chain to simple stuff - -how to parse uris (i.e. map to mounts) - -what connections do we have: -shared dbus connection -connection to main daemom -connection to each mount daemon - -"fast ops" (uri->gfile) vs blocking ops (read, open etc) and how to avoid slow blocking fast - - -each thread has, on demand: -connection to main daemon -connection to some mount daemons - -global state: -cache of previously used mountpoints - - -how to mount - -how to store/restore permanent mounts with the session => store as drives (mountpoints), not volumes! - -Don't always want to log in to all mounts on login? (mounpoints!) - -computer:// handled in main daemon? - -No volume monitor in public API, only computer:// ? -Problems: -* mounted (desktop/computer:, trash dir) -* unmounted/pre_unmount (desktop/computer:, close windows on unmounted volumes, trash dir) -* map path to volume (close windows on unmounted volumes, check for readonly mount, get volume name) -* get all drives/volumes (detecting where to show eject, mount, unmount menu items, - tree view, places sidebar, display volume icon in pathbar) -* eject/unmount ops -* needs eject - -unmounted URI => return a mountpoint object? - -GMountOperation, async mount operation object -signals => passwd, question, keyring? - -GFile mountpoint => GMountOperation - -What process calls gnome-keyring? - - - --------------------- - -GFile creation => decompose URI, no i/o - -on i/o: - * figure out mountpoint (for now, always toplevel uri location) - * if we have a local dbus connection to that, use it, otherwise: - + create (if needed) local session dbus connection - + ask for mount daemon for new session - - If not existing, error on i/o, return mountpoint type on get_info - + set up new local connection with the mount daemon - * send dbus message - * recieve answer, if has magic flag, followed by fd sendmsg() (created by socketpair()) - - - diff --git a/txt/ops.txt b/txt/ops.txt deleted file mode 100644 index c1f04c34..00000000 --- a/txt/ops.txt +++ /dev/null @@ -1,140 +0,0 @@ -type: File, Folder, Symlink, Shortcut, Mountable, special (fifo, socket, chardec, blockdev) -flags: hidden, -GFileInfo { - type get_type() - char *get_name() - char *get_display_name() - char *get_icon() /* string? what about win32, remote icons etc */ - - gint64 get_file_size() - char *get_mime_type() - char *get_link_target() - can_read()/write()/delete()/rename()/maybe: move()/copy() - flags get_flags() - time_t get_modification_time() - gboolean get_unix_stat () - char *get_attribute() - char **get_attributes(char *namespace) - char **get_all_attributes() /* form namespace:attrname -> string */ -} - -GFSInfo { - char *get_fs_type() - gint64 get_free_space() - gint64 get_total_space() - char * get_hal_uid() - can_unmount() - can_eject() - must_eject() - -} - -GFile *g_file_for_path (char *path) -GFile *g_file_for_uri (char *uri) -GFile *g_file_parse_display_name (char *display_name) - -GFile { - char *get_path() - is_native() => is_file:/// - - char *get_uri (); - char *get_absolute_display_name () - - set_keep_open(boolean keep_open) - - GFile *get_parent () - GFile *get_child (char *name) - GFileEnumerator *enumerate_children(flags, attributes... "*", "vfs:*;dav:*;foo:bar") - GFileInfo *get_info (flags, attributes...) - - void reload() - GInputStream *read() - - GOutputStream *append_to() /* optional (not on webdav) */ - GOutputStream *create() - GSaveStream *replace(mtime, backup_name, ) -/* permissions are all set minus umask, except replace which - saves old permissions */ - -/* ?? */ - GFile *resolve_symlink(char *symlink_target); - -/* output ops */ - write/save - rename - move - copy - delete - mkdir - rmkdir - display name -> filename (for new files) - set attrs - - /* other ops: */ - monitor(flags) + signals - mount/unmount - list volumes - - Maybe: - GFile *new_from_uri(path, flags) (file:/// uris) - -} - - -names: - URIs == raw filename (no encoding), all escaped - We generate display absolute paths as filenames if possible, otherwise - as IRIs. This means we can display nice URIs for native utf8 backends - and filenames. However, URIs for non-utf8 shares will look bad. If we know - the encoding we can still get nice non-absolut display names though. - - In client we store names as mountpoint + non-escaped no-encoding string. - Non-uri display name handling done in daemon - -GStatable iface for fstat() support -GSaveStream, with get_final_file_info() - -open for writing: - -append vs truncate -fail on existing or replace - -mtime match -mtime return -backup (suffix+prefix) -create filename from display name -unique name -keep inode or be atomic? - -filename_for_display_name() -write_append() /* optional (not on webdav) */ -write_new() -write_replace() - - - - -ftp supports: - overwrite - append - generate unique name - -http+webdav supports: - overwrite - append in recent versions - get mtime, length, mimetype, atime on read open - - - - - -async thread work: - -function to run in thread -data to pass to thread -cancel identifier -pass in cancel func + data -way for function to communicate with mainloop (of specific context) -does mainloop notifiers block on ack? - - |