Changeset 14851 in josm


Ignore:
Timestamp:
2019-03-07T09:54:49+01:00 (5 years ago)
Author:
GerdP
Message:

see #17268: fix some findbugs/sonar/javadoc issues

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java

    r14828 r14851  
    2727import java.util.TreeSet;
    2828import java.util.function.Predicate;
     29import java.util.regex.Pattern;
    2930import java.util.stream.Collectors;
    3031
     
    278279
    279280        Map<String, String> tmap = buildIgnore(buildJTreeList());
    280         if (tmap != null && !tmap.isEmpty()) {
     281        if (!tmap.isEmpty()) {
    281282            ignoredErrors.clear();
    282283            ignoredErrors.putAll(tmap);
     
    303304    /**
    304305     * Build a JTree with a list
    305      * @return &lttype&gtlist as a {@code JTree}
     306     * @return &lt;type&gt;list as a {@code JTree}
    306307     */
    307308    public static JTree buildJTreeList() {
    308309        DefaultMutableTreeNode root = new DefaultMutableTreeNode(tr("Ignore list"));
     310        final Pattern elemId1Pattern = Pattern.compile(":(r|w|n)_");
     311        final Pattern elemId2Pattern = Pattern.compile("^[0-9]+$");
    309312        for (Entry<String, String> e: ignoredErrors.entrySet()) {
    310313            String key = e.getKey();
    311314            String value = e.getValue();
    312315            ArrayList<String> ignoredWayList = new ArrayList<>();
    313             String[] osmobjects = key.split(":(r|w|n)_");
     316            String[] osmobjects = elemId1Pattern.split(key);
    314317            for (int i = 1; i < osmobjects.length; i++) {
    315318                String osmid = osmobjects[i];
    316                 if (osmid.matches("^[0-9]+$")) {
     319                if (elemId2Pattern.matcher(osmid).matches()) {
    317320                    osmid = '_' + osmid;
    318321                    int index = key.indexOf(osmid);
     
    388391
    389392
     393        StringBuilder sb = new StringBuilder();
    390394        for (int i = 0; i < model.getChildCount(node); i++) {
    391395            DefaultMutableTreeNode child = (DefaultMutableTreeNode) model.getChild(node, i);
     
    393397                String ignoreName = child.getUserObject().toString();
    394398                if (ignoreName.matches("^(r|w|n)_.*")) {
    395                     osmids += ":" + child.getUserObject().toString();
     399                    sb.append(":").append(child.getUserObject().toString());
    396400                } else if (ignoreName.matches("^[0-9]+(_.*|)$")) {
    397401                    rHashMap.put(ignoreName, description);
     
    401405            }
    402406        }
     407        osmids += sb.toString();
    403408        if (!osmids.isEmpty() && osmids.indexOf(':') != 0) rHashMap.put(osmids, description);
    404409        return rHashMap;
Note: See TracChangeset for help on using the changeset viewer.