org.geoserver.ows.Request.getKvp()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(9.2k)|赞(0)|评价(0)|浏览(230)

本文整理了Java中org.geoserver.ows.Request.getKvp方法的一些代码示例,展示了Request.getKvp的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Request.getKvp方法的具体详情如下:
包路径:org.geoserver.ows.Request
类名称:Request
方法名:getKvp

Request.getKvp介绍

[英]The parsed key value pair map
[中]已解析的键值对映射

代码示例

代码示例来源:origin: geoserver/geoserver

  1. /**
  2. * Returns an eventual filter included among the parsed kvp map of the current request. Will
  3. * work for CQL_FILTER, FILTER and FEATURE_ID
  4. */
  5. public static Filter getRequestFilter() {
  6. Request request = Dispatcher.REQUEST.get();
  7. if (request == null) {
  8. return null;
  9. }
  10. Object filter = request.getKvp().get("FILTER");
  11. if (!(filter instanceof Filter)) {
  12. filter = request.getKvp().get("CQL_FILTER");
  13. if (filter instanceof List) {
  14. List list = (List) filter;
  15. if (list.size() > 0) {
  16. filter = list.get(0);
  17. }
  18. }
  19. }
  20. if (!(filter instanceof Filter)) {
  21. filter = request.getKvp().get("FEATURE_ID");
  22. }
  23. if (filter instanceof Filter) {
  24. return (Filter) filter;
  25. } else {
  26. return null;
  27. }
  28. }

代码示例来源:origin: geoserver/geoserver

  1. public Request init(Request request) {
  2. // see if we have an env map already parsed in the request
  3. Object obj = request.getKvp().get("env");
  4. Map<String, Object> envVars = null;
  5. if (obj instanceof Map) {
  6. envVars = (Map) obj;
  7. }
  8. // inject the current user in it
  9. Authentication auth = SecurityContextHolder.getContext().getAuthentication();
  10. if (auth != null && !(auth instanceof AnonymousAuthenticationToken)) {
  11. String name = auth.getName();
  12. if (envVars == null) {
  13. envVars = new HashMap<String, Object>();
  14. }
  15. envVars.put("GSUSER", name);
  16. }
  17. // set it into the EnvFunction
  18. if (envVars != null) {
  19. EnvFunction.setLocalValues(envVars);
  20. }
  21. return request;
  22. }

代码示例来源:origin: geoserver/geoserver

  1. void parseKVP(Request req) throws ServiceException {
  2. preParseKVP(req);
  3. parseKVP(req, req.getKvp());
  4. }

代码示例来源:origin: geoserver/geoserver

  1. return xmlReader.read(requestBean, input, request.getKvp());

代码示例来源:origin: geoserver/geoserver

  1. Object parseRequestKVP(Class type, Request request) throws Exception {
  2. KvpRequestReader kvpReader = findKvpRequestReader(type);
  3. if (kvpReader != null) {
  4. // check for http request awareness
  5. if (kvpReader instanceof HttpServletRequestAware) {
  6. ((HttpServletRequestAware) kvpReader).setHttpRequest(request.getHttpRequest());
  7. }
  8. Object requestBean = kvpReader.createRequest();
  9. if (requestBean != null) {
  10. requestBean = kvpReader.read(requestBean, request.getKvp(), request.getRawKvp());
  11. }
  12. return requestBean;
  13. }
  14. return null;
  15. }

