- Timestamp:
- Aug 31, 2017, 4:14:46 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/prototype-v0/zoo-project/zoo-kernel/service_internal_ms.c
r850 r851 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 map* datatype=getMap(tmpI->content," datatype");196 map* datatype=getMap(tmpI->content,"geodatatype"); 197 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->value211 );212 198 if(proto>0){ 213 addToMap(tmpI->content,"Reference",webService_url); 199 sprintf(webService_url, 200 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&format=%s&bbox=%s&crs=%s", 201 msUrl->value, 202 dataPath->value, 203 tmpI->name, 204 sid->value, 205 options[proto][2], 206 options[proto][0], 207 protoVersion, 208 layers, 209 rformat->value, 210 extent->value, 211 crs->value 212 ); 213 if(datatype!=NULL && strncasecmp(datatype->value,"raster",6)==0){ 214 addToMap(tmpI->content,"ref_wcs_link",webService_url); 215 } 216 else{ 217 addToMap(tmpI->content,"ref_wfs_link",webService_url); 218 } 214 219 proto=0; 215 220 rformat=createMap("mimeType","image/png"); 216 221 } 217 222 else{ 223 sprintf(webService_url, 224 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&width=%s&height=%s&format=%s&bbox=%s&crs=%s", 225 msUrl->value, 226 dataPath->value, 227 tmpI->name, 228 sid->value, 229 options[proto][2], 230 options[proto][0], 231 protoVersion, 232 layers, 233 width->value, 234 height->value, 235 rformat->value, 236 extent->value, 237 crs->value 238 ); 239 addToMap(tmpI->content,"ref_wms_link",webService_url); 218 240 if(datatype!=NULL && strncasecmp(datatype->value,"raster",6)==0){ 219 241 proto=2; … … 225 247 } 226 248 } 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 } 249 addToMap(tmpI->content,"Reference",webService_url); 250 233 251 protoVersion=options[proto][1]; 234 252 extent=getMap(tmpI->content,options[proto][4]); 235 253 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->value251 );252 254 if(proto>0){ 253 addToMap(tmpI->content,"Reference",webService_url); 254 } 255 addToMap(tmpI->content,"ref_wms_link",webService_url); 255 sprintf(webService_url, 256 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&format=%s&bbox=%s&crs=%s", 257 msUrl->value, 258 dataPath->value, 259 tmpI->name, 260 sid->value, 261 options[proto][2], 262 options[proto][0], 263 protoVersion, 264 layers, 265 rformat->value, 266 extent->value, 267 crs->value 268 ); 269 if(datatype!=NULL && strncasecmp(datatype->value,"raster",6)==0){ 270 addToMap(tmpI->content,"ref_wcs_link",webService_url); 271 } 272 else{ 273 addToMap(tmpI->content,"ref_wfs_link",webService_url); 274 } 275 }else{ 276 sprintf(webService_url, 277 "%s?map=%s/%s_%s.map&request=%s&service=%s&version=%s&%s&width=%s&height=%s&format=%s&bbox=%s&crs=%s", 278 msUrl->value, 279 dataPath->value, 280 tmpI->name, 281 sid->value, 282 options[proto][2], 283 options[proto][0], 284 protoVersion, 285 layers, 286 width->value, 287 height->value, 288 rformat->value, 289 extent->value, 290 crs->value 291 ); 292 addToMap(tmpI->content,"ref_wms_link",webService_url); 293 } 256 294 if(hasCRS==0){ 257 295 freeMap(&crs); 258 296 free(crs); 259 297 } 298 freeMap(&rformat); 299 free(rformat); 260 300 free(webService_url); 301 dumpMaps(tmpI); 261 302 } 262 303 … … 552 593 i++; 553 594 } 595 OGR_DS_Destroy(poDS1); 554 596 } 555 597 free(sdsName); … … 572 614 } 573 615 574 addToMap(output->content," datatype","vector");616 addToMap(output->content,"geodatatype","vector"); 575 617 int iLayer = 0; 576 618 for( iLayer=0; iLayer < OGR_DS_GetLayerCount(poDS); iLayer++ ){ … … 744 786 } 745 787 746 //OGR_DS_Destroy(poDS);788 OGR_DS_Destroy(poDS); 747 789 //OGRCleanupAll(); 748 790 … … 774 816 fprintf(stderr,"Unable to access the DataSource %s \n",pszFilename); 775 817 #endif 818 addToMap(output->content,"geodatatype","other"); 776 819 setMapInMaps(conf,"lenv","message","gdalinfo failed - unable to open"); 777 820 GDALDestroyDriverManager(); … … 782 825 #endif 783 826 784 addToMap(output->content," datatype","raster");827 addToMap(output->content,"geodatatype","raster"); 785 828 /** 786 829 * Add a new layer set name, data … … 1018 1061 GDALClose( hDataset ); 1019 1062 GDALDestroyDriverManager(); 1020 1021 1063 CPLCleanupTLS(); 1022 1064 return 1;
Note: See TracChangeset
for help on using the changeset viewer.