[OpenLayers-Commits] r5102 - in sandbox/context: examples lib/OpenLayers/Format

commits at openlayers.org commits at openlayers.org
Fri Nov 2 07:41:20 EDT 2007


Author: ominiverdi
Date: 2007-11-02 07:41:18 -0400 (Fri, 02 Nov 2007)
New Revision: 5102

Modified:
   sandbox/context/examples/context-owc.html
   sandbox/context/lib/OpenLayers/Format/OWC.js
Log:
Context: added Tom's new Context sample for vesion 0.2.1
fixed interface
adding WFS layers still buggy

Modified: sandbox/context/examples/context-owc.html
===================================================================
--- sandbox/context/examples/context-owc.html	2007-11-02 02:20:25 UTC (rev 5101)
+++ sandbox/context/examples/context-owc.html	2007-11-02 11:41:18 UTC (rev 5102)
@@ -23,7 +23,10 @@
     <script src='http://maps.google.com/maps?file=api&amp;v=2&amp;key=ABQIAAAAibqj4o_PdrlEKJTx1aS1rhQaMbevYlCUtCKKycs8Y2ERuqs33xSQtx5-h45tBR8NwxQB20DPyhtTvQ'></script>
     <script src="../lib/OpenLayers.js"></script>
 	<script src="../lib/OpenLayers/Format/OWC.js" type="text/javascript"></script>
-    <script type="text/javascript">
+	<!-- patched version of WFS, overriding class -->
+	<script src="http://www.ominiverdi.org/openlayers/sandbox/openlayers/lib/OpenLayers/Layer/WFS.js" type="text/javascript"></script>
+    
+	<script type="text/javascript">
         var lon = 5;
         var lat = 40;
         var zoom = 5;
@@ -40,6 +43,7 @@
 		var owc = new OpenLayers.Format.OWC();
         var doc = null;
 		var ows_url =  "http://www.ogcnetwork.net/schemas/owc/0.2.1/owsContext.xml";
+		var ows_url = "http://devgeo.cciw.ca/ms_tmp/owsContext-test.xml";
 		
         function serialize() {
             var str = olon.write(map, true);
@@ -89,30 +93,27 @@
 		}
 		function owsread() {
             
-            OpenLayers.loadURL(ows_url, null, null, loadSuccess, loadFailure);
-        }
-        
-        function loadSuccess(request) {
-            updateStatus("loaded");
-			var owc_str = owc.read(request.responseText);
+            //OpenLayers.loadURL(ows_url, null, null, loadSuccess, loadFailure);
+			var owc_str = owc.read(getStatus());
             updateStatus(owc_str);
-			
         }
         
-        function loadFailure(request) {
-            updateStatus("failed to load");
-        }
+        
 		function updateStatus(msg) {
 			var element = document.getElementById('output');
             element.value = msg;
 		}
+		function getStatus() {
+			var element = document.getElementById('output');
+            return element.value;
+		}
 		
 		function owsshow() {
             
-            OpenLayers.loadURL(ows_url, null, null, loadSuccess2, loadFailure);
+            OpenLayers.loadURL(ows_url, null, null, loadSuccess, loadFailure);
         }
         
-        function loadSuccess2(request) {
+        function loadSuccess(request) {
             updateStatus("loaded");
 			var owc_str = request.responseText;
             updateStatus(owc_str);

Modified: sandbox/context/lib/OpenLayers/Format/OWC.js
===================================================================
--- sandbox/context/lib/OpenLayers/Format/OWC.js	2007-11-02 02:20:25 UTC (rev 5101)
+++ sandbox/context/lib/OpenLayers/Format/OWC.js	2007-11-02 11:41:18 UTC (rev 5102)
@@ -123,9 +123,11 @@
 		OLContext.layers = [];
 		var resourcelist = this.findChildByName(context,'ResourceList');
 		//var layerlist = this.findChildByName(resourcelist,'LayerList');
+		
+		//WMS LAYERS
 		var layers = this.findChildrenByName(resourcelist,'Layer');
 		for(i=0;i<layers.length;i++){
-			layer = layers[i];
+			var layer = layers[i];
 			console.log('layer: '+i);
 			//getting porperties values
 			var name = this.concatChildValues(this.findChildByName(layer,'ows:Identifier'));
@@ -161,6 +163,57 @@
 			
 		}
 		
+		//<FeatureType
+		//WFS LAYERS
+		var features = this.findChildrenByName(resourcelist,'FeatureType');
+		for(i=0;i<features.length;i++){
+			var layer = features[i];
+			console.log('feature: '+i);
+			//getting porperties values
+			var name = this.concatChildValues(this.findChildByName(layer,'ows:Identifier'));
+			var title = this.concatChildValues(this.findChildByName(layer,'ows:Title'));
+			var srs = this.concatChildValues(this.findChildByName(layer,'ows:AvailableCRS'));
+			var srss = srs.split(' ');
+			srs = srss[0];//bad choice - forcing to first srs available
+			
+			//GET server values
+			var server = this.findChildByName(layer,'Server');
+			var version = server.getAttribute('version');
+			var service = server.getAttribute('service');//TODO parse to see if not WMS
+			var onlineResource = this.findChildByName(server,'OnlineResource');
+			var url = onlineResource.getAttribute('xlink:href');
+			
+			//built layer structure
+			/*
+			 * "Owl Survey",
+                "http://www.bsc-eoc.org/cgi-bin/bsc_ows.asp?",
+                {typename: "OWLS", maxfeatures: 10},
+                { featureClass: OpenLayers.Feature.WFS}
+			 */
+			
+			layer = {};
+			layer.CLASS_NAME = "OpenLayers.Layer.WFS";
+			layer.name =  title;
+            layer.url =  url;
+            layer.params = {}; 
+			layer.params.typename = name;
+			layer.params.maxfeatures = '10';
+			layer.params.service = "WFS";
+            layer.params.version = "1.0.0";
+            layer.params.request = "GetFeature";
+			
+			/*layer.params.SERVICE = 'WMS';
+			layer.params.VERSION = version;
+			layer.params.REQUEST = 'GetMap';
+			layer.params.STYLES = '';
+			layer.params.EXCEPTIONS = 'application/vnd.ogc.se_inimage';*/
+			//layer.params.SRS = srs;
+			//OLContext.projection = srs;
+			
+			if(layer.name=='roads')OLContext.layers.push(layer);
+			
+		}
+		console.log(OLContext);
 		//OUTPUT
 		console.log('out');
         return olon.write(OLContext,true);



More information about the Commits mailing list