代码示例来源:origin: geoserver/geoserver

  1. if (!exists && req.getKvp().get("request") != null) {
  2. req.setRequest(normalize(KvpUtils.getSingleValue(req.getKvp(), "request")));
  3. exists = operationExists(req, serviceDescriptor);
  4. boolean xmlParsed = false;
  5. if (req.getKvp() != null && req.getKvp().size() > 0) {

代码示例来源:origin: geoserver/geoserver

  1. Service service(Request req) throws Exception {
  2. if (req.getKvp() != null) {
  3. req.setService(normalize(KvpUtils.getSingleValue(req.getKvp(), "service")));
  4. req.setVersion(
  5. normalizeVersion(normalize(KvpUtils.getSingleValue(req.getKvp(), "version"))));
  6. req.setRequest(normalize(KvpUtils.getSingleValue(req.getKvp(), "request")));
  7. req.setOutputFormat(normalize(KvpUtils.getSingleValue(req.getKvp(), "outputFormat")));

代码示例来源:origin: org.geoserver.community/gs-nsg-wfs-profile

  1. @Override
  2. @SuppressWarnings("unchecked")
  3. public Request init(Request request) {
  4. Object resultType = request.getKvp().get(RESULT_TYPE_PARAMETER);
  5. if (resultType != null && resultType.toString().equals(RESULT_TYPE_INDEX)) {
  6. request.getKvp().put(RESULT_TYPE_PARAMETER, ResultTypeType.HITS);
  7. request.getKvp().put(RESULT_TYPE_INDEX_PARAMETER, true);
  8. }
  9. return super.init(request);
  10. }

代码示例来源:origin: org.geoserver/gs-wfs

  1. private String getCallbackFunction() {
  2. Request request = Dispatcher.REQUEST.get();
  3. if (request == null) {
  4. return JSONType.CALLBACK_FUNCTION;
  5. }
  6. return JSONType.getCallbackFunction(request.getKvp());
  7. }

代码示例来源:origin: org.geoserver/gs-wfs

  1. private String getCallbackFunction() {
  2. Request request = Dispatcher.REQUEST.get();
  3. if (request == null) {
  4. return JSONType.CALLBACK_FUNCTION;
  5. }
  6. return JSONType.getCallbackFunction(request.getKvp());
  7. }

代码示例来源:origin: org.geoserver/gs-wfs

  1. private String getIdOption() {
  2. // include fid?
  3. String id_option = null; // null - default, "" - none, or "property"
  4. Request request = Dispatcher.REQUEST.get();
  5. if (request != null) {
  6. id_option = JSONType.getIdPolicy(request.getKvp());
  7. }
  8. return id_option;
  9. }

代码示例来源:origin: org.geoserver/gs-wms

  1. private static String getCallbackFunction() {
  2. Request request = Dispatcher.REQUEST.get();
  3. if (request == null) {
  4. return JSONType.CALLBACK_FUNCTION;
  5. } else {
  6. return JSONType.getCallbackFunction(request.getKvp());
  7. }
  8. }

代码示例来源:origin: org.geoserver.community/gs-nsg-wfs-profile

  1. @Override
  2. public Response responseDispatched(
  3. Request request, Operation operation, Object result, Response response) {
  4. Response newResponse = response;
  5. if (request.getKvp().get(RESULT_TYPE_INDEX_PARAMETER) != null
  6. && (Boolean) request.getKvp().get(RESULT_TYPE_INDEX_PARAMETER)) {
  7. IndexOutputFormat r = new IndexOutputFormat(this.gs, this.indexConfiguration);
  8. r.setRequest(request);
  9. newResponse = r;
  10. }
  11. return super.responseDispatched(request, operation, result, newResponse);
  12. }
  13. }

代码示例来源:origin: org.geoserver/gs-wfs

  1. private static void writeJsonpException(
  2. ServiceException exception,
  3. Request request,
  4. OutputStream out,
  5. String charset,
  6. boolean verbose)
  7. throws IOException {
  8. OutputStreamWriter outWriter = new OutputStreamWriter(out, charset);
  9. final String callback;
  10. if (request == null) {
  11. callback = JSONType.CALLBACK_FUNCTION;
  12. } else {
  13. callback = JSONType.getCallbackFunction(request.getKvp());
  14. }
  15. outWriter.write(callback + "(");
  16. writeJsonException(exception, request, outWriter, verbose);
  17. outWriter.write(")");
  18. outWriter.flush();
  19. IOUtils.closeQuietly(outWriter);
  20. }

代码示例来源:origin: org.geoserver.community/gs-nsg-wfs-profile

  1. @Override
  2. public Service serviceDispatched(Request request, Service service) throws ServiceException {
  3. Object req = request.getKvp().get("REQUEST");
  4. if ("wfs".equals(service.getId().toLowerCase()) && PAGE_RESULTS.equals(req)) {
  5. // allow the request to be successfully parsed as a GetFeature (needs at least a
  6. // typename or a featureId)
  7. request.getKvp().put("featureId", Collections.singletonList("dummy"));
  8. // replace the service
  9. return new Service(
  10. service.getId(), this.service, service.getVersion(), service.getOperations());
  11. }
  12. return service;
  13. }

代码示例来源:origin: org.geoserver.community/gs-wfs3

  1. /**
  2. * Returns the WFS3 featureId, or null if it's missing or the request is not a WFS3 one
  3. *
  4. * @return
  5. */
  6. private String getWFS3FeatureId() {
  7. Request dr = Dispatcher.REQUEST.get();
  8. String featureId = null;
  9. if (dr != null && (new Version(dr.getVersion()).getMajor().equals(3))) {
  10. Object featureIdValue = dr.getKvp().get("featureId");
  11. if (featureIdValue instanceof List) {
  12. featureId = (String) ((List) featureIdValue).get(0);
  13. }
  14. }
  15. return featureId;
  16. }

代码示例来源:origin: org.geoserver/gs-wms

  1. @Override
  2. public TemplateModel wrap(Object object) throws TemplateModelException {
  3. if (object instanceof FeatureCollection) {
  4. SimpleHash map = (SimpleHash) super.wrap(object);
  5. map.put("request", Dispatcher.REQUEST.get().getKvp());
  6. map.put("environment", new EnvironmentVariablesTemplateModel());
  7. return map;
  8. }
  9. return super.wrap(object);
  10. }
  11. });

代码示例来源:origin: org.geoserver.extension/gs-wps-core

  1. /**
  2. * Simulates what the Dispatcher is doing when parsing a KVP request
  3. *
  4. * @param href
  5. * @param reader
  6. */
  7. protected Object kvpParse(String href, KvpRequestReader reader) throws Exception {
  8. Map original = new KvpMap(KvpUtils.parseQueryString(href));
  9. KvpUtils.normalize(original);
  10. Map parsed = new KvpMap(original);
  11. List<Throwable> errors = KvpUtils.parse(parsed);
  12. if (errors.size() > 0) {
  13. throw new WPSException("Failed to parse KVP request", errors.get(0));
  14. }
  15. // hack to allow wcs filters to work... we should really upgrade the WCS models instead...
  16. Request r = Dispatcher.REQUEST.get();
  17. if (r != null) {
  18. Map kvp = new HashMap(r.getKvp());
  19. r.setKvp(new CaseInsensitiveMap(parsed));
  20. }
  21. return reader.read(reader.createRequest(), parsed, original);
  22. }

代码示例来源:origin: org.geoserver.extension/wps-core

  1. /**
  2. * Simulates what the Dispatcher is doing when parsing a KVP request
  3. *
  4. * @param href
  5. * @param reader
  6. * @return
  7. */
  8. Object kvpParse(String href, KvpRequestReader reader) throws Exception {
  9. Map original = new KvpMap(KvpUtils.parseQueryString(href));
  10. KvpUtils.normalize(original);
  11. Map parsed = new KvpMap(original);
  12. List<Throwable> errors = KvpUtils.parse(parsed);
  13. if (errors.size() > 0) {
  14. throw new WPSException("Failed to parse KVP request", errors.get(0));
  15. }
  16. // hack to allow wcs filters to work... we should really upgrade the WCS models instead...
  17. Request r = Dispatcher.REQUEST.get();
  18. if (r != null) {
  19. Map kvp = new HashMap(r.getKvp());
  20. r.setKvp(new CaseInsensitiveMap(parsed));
  21. }
  22. return reader.read(reader.createRequest(), parsed, original);
  23. }

代码示例来源:origin: org.geoserver/gs-wfs

  1. /** Encodes a ogc:ServiceExceptionReport to output. */
  2. public void handleServiceException(ServiceException exception, Request request) {
  3. boolean verbose = gs.getSettings().isVerboseExceptions();
  4. String charset = gs.getSettings().getCharset();
  5. // first of all check what kind of exception handling we must perform
  6. final String exceptions;
  7. try {
  8. exceptions = (String) request.getKvp().get("EXCEPTIONS");
  9. if (exceptions == null) {
  10. // use default
  11. handleDefault(exception, request, charset, verbose);
  12. return;
  13. }
  14. } catch (Exception e) {
  15. // width and height might be missing
  16. handleDefault(exception, request, charset, verbose);
  17. return;
  18. }
  19. if (JSONType.isJsonMimeType(exceptions)) {
  20. // use Json format
  21. JSONType.handleJsonException(LOGGER, exception, request, charset, verbose, false);
  22. } else if (JSONType.useJsonp(exceptions)) {
  23. // use JsonP format
  24. JSONType.handleJsonException(LOGGER, exception, request, charset, verbose, true);
  25. } else {
  26. handleDefault(exception, request, charset, verbose);
  27. }
  28. }

相关文章