mirror of
https://github.com/lxsang/antos-frontend.git
synced 2025-02-22 01:42:47 +01:00
fix stuff
This commit is contained in:
parent
133b7512fa
commit
64238fffbb
1
Makefile
1
Makefile
@ -8,6 +8,7 @@ coffees= src/core/core.coffee\
|
||||
src/core/api.coffee\
|
||||
src/core/handlers/RemoteHandler.coffee\
|
||||
src/core/vfs.coffee\
|
||||
src/core/vfs/GoogleDriveHandler.coffee\
|
||||
src/core/db.coffee\
|
||||
src/core/gui.coffee\
|
||||
src/core/BaseModel.coffee\
|
||||
|
@ -11,16 +11,23 @@ String.prototype.asBase64 = () ->
|
||||
)
|
||||
|
||||
String.prototype.asFileHandler = () ->
|
||||
list = this.split ":///"
|
||||
switch list[0]
|
||||
when "app"
|
||||
return new ApplicationHandler(this)
|
||||
else
|
||||
return new RemoteFileHandler(this)
|
||||
list = @split ":///"
|
||||
handlers = _API.VFS.findHandlers list[0]
|
||||
if not handlers or handlers.length is 0
|
||||
_courrier.osfail "VFS unknown handler: #{@}", (_API.throwe "OS.VFS"), @
|
||||
return null
|
||||
return new handlers[0](@)
|
||||
|
||||
this.OS.API.VFS = {}
|
||||
this.OS.API.VFS =
|
||||
handlers: { }
|
||||
register: ( protos, cls ) ->
|
||||
return self.OS.API.VFS.handlers[protos] = cls # if typeof protos is "string"
|
||||
#_API.VFS.handlers[v] = cls for v in protos
|
||||
findHandlers: (proto) ->
|
||||
l = (v for k, v of _API.VFS.handlers when proto.match (new RegExp k , "g"))
|
||||
return l
|
||||
|
||||
class BasicFileHandler
|
||||
class BaseFileHandler
|
||||
constructor: (path) ->
|
||||
@dirty = false
|
||||
@cache = undefined
|
||||
@ -120,10 +127,10 @@ class BasicFileHandler
|
||||
return _courrier.osfail "VFS unknown action: #{n}", (_API.throwe "OS.VFS"), n
|
||||
|
||||
# now export the class
|
||||
self.OS.API.VFS.BasicFileHandler = BasicFileHandler
|
||||
self.OS.API.VFS.BaseFileHandler = BaseFileHandler
|
||||
|
||||
# Remote file handle
|
||||
class RemoteFileHandler extends self.OS.API.VFS.BasicFileHandler
|
||||
class RemoteFileHandler extends self.OS.API.VFS.BaseFileHandler
|
||||
constructor: (path) ->
|
||||
super path
|
||||
|
||||
@ -157,10 +164,10 @@ class RemoteFileHandler extends self.OS.API.VFS.BasicFileHandler
|
||||
else
|
||||
return _courrier.osfail "VFS unknown action: #{n}", (_API.throwe "OS.VFS"), n
|
||||
|
||||
self.OS.API.VFS.RemoteFileHandler = RemoteFileHandler
|
||||
self.OS.API.VFS.register "^(home|shared|desktop|os)$", RemoteFileHandler
|
||||
|
||||
# Application Handler
|
||||
class ApplicationHandler extends self.OS.API.VFS.BasicFileHandler
|
||||
class ApplicationHandler extends self.OS.API.VFS.BaseFileHandler
|
||||
constructor: (path) ->
|
||||
super path
|
||||
@info = _OS.setting.system.packages[@basename] if @basename
|
||||
@ -199,12 +206,4 @@ class ApplicationHandler extends self.OS.API.VFS.BasicFileHandler
|
||||
else
|
||||
return _courrier.osfail "VFS unknown action: #{n}", (_API.throwe "OS.VFS"), n
|
||||
|
||||
self.OS.API.VFS.ApplicationHandler = ApplicationHandler
|
||||
|
||||
|
||||
# GoogleDrive File Handler
|
||||
class GoogleDriveHandler extends self.OS.API.VFS.BasicFileHandler
|
||||
constructor: (path) ->
|
||||
super path
|
||||
|
||||
self.OS.API.VFS.GoogleDriveHandler = GoogleDriveHandler
|
||||
self.OS.API.VFS.register "^app$", ApplicationHandler
|
6
src/core/vfs/GoogleDriveHandler.coffee
Normal file
6
src/core/vfs/GoogleDriveHandler.coffee
Normal file
@ -0,0 +1,6 @@
|
||||
# GoogleDrive File Handler
|
||||
class GoogleDriveHandler extends this.OS.API.VFS.BaseFileHandler
|
||||
constructor: (path) ->
|
||||
super path
|
||||
|
||||
self.OS.API.VFS.register "^gdv$", GoogleDriveHandler
|
Loading…
x
Reference in New Issue
Block a user