More robust array type check. p=mwootendev, r=me (closes #2959)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@12095 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
Tim Schaub
2011-06-16 19:16:25 +00:00
parent 54cccc0783
commit 995d612caa
43 changed files with 97 additions and 59 deletions
+1 -1
View File
@@ -496,7 +496,7 @@ OpenLayers.Format.ArcXML = OpenLayers.Class(OpenLayers.Format.XML, {
addRenderer: function(topRelem, renderer) {
if (renderer instanceof Array) {
if (OpenLayers.Util.isArray(renderer)) {
this.addGroupRenderer(topRelem, renderer);
} else {
var renderElem = this.createElementNS("", renderer.type.toUpperCase() + "RENDERER");
+5 -5
View File
@@ -99,7 +99,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
*/
write: function(features) {
var doc;
if (features instanceof Array) {
if (OpenLayers.Util.isArray(features)) {
doc = this.createElementNSPlus("atom:feed");
doc.appendChild(
this.createElementNSPlus("atom:title", {
@@ -183,7 +183,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
// atom:author
if (atomAttrib.authors) {
var authors = atomAttrib.authors instanceof Array ?
var authors = OpenLayers.Util.isArray(atomAttrib.authors) ?
atomAttrib.authors : [atomAttrib.authors];
for (var i=0, ii=authors.length; i<ii; i++) {
entryNode.appendChild(
@@ -196,7 +196,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
// atom:category
if (atomAttrib.categories) {
var categories = atomAttrib.categories instanceof Array ?
var categories = OpenLayers.Util.isArray(atomAttrib.categories) ?
atomAttrib.categories : [atomAttrib.categories];
var category;
for (var i=0, ii=categories.length; i<ii; i++) {
@@ -220,7 +220,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
// atom:contributor
if (atomAttrib.contributors) {
var contributors = atomAttrib.contributors instanceof Array ?
var contributors = OpenLayers.Util.isArray(atomAttrib.contributors) ?
atomAttrib.contributors : [atomAttrib.contributors];
for (var i=0, ii=contributors.length; i<ii; i++) {
entryNode.appendChild(
@@ -243,7 +243,7 @@ OpenLayers.Format.Atom = OpenLayers.Class(OpenLayers.Format.XML, {
// atom:link
if (atomAttrib.links) {
var links = atomAttrib.links instanceof Array ?
var links = OpenLayers.Util.isArray(atomAttrib.links) ?
atomAttrib.links : [atomAttrib.links];
var link;
for (var i=0, ii=links.length; i<ii; i++) {
+2 -2
View File
@@ -108,7 +108,7 @@ OpenLayers.Format.CSWGetDomain.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
this.readChildNodes(node, obj);
},
"DomainValues": function(node, obj) {
if (!(obj.DomainValues instanceof Array)) {
if (!(OpenLayers.Util.isArray(obj.DomainValues))) {
obj.DomainValues = [];
}
var attrs = node.attributes;
@@ -126,7 +126,7 @@ OpenLayers.Format.CSWGetDomain.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
obj.ParameterName = this.getChildValue(node);
},
"ListOfValues": function(node, obj) {
if (!(obj.ListOfValues instanceof Array)) {
if (!(OpenLayers.Util.isArray(obj.ListOfValues))) {
obj.ListOfValues = [];
}
this.readChildNodes(node, obj.ListOfValues);
@@ -253,7 +253,7 @@ OpenLayers.Format.CSWGetRecords.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
// rightsHolder, source, subject, title, type, URI
"*": function(node, obj) {
var name = node.localName || node.nodeName.split(":").pop();
if (!(obj[name] instanceof Array)) {
if (!(OpenLayers.Util.isArray(obj[name]))) {
obj[name] = new Array();
}
var dc_element = {};
@@ -269,7 +269,7 @@ OpenLayers.Format.CSWGetRecords.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
// abstract, modified, spatial
"*": function(node, obj) {
var name = node.localName || node.nodeName.split(":").pop();
if (!(obj[name] instanceof Array)) {
if (!(OpenLayers.Util.isArray(obj[name]))) {
obj[name] = new Array();
}
obj[name].push(this.getChildValue(node));
@@ -342,7 +342,7 @@ OpenLayers.Format.CSWGetRecords.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
);
}
var ResponseHandler = options.ResponseHandler || this.ResponseHandler;
if (ResponseHandler instanceof Array && ResponseHandler.length > 0) {
if (OpenLayers.Util.isArray(ResponseHandler) && ResponseHandler.length > 0) {
// ResponseHandler must be a non-empty array
for(var i=0, len=ResponseHandler.length; i<len; i++) {
this.writeNode(
@@ -379,7 +379,7 @@ OpenLayers.Format.CSWGetRecords.v2_0_2 = OpenLayers.Class(OpenLayers.Format.XML,
}
});
var ElementName = options.ElementName;
if (ElementName instanceof Array && ElementName.length > 0) {
if (OpenLayers.Util.isArray(ElementName) && ElementName.length > 0) {
// ElementName must be a non-empty array
for(var i=0, len=ElementName.length; i<len; i++) {
this.writeNode(
+1 -1
View File
@@ -639,7 +639,7 @@ OpenLayers.Format.GML = OpenLayers.Class(OpenLayers.Format.XML, {
* {String} A string representing the GML document.
*/
write: function(features) {
if(!(features instanceof Array)) {
if(!(OpenLayers.Util.isArray(features))) {
features = [features];
}
var gml = this.createElementNS("http://www.opengis.net/wfs",
+1 -1
View File
@@ -419,7 +419,7 @@ OpenLayers.Format.GML.Base = OpenLayers.Class(OpenLayers.Format.XML, {
*/
write: function(features) {
var name;
if(features instanceof Array) {
if(OpenLayers.Util.isArray(features)) {
name = "featureMembers";
} else {
name = "featureMember";
+1 -1
View File
@@ -90,7 +90,7 @@ OpenLayers.Format.GML.v2 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
*/
write: function(features) {
var name;
if(features instanceof Array) {
if(OpenLayers.Util.isArray(features)) {
// GML2 only has abstract feature collections
// wfs provides a feature collection from a well-known schema
name = "wfs:FeatureCollection";
+1 -1
View File
@@ -250,7 +250,7 @@ OpenLayers.Format.GML.v3 = OpenLayers.Class(OpenLayers.Format.GML.Base, {
*/
write: function(features) {
var name;
if(features instanceof Array) {
if(OpenLayers.Util.isArray(features)) {
name = "featureMembers";
} else {
name = "featureMember";
+3 -3
View File
@@ -219,7 +219,7 @@ OpenLayers.Format.GeoJSON = OpenLayers.Class(OpenLayers.Format.JSON, {
}
var geometry, collection = false;
if(obj.type == "GeometryCollection") {
if(!(obj.geometries instanceof Array)) {
if(!(OpenLayers.Util.isArray(obj.geometries))) {
throw "GeometryCollection must have geometries array: " + obj;
}
var numGeom = obj.geometries.length;
@@ -232,7 +232,7 @@ OpenLayers.Format.GeoJSON = OpenLayers.Class(OpenLayers.Format.JSON, {
geometry = new OpenLayers.Geometry.Collection(components);
collection = true;
} else {
if(!(obj.coordinates instanceof Array)) {
if(!(OpenLayers.Util.isArray(obj.coordinates))) {
throw "Geometry must have coordinates array: " + obj;
}
if(!this.parseCoords[obj.type.toLowerCase()]) {
@@ -450,7 +450,7 @@ OpenLayers.Format.GeoJSON = OpenLayers.Class(OpenLayers.Format.JSON, {
var geojson = {
"type": null
};
if(obj instanceof Array) {
if(OpenLayers.Util.isArray(obj)) {
geojson.type = "FeatureCollection";
var numFeatures = obj.length;
geojson.features = new Array(numFeatures);
+1 -1
View File
@@ -297,7 +297,7 @@ OpenLayers.Format.GeoRSS = OpenLayers.Class(OpenLayers.Format.XML, {
*/
write: function(features) {
var georss;
if(features instanceof Array) {
if(OpenLayers.Util.isArray(features)) {
georss = this.createElementNS(this.rssns, "rss");
for(var i=0, len=features.length; i<len; i++) {
georss.appendChild(this.createFeatureXML(features[i]));
+1 -1
View File
@@ -1131,7 +1131,7 @@ OpenLayers.Format.KML = OpenLayers.Class(OpenLayers.Format.XML, {
* {String} A KML string.
*/
write: function(features) {
if(!(features instanceof Array)) {
if(!(OpenLayers.Util.isArray(features))) {
features = [features];
}
var kml = this.createElementNS(this.kmlns, "kml");
+1 -1
View File
@@ -291,7 +291,7 @@ OpenLayers.Format.OSM = OpenLayers.Class(OpenLayers.Format.XML, {
* features - {Array(<OpenLayers.Feature.Vector>)}
*/
write: function(features) {
if (!(features instanceof Array)) {
if (!(OpenLayers.Util.isArray(features))) {
features = [features];
}
+1 -1
View File
@@ -178,7 +178,7 @@ OpenLayers.Format.OWSContext.v0_3_1 = OpenLayers.Class(OpenLayers.Format.XML, {
*/
decomposeNestingPath: function(nPath){
var a = [];
if (nPath instanceof Array) {
if (OpenLayers.Util.isArray(nPath)) {
var path = nPath.slice();
while (path.length > 0) {
a.push(path.slice());
+2 -2
View File
@@ -147,7 +147,7 @@ OpenLayers.Format.SLD.v1 = OpenLayers.Class(OpenLayers.Format.Filter.v1_0_0, {
for(var i=0, len=layer.userStyles.length; i<len; ++i) {
layer.userStyles[i].layerName = layer.name;
}
if(sld.namedLayers instanceof Array) {
if(OpenLayers.Util.isArray(sld.namedLayers)) {
sld.namedLayers.push(layer);
} else {
sld.namedLayers[layer.name] = layer;
@@ -558,7 +558,7 @@ OpenLayers.Format.SLD.v1 = OpenLayers.Class(OpenLayers.Format.Filter.v1_0_0, {
}
// add in named layers
// allow namedLayers to be an array
if(sld.namedLayers instanceof Array) {
if(OpenLayers.Util.isArray(sld.namedLayers)) {
for(var i=0, len=sld.namedLayers.length; i<len; ++i) {
this.writeNode("NamedLayer", sld.namedLayers[i], root);
}
+1 -1
View File
@@ -191,7 +191,7 @@ OpenLayers.Format.WMC = OpenLayers.Class(OpenLayers.Format.Context, {
}
// let's convert layers into layersContext object (if any)
if (layers != undefined && layers instanceof Array) {
if (layers != undefined && OpenLayers.Util.isArray(layers)) {
for (var i=0, len=layers.length; i<len; i++) {
var layer = layers[i];
if (layer instanceof OpenLayers.Layer.WMS) {
+1 -1
View File
@@ -1154,7 +1154,7 @@ OpenLayers.Format.WMC.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
var node = this.createElementDefaultNS("StyleList");
var styles = layer.styles;
if (styles && styles instanceof Array) {
if (styles && OpenLayers.Util.isArray(styles)) {
var sld;
for (var i=0, len=styles.length; i<len; i++) {
var s = styles[i];
+1 -1
View File
@@ -296,7 +296,7 @@ OpenLayers.Format.WMSCapabilities.v1 = OpenLayers.Class(
this.readChildNodes(node, obj.getcapabilities);
},
"Format": function(node, obj) {
if (obj.formats instanceof Array) {
if (OpenLayers.Util.isArray(obj.formats)) {
obj.formats.push(this.getChildValue(node));
} else {
obj.format = this.getChildValue(node);
+1 -1
View File
@@ -258,7 +258,7 @@ OpenLayers.Format.XLS.v1 = OpenLayers.Class(OpenLayers.Format.XML, {
this.writeNode(node, "Building", address.building);
}
var street = address.street;
if (!(street instanceof Array)) {
if (!(OpenLayers.Util.isArray(street))) {
street = [street];
}
for (var i=0, len=street.length; i < len; i++) {