passes all tests for standard feature layer

This commit is contained in:
Andy Gup 2015-07-28 18:56:14 -06:00
parent db99873ee1
commit 6051c890f1

View File

@ -1929,41 +1929,34 @@ define([
});
layer._replaceFeatureIds(tempObjectIds, newObjectIds, function (success) {
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults
}); // wrap three arguments in a single object
});
}
else {
that._cleanDatabase(layer, tempObjectIds, addResults, updateResults, deleteResults).then(function(results){
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: results,
databaseErrors: null
}); // wrap three arguments in a single object
}, function(error) {
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: null,
databaseErrors: error
}); // wrap three arguments in a single object
console.log("done replacing feature ids");
});
}
that._cleanDatabase(layer, tempObjectIds, addResults, updateResults, deleteResults).then(function(results){
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: results,
databaseErrors: null
}); // wrap three arguments in a single object
}, function(error) {
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: null,
databaseErrors: error
}); // wrap three arguments in a single object
});
},
function (error) {
layer.onEditsComplete = layer.__onEditsComplete;
@ -1993,18 +1986,20 @@ define([
* @private
*/
_internalApplyEditsFeatureCollection: function (layer, id, tempObjectIds, adds, updates, deletes) {
var that = this;
var dfd = new Deferred();
this._makeEditRequest(layer.url, adds, updates, deletes,
function (addResults, updateResults, deleteResults) {
layer._phantomLayer.clear();
var newObjectIds = addResults.map(function (r) {
return r.objectId;
});
// We use a different pattern if the attachmentsStore is valid and the layer has attachments
if (layer._attachmentsStore != null && layer.hasAttachments && tempObjectIds.length > 0) {
var newObjectIds = addResults.map(function (r) {
return r.objectId;
});
layer._replaceFeatureIds(tempObjectIds, newObjectIds, function (success) {
dfd.resolve({
@ -2017,31 +2012,31 @@ define([
}); // wrap three arguments in a single object
});
}
else {
layer._cleanDatabase(layer, tempObjectIds, addResults, updateResults, deleteResults).then(function(results){
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: results,
databaseErrors: null
}); // wrap three arguments in a single object
}, function(error) {
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: null,
databaseErrors: error
}); // wrap three arguments in a single object
});
}
that._cleanDatabase(layer, tempObjectIds, addResults, updateResults, deleteResults).then(function(results){
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: results,
databaseErrors: null
}); // wrap three arguments in a single object
}, function(error) {
dfd.resolve({
id: id,
layer: layer.url,
tempId: tempObjectIds, // let's us internally match an ADD to it's new ObjectId
addResults: addResults,
updateResults: updateResults,
deleteResults: deleteResults,
databaseResults: null,
databaseErrors: error
}); // wrap three arguments in a single object
});
},
function (error) {
layer.onEditsComplete = layer.__onEditsComplete;