Commit e78ed7e6 authored by yann300's avatar yann300

add callback to provider set

parent 77929cef
......@@ -53,11 +53,12 @@ function FilesTree (name, storage) {
return content
}
this.set = function (path, content) {
this.set = function (path, content, cb) {
var unprefixedpath = this.removePrefix(path)
updateRefs(unprefixedpath, 'add')
var exists = storage.exists(unprefixedpath)
if (!storage.set(unprefixedpath, content)) {
if (cb) cb('error updating ' + path)
return false
}
if (!exists) {
......@@ -65,6 +66,7 @@ function FilesTree (name, storage) {
} else {
event.trigger('fileChanged', [this.type + '/' + unprefixedpath])
}
if (cb) cb()
return true
}
......
......@@ -38,16 +38,18 @@ function Files (storage) {
return content
}
this.set = function (path, content) {
this.set = function (path, content, cb) {
var unprefixedpath = this.removePrefix(path)
// NOTE: ignore the config file
if (path === '.remix.config') {
if (cb) cb('change not allowed')
return false
}
if (!this.isReadOnly(unprefixedpath)) {
var exists = storage.exists(unprefixedpath)
if (!storage.set(unprefixedpath, content)) {
if (cb) cb('error updating ' + path)
return false
}
if (!exists) {
......@@ -55,9 +57,10 @@ function Files (storage) {
} else {
event.trigger('fileChanged', [this.type + '/' + unprefixedpath])
}
if (cb) cb()
return true
}
if (cb) cb('is read only')
return false
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment