- Timestamp:
- Aug 29, 2017, 10:52:39 AM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/prototype-v0/zoo-project/zoo-kernel/service_internal_ms.c
r839 r850 194 194 195 195 char* webService_url=(char*)malloc((strlen(msUrl->value)+strlen(format->value)+strlen(tmpI->name)+strlen(width->value)+strlen(height->value)+strlen(extent->value)+256)*sizeof(char)); 196 196 map* datatype=getMap(tmpI->content,"datatype"); 197 198 sprintf(webService_url, 199 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&format=%s&bbox=%s&crs=%s", 200 msUrl->value, 201 dataPath->value, 202 tmpI->name, 203 sid->value, 204 options[proto][2], 205 options[proto][0], 206 protoVersion, 207 layers, 208 rformat->value, 209 extent->value, 210 crs->value 211 ); 197 212 if(proto>0){ 198 sprintf(webService_url, 199 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&format=%s&bbox=%s&crs=%s", 200 msUrl->value, 201 dataPath->value, 202 tmpI->name, 203 sid->value, 204 options[proto][2], 205 options[proto][0], 206 protoVersion, 207 layers, 208 rformat->value, 209 extent->value, 210 crs->value 211 ); 213 addToMap(tmpI->content,"Reference",webService_url); 214 proto=0; 215 rformat=createMap("mimeType","image/png"); 212 216 } 213 217 else{ 214 sprintf(webService_url, 215 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&width=%s&height=%s&format=%s&bbox=%s&crs=%s", 216 msUrl->value, 217 dataPath->value, 218 tmpI->name, 219 sid->value, 220 options[proto][2], 221 options[proto][0], 222 protoVersion, 223 layers, 224 width->value, 225 height->value, 226 rformat->value, 227 extent->value, 228 crs->value 229 ); 230 } 218 if(datatype!=NULL && strncasecmp(datatype->value,"raster",6)==0){ 219 proto=2; 220 rformat=createMap("mimeType","image/tiff"); 221 } 222 else{ 223 proto=1; 224 rformat=createMap("mimeType","text/xml"); 225 } 226 } 227 if(datatype!=NULL && strncasecmp(datatype->value,"raster",6)==0){ 228 addToMap(tmpI->content,"ref_wcs_link",webService_url); 229 } 230 else{ 231 addToMap(tmpI->content,"ref_wfs_link",webService_url); 232 } 233 protoVersion=options[proto][1]; 234 extent=getMap(tmpI->content,options[proto][4]); 235 memset(webService_url,0,strlen(webService_url)); 236 sprintf(webService_url, 237 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&width=%s&height=%s&format=%s&bbox=%s&crs=%s", 238 msUrl->value, 239 dataPath->value, 240 tmpI->name, 241 sid->value, 242 options[proto][2], 243 options[proto][0], 244 protoVersion, 245 layers, 246 width->value, 247 height->value, 248 rformat->value, 249 extent->value, 250 crs->value 251 ); 252 if(proto>0){ 253 addToMap(tmpI->content,"Reference",webService_url); 254 } 255 addToMap(tmpI->content,"ref_wms_link",webService_url); 231 256 if(hasCRS==0){ 232 257 freeMap(&crs); 233 258 free(crs); 234 259 } 235 addToMap(tmpI->content,"Reference",webService_url);236 260 free(webService_url); 237 261 } … … 531 555 free(sdsName); 532 556 free(dsName); 533 557 534 558 OGRDataSourceH poDS = NULL; 535 559 OGRSFDriverH *poDriver = NULL; … … 548 572 } 549 573 574 addToMap(output->content,"datatype","vector"); 550 575 int iLayer = 0; 551 576 for( iLayer=0; iLayer < OGR_DS_GetLayerCount(poDS); iLayer++ ){ … … 757 782 #endif 758 783 784 addToMap(output->content,"datatype","raster"); 759 785 /** 760 786 * Add a new layer set name, data
Note: See TracChangeset
for help on using the changeset viewer.