On Mon, Jan 8, 2018 at 4:40 AM, Jean-Philippe André <[email protected]> wrote: >> Efl.File -> Efl.Io.File >> > > This name makes sense > But I already see an Efl.Io.File class? Gustavo, any input here? > Efl.Io refers to actual I/O (open, read, write, close...) while Efl.File is > just for the (image/edje) file set/get.
IMO Efl.File should go, but it's not that simple in practice. The idea was to create a virtualized file for access, like Glib, Qt and all other frameworks allow... File in a ZIP? File in a FTP server? no worries! it will handle. except that everyone else virtualizes access: virtual open, close, size get, read, write... which can be translated to various protocols/formats (zip, ftp, http, ssh...), with some handling caches for you (ie: download cache) Efl.File and associated, like vpath, would actually create a local file for you, so all file operations would work, but just immutable were allowed (ie: no write, as it wouldn't reflect in the actual target). for things like emile and image loaders, it's very simple replacement: all they dealt with were files, receiving a path... so changing to eina.file was no-brainer... however, ideally these would have better API and dynamic lifecycle... such as progressive/partial loading with JPEG (monitoring "can_read" to get more data until "eos"). Not to say we still miss a cache mechanism, for zip wouldn't need to cache, but for remote access could use like HTTP Last-Modified/If-Modified-Since, Etag/If-None-Match... respect Expiry, store in local files, like done for web runtimes). TL;DR: it should but won't go away, so this virtualized file should be renamed, however I have no suggestions as I'm bad at names :-) -- Gustavo Sverzut Barbieri -------------------------------------- Mobile: +55 (16) 99354-9890 ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
