register_uri_scheme
Description:
public bool register_uri_scheme (string scheme, owned VfsFileLookupFunc? uri_func, owned VfsFileLookupFunc? parse_name_func)
Registers uri_func and parse_name_func as the File URI and
parse name lookup functions for URIs with a scheme matching scheme.
Note that scheme is registered only within the running application, as opposed to desktop-wide as it happens with GVfs backends.
When a File is requested with an URI containing scheme (e.g. through
new_for_uri), uri_func will be called to allow a custom
constructor. The implementation of uri_func should not be blocking, and must not call register_uri_scheme
or unregister_uri_scheme.
When parse_name is called with a parse name obtained from such file,
parse_name_func will be called to allow the File to be created again. In
that case, it's responsibility of parse_name_func to make sure the parse name matches what the custom
File implementation returned when
get_parse_name was previously called. The implementation of
parse_name_func should not be blocking, and must not call register_uri_scheme or
unregister_uri_scheme.
It's an error to call this function twice with the same scheme. To unregister a custom URI scheme, use unregister_uri_scheme.
Parameters:
| this |
a Vfs |
| scheme |
an URI scheme, e.g. "http" |
| uri_func | |
| parse_name_func | |
| parse_name_data |
custom data passed to be passed to |
| parse_name_destroy |
function to be called when unregistering the URI scheme, or when this is disposed, to free the resources used by the parse name lookup function |
| uri_data |
custom data passed to be passed to |
| uri_destroy |
function to be called when unregistering the URI scheme, or when this is disposed, to free the resources used by the URI lookup function |
Returns:
|
true if |