Make ol.format.filter.or/and accept n conditions

This commit is contained in:
tsauerwein
2017-01-17 10:40:02 +01:00
parent 6f7eb53c38
commit 85fa61a046
8 changed files with 71 additions and 73 deletions
+7 -11
View File
@@ -599,23 +599,19 @@ ol.format.WFS.writeWithinFilter_ = function(node, filter, objectStack) {
/**
* @param {Node} node Node.
* @param {ol.format.filter.LogicalBinary} filter Filter.
* @param {ol.format.filter.LogicalNary} filter Filter.
* @param {Array.<*>} objectStack Node stack.
* @private
*/
ol.format.WFS.writeLogicalFilter_ = function(node, filter, objectStack) {
/** @type {ol.XmlNodeStackItem} */
var item = {node: node};
var conditionA = filter.conditionA;
ol.xml.pushSerializeAndPop(item,
ol.format.WFS.GETFEATURE_SERIALIZERS_,
ol.xml.makeSimpleNodeFactory(conditionA.getTagName()),
[conditionA], objectStack);
var conditionB = filter.conditionB;
ol.xml.pushSerializeAndPop(item,
ol.format.WFS.GETFEATURE_SERIALIZERS_,
ol.xml.makeSimpleNodeFactory(conditionB.getTagName()),
[conditionB], objectStack);
filter.conditions.forEach(function(condition) {
ol.xml.pushSerializeAndPop(item,
ol.format.WFS.GETFEATURE_SERIALIZERS_,
ol.xml.makeSimpleNodeFactory(condition.getTagName()),
[condition], objectStack);
});
};