def get_capabilities(args): # TODO: Handle updatesequence request parameter for cache consistency. # Note: Only WMS v1.0.0 exists at this stage, so no version negotiation is necessary # Extract layer metadata from Datacube. platforms = get_layers(refresh=True) service_cfg = get_service_cfg() url = args.get('Host', args['url_root']) base_url = get_service_base_url(service_cfg.allowed_urls, url) section = args.get("section") if section: section = section.lower() show_service_id = False show_service_provider = False show_ops_metadata = False show_contents = False show_themes = False if section is None: show_service_id = True show_service_provider = True show_ops_metadata = True show_contents = True show_themes = True else: sections = section.split(",") for s in sections: if s == "all": show_service_id = True show_service_provider = True show_ops_metadata = True show_contents = True show_themes = True elif s == "serviceidentification": show_service_id = True elif s == "serviceprovider": show_service_provider = True elif s == "operationsmetadata": show_ops_metadata = True elif s == "contents": show_contents = True elif s == "themes": show_themes = True else: raise WMTSException("Invalid section: %s" % section, WMTSException.INVALID_PARAMETER_VALUE, locator="Section parameter") return (render_template("wmts_capabilities.xml", service=service_cfg, platforms=platforms, base_url=base_url, show_service_id=show_service_id, show_service_provider=show_service_provider, show_ops_metadata=show_ops_metadata, show_contents=show_contents, show_themes=show_themes, webmerc_ss=WebMercScaleSet), 200, resp_headers({ "Content-Type": "application/xml", "Cache-Control": "no-cache,max-age=0" }))
def get_capabilities(args): # TODO: Handle updatesequence request parameter for cache consistency. # Note: Only WMS v1.3.0 is fully supported at this stage, so no version negotiation is necessary # Extract layer metadata from Datacube. platforms = get_layers(refresh=True) service_cfg = get_service_cfg() url = args.get('Host', args['url_root']) base_url = get_service_base_url(service_cfg.allowed_urls, url) return (render_template("wms_capabilities.xml", service=service_cfg, platforms=platforms, base_url=base_url), 200, resp_headers({ "Content-Type": "application/xml", "Cache-Control": "max-age=10" }))
def get_capabilities(args): # TODO: Handle updatesequence request parameter for cache consistency. # Note: Only WCS v1.0.0 is fully supported at this stage, so no version negotiation is necessary section = args.get("section") if section: section = section.lower() show_service = False show_capability = False show_content_metadata = False if section is None or section == "/": show_service = True show_capability = True show_content_metadata = True elif section == "/wcs_capabilities/service": show_service = True elif section == "/wcs_capabilities/capability": show_capability = True elif section == "/wcs_capabilities/contentmetadata": show_content_metadata = True else: raise WCS1Exception("Invalid section: %s" % section, WCS1Exception.INVALID_PARAMETER_VALUE, locator="Section parameter") # Extract layer metadata from Datacube. platforms = get_layers(refresh=True) service_cfg = get_service_cfg() url = args.get('Host', args['url_root']) base_url = get_service_base_url(service_cfg.allowed_urls, url) return ( render_template("wcs_capabilities.xml", show_service=show_service, show_capability=show_capability, show_content_metadata=show_content_metadata, service=service_cfg, platforms=platforms, base_url=base_url), 200, resp_headers({ "Content-Type": "application/xml", "Cache-Control": "no-cache, max-age=0" }))