public override XDocument Handle(HttpGetRequestQuery requestParameters) { var request = ParseRequest <WmsSupportedOperationEnum>(requestParameters.Request); switch (request) { case WmsSupportedOperationEnum.GetCapabilities: var xmlTemplate = Path.Combine(TemplatesPath, WMS_CapabilitiesTemplate); var doc = XDocument.Load(xmlTemplate); return(doc); default: throw new ArgumentOutOfRangeException(); } }
public override XDocument Handle(HttpGetRequestQuery requestParameters) { var request = ParseRequest <WfsSupportedOperationEnum>(requestParameters.Request); switch (request) { case WfsSupportedOperationEnum.GetCapabilities: // return resolveManager.Resolve<WfsGetCapabilitiesHandler>().Handle(requestParameters); var parameters = new WfsGetCapabilitiesParameters(); return(resolveManager.Resolve <WfsGetCapabilitiesHandler>().Handle(parameters)); case WfsSupportedOperationEnum.DescribeFeatureType: return(resolveManager.Resolve <WfsDescribeFeatureType>().Handle(requestParameters)); case WfsSupportedOperationEnum.GetFeature: return(resolveManager.Resolve <WfsGetFeatureHandler>().Handle(requestParameters)); default: throw new ArgumentOutOfRangeException(); } }
public IActionResult OwsGet(HttpGetRequestQuery requestParameters) { if (HttpContext.Request.Query.Count == 0) { throw new OwsException( OwsExceptionCodeEnum.NoApplicableCode, HttpContext.Request.Path, "No key-value pairs were given and the request does not contain parsable xml."); } if (!ModelState.IsValid) { var errorMessages = ModelState .Where(e => e.Value.Errors.Count > 0) .SelectMany(e => e.Value.Errors) .Select(e => e.ErrorMessage); throw new OwsException(OwsExceptionCodeEnum.NoApplicableCode, string.Empty, errorMessages.ToArray()); } XDocument resultXml; switch (requestParameters.SupportedService) { case SupportedOcgServiceEnum.Wfs: resultXml = resolveManager.Resolve <WfsHandler>().Handle(requestParameters); break; case SupportedOcgServiceEnum.Wms: resultXml = resolveManager.Resolve <WmsHandler>().Handle(requestParameters); break; default: throw new ArgumentOutOfRangeException(); } return(Content(resultXml.ToString(), "text/xml", Encoding.UTF8)); }
public override XDocument Handle(HttpGetRequestQuery requestParameters) { return(new XDocument(new XElement("DescribeFeatureType", new XAttribute("Version", "1.1.0")))); }
public abstract XDocument Handle(HttpGetRequestQuery requestParameters);
public override XDocument Handle(HttpGetRequestQuery requestParameters) { var parameters = new WfsGetCapabilitiesParameters(); return(Handle(parameters)); }