Ignore:
Timestamp:
2020-06-07T13:09:55+02:00 (4 years ago)
Author:
simon04
Message:

RequestProcessor.getHandlersInfoAsJSON: use javax.json

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/FeaturesHandler.java

    r12620 r16550  
    44import static org.openstreetmap.josm.tools.I18n.tr;
    55
     6import java.util.Arrays;
     7import java.util.Collection;
     8
    69import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault;
    710import org.openstreetmap.josm.io.remotecontrol.RequestProcessor;
    8 import org.openstreetmap.josm.tools.Logging;
    911
    1012/**
     
    2022
    2123    @Override
    22     protected void handleRequest() throws RequestHandlerErrorException,
    23             RequestHandlerBadRequestException {
    24         StringBuilder buf = new StringBuilder();
     24    protected void handleRequest() throws RequestHandlerErrorException, RequestHandlerBadRequestException {
    2525        String q = args.get("q");
    26         if (q != null) {
    27             buf.append('[');
    28             boolean first = true;
    29             for (String s: q.split("[,\\s]+")) {
    30                if (first) {
    31                    first = false;
    32                } else {
    33                    buf.append(", ");
    34                }
    35                String info = RequestProcessor.getHandlerInfoAsJSON('/'+s);
    36                if (info != null) {
    37                    buf.append(info);
    38                } else {
    39                    Logging.warn("Unknown handler {0} passed to /features request", s);
    40                }
    41             }
    42             buf.append(']');
    43         } else {
    44             buf.append(RequestProcessor.getHandlersInfoAsJSON());
    45         }
    46 
    47         content = buf.toString();
     26        Collection<String> handlers = q == null ? null : Arrays.asList(q.split("[,\\s]+"));
     27        content = RequestProcessor.getHandlersInfoAsJSON(handlers).toString();
    4828        contentType = "application/json";
    4929        if (args.containsKey("jsonp")) {
Note: See TracChangeset for help on using the changeset viewer.