Changeset 18208 in josm for trunk/src/org


Ignore:
Timestamp:
2021-09-11T17:50:57+02:00 (3 years ago)
Author:
Don-vip
Message:

global use of Utils.isEmpty/isBlank

Location:
trunk/src/org/openstreetmap/josm
Files:
104 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java

    r17594 r18208  
    4747import org.openstreetmap.josm.tools.ImageProvider;
    4848import org.openstreetmap.josm.tools.Logging;
     49import org.openstreetmap.josm.tools.Utils;
    4950import org.openstreetmap.josm.tools.bugreport.ReportedException;
    5051
     
    115116            case WMS_ENDPOINT:
    116117                // convert to WMS type
    117                 if (info.getDefaultLayers() == null || info.getDefaultLayers().isEmpty()) {
     118                if (Utils.isEmpty(info.getDefaultLayers())) {
    118119                    return getWMSLayerInfo(info);
    119120                } else {
     
    122123            case WMTS:
    123124                // specify which layer to use
    124                 if (info.getDefaultLayers() == null || info.getDefaultLayers().isEmpty()) {
     125                if (Utils.isEmpty(info.getDefaultLayers())) {
    125126                    WMTSTileSource tileSource = new WMTSTileSource(info);
    126127                    DefaultLayer layerId = tileSource.userSelectLayer();
     
    169170            }
    170171        } catch (IllegalArgumentException | ReportedException ex) {
    171             if (ex.getMessage() == null || ex.getMessage().isEmpty() || GraphicsEnvironment.isHeadless()) {
     172            if (Utils.isEmpty(ex.getMessage()) || GraphicsEnvironment.isHeadless()) {
    172173                throw ex;
    173174            } else {
  • trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java

    r17200 r18208  
    5050import org.openstreetmap.josm.tools.Shortcut;
    5151import org.openstreetmap.josm.tools.UserCancelException;
     52import org.openstreetmap.josm.tools.Utils;
    5253
    5354/**
     
    113114        // prepare and clean the list of ways to combine
    114115        //
    115         if (ways == null || ways.isEmpty())
     116        if (Utils.isEmpty(ways))
    116117            return null;
    117118        ways.remove(null); // just in case -  remove all null ways from the collection
  • trunk/src/org/openstreetmap/josm/actions/CreateMultipolygonAction.java

    r17585 r18208  
    387387    protected void updateEnabledState(Collection<? extends OsmPrimitive> selection) {
    388388        DataSet ds = getLayerManager().getEditDataSet();
    389         if (ds == null || selection.isEmpty()) {
     389        if (ds == null || Utils.isEmpty(selection)) {
    390390            setEnabled(false);
    391391        } else if (update) {
  • trunk/src/org/openstreetmap/josm/actions/DownloadReferrersAction.java

    r14397 r18208  
    1515import org.openstreetmap.josm.gui.layer.OsmDataLayer;
    1616import org.openstreetmap.josm.tools.Shortcut;
     17import org.openstreetmap.josm.tools.Utils;
    1718
    1819/**
     
    4445     */
    4546    public static void downloadReferrers(OsmDataLayer targetLayer, Collection<OsmPrimitive> children) {
    46         if (children == null || children.isEmpty())
     47        if (Utils.isEmpty(children))
    4748            return;
    4849        MainApplication.worker.submit(new DownloadReferrersTask(targetLayer, children));
  • trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java

    r18014 r18208  
    261261        @Override
    262262        protected void realRun() throws SAXException, IOException, OsmTransferException {
    263             if (files == null || files.isEmpty()) return;
     263            if (Utils.isEmpty(files)) return;
    264264
    265265            /**
  • trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java

    r14397 r18208  
    2828import org.openstreetmap.josm.io.OsmTransferException;
    2929import org.openstreetmap.josm.tools.Shortcut;
     30import org.openstreetmap.josm.tools.Utils;
    3031
    3132/**
     
    120121    @Override
    121122    protected void updateEnabledState(Collection<? extends OsmPrimitive> selection) {
    122         if (selection == null || selection.isEmpty()) {
     123        if (Utils.isEmpty(selection)) {
    123124            setEnabled(false);
    124125        } else {
  • trunk/src/org/openstreetmap/josm/actions/UploadSelectionAction.java

    r15513 r18208  
    3434import org.openstreetmap.josm.tools.ExceptionUtil;
    3535import org.openstreetmap.josm.tools.Shortcut;
     36import org.openstreetmap.josm.tools.Utils;
    3637import org.xml.sax.SAXException;
    3738
     
    138139     */
    139140    public void uploadPrimitives(OsmDataLayer layer, Collection<OsmPrimitive> toUpload) {
    140         if (toUpload == null || toUpload.isEmpty()) return;
     141        if (Utils.isEmpty(toUpload)) return;
    141142        UploadHullBuilder builder = new UploadHullBuilder();
    142143        toUpload = builder.build(toUpload);
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadOsmTask.java

    r18017 r18208  
    188188    protected final void extractOsmFilename(DownloadParams settings, String pattern, String url) {
    189189        newLayerName = settings.getLayerName();
    190         if (newLayerName == null || newLayerName.isEmpty()) {
     190        if (Utils.isEmpty(newLayerName)) {
    191191            Matcher matcher = Pattern.compile(pattern).matcher(url);
    192192            newLayerName = matcher.matches() && matcher.groupCount() > 0 ? Utils.decodeUrl(matcher.group(1)) : null;
  • trunk/src/org/openstreetmap/josm/actions/relation/AbstractRelationAction.java

    r17458 r18208  
    3636     */
    3737    protected static final Collection<IRelation<?>> getRelations(Collection<? extends IPrimitive> primitives) {
    38         if (primitives == null || primitives.isEmpty()) {
     38        if (Utils.isEmpty(primitives)) {
    3939            return Collections.<IRelation<?>>emptySet();
    4040        } else {
  • trunk/src/org/openstreetmap/josm/actions/relation/RecentRelationsAction.java

    r16438 r18208  
    2929import org.openstreetmap.josm.tools.ImageProvider;
    3030import org.openstreetmap.josm.tools.Shortcut;
     31import org.openstreetmap.josm.tools.Utils;
    3132
    3233/**
     
    7374    public static Relation getLastRelation() {
    7475        List<Relation> recentRelations = getRecentRelationsOnActiveLayer();
    75         if (recentRelations == null || recentRelations.isEmpty())
     76        if (Utils.isEmpty(recentRelations))
    7677            return null;
    7778        return recentRelations.stream().filter(RecentRelationsAction::isRelationListable)
  • trunk/src/org/openstreetmap/josm/command/ChangePropertyCommand.java

    r17358 r18208  
    2626import org.openstreetmap.josm.tools.I18n;
    2727import org.openstreetmap.josm.tools.ImageProvider;
     28import org.openstreetmap.josm.tools.Utils;
    2829
    2930/**
     
    139140                String newVal = tag.getValue();
    140141
    141                 if (newVal == null || newVal.isEmpty()) {
     142                if (Utils.isEmpty(newVal)) {
    142143                    if (oldVal != null) {
    143144                        // new value is null and tag exists (will delete tag)
     
    173174                    String newVal = tag.getValue();
    174175
    175                     if (newVal == null || newVal.isEmpty()) {
     176                    if (Utils.isEmpty(newVal)) {
    176177                        if (oldVal != null)
    177178                            osm.remove(tag.getKey());
     
    204205            String msg;
    205206            Map.Entry<String, String> entry = tags.entrySet().iterator().next();
    206             if (entry.getValue() == null || entry.getValue().isEmpty()) {
     207            if (Utils.isEmpty(entry.getValue())) {
    207208                switch(OsmPrimitiveType.from(primitive)) {
    208209                case NODE: msg = marktr("Remove \"{0}\" for node ''{1}''"); break;
     
    223224        } else if (objects.size() > 1 && tags.size() == 1) {
    224225            Map.Entry<String, String> entry = tags.entrySet().iterator().next();
    225             if (entry.getValue() == null || entry.getValue().isEmpty()) {
     226            if (Utils.isEmpty(entry.getValue())) {
    226227                /* I18n: plural form for objects, but value < 2 not possible! */
    227228                text = trn("Remove \"{0}\" for {1} object", "Remove \"{0}\" for {1} objects", objects.size(), entry.getKey(), objects.size());
     
    233234        } else {
    234235            boolean allNull = this.tags.entrySet().stream()
    235                     .allMatch(tag -> tag.getValue() == null || tag.getValue().isEmpty());
     236                    .allMatch(tag -> Utils.isEmpty(tag.getValue()));
    236237
    237238            if (allNull) {
  • trunk/src/org/openstreetmap/josm/command/DeleteCommand.java

    r17981 r18208  
    296296     */
    297297    public static Command deleteWithReferences(Collection<? extends OsmPrimitive> selection, boolean silent) {
    298         if (selection == null || selection.isEmpty()) return null;
     298        if (Utils.isEmpty(selection)) return null;
    299299        Set<OsmPrimitive> parents = OsmPrimitive.getReferrer(selection);
    300300        parents.addAll(selection);
     
    402402     */
    403403    public static Command delete(Collection<? extends OsmPrimitive> selection, boolean alsoDeleteNodesInWay, boolean silent) {
    404         if (selection == null || selection.isEmpty())
     404        if (Utils.isEmpty(selection))
    405405            return null;
    406406
  • trunk/src/org/openstreetmap/josm/command/SelectCommand.java

    r15324 r18208  
    1111import org.openstreetmap.josm.data.osm.DataSet;
    1212import org.openstreetmap.josm.data.osm.OsmPrimitive;
     13import org.openstreetmap.josm.tools.Utils;
    1314
    1415/**
     
    3334    public SelectCommand(DataSet dataset, Collection<OsmPrimitive> newSelection) {
    3435        super(dataset);
    35         if (newSelection == null || newSelection.isEmpty()) {
     36        if (Utils.isEmpty(newSelection)) {
    3637            this.newSelection = Collections.emptySet();
    3738        } else if (newSelection.contains(null)) {
  • trunk/src/org/openstreetmap/josm/data/DataSource.java

    r16599 r18208  
    1010
    1111import org.openstreetmap.josm.tools.CheckParameterUtil;
     12import org.openstreetmap.josm.tools.Utils;
    1213
    1314/**
     
    7576     */
    7677    public static Area getDataSourceArea(Collection<DataSource> dataSources) {
    77         if (dataSources == null || dataSources.isEmpty()) {
     78        if (Utils.isEmpty(dataSources)) {
    7879            return null;
    7980        }
  • trunk/src/org/openstreetmap/josm/data/UserIdentityManager.java

    r15725 r18208  
    2424import org.openstreetmap.josm.tools.ListenerList;
    2525import org.openstreetmap.josm.tools.Logging;
     26import org.openstreetmap.josm.tools.Utils;
    2627
    2728/**
     
    277278        switch (evt.getKey()) {
    278279        case "osm-server.username":
    279             String newUserName = null;
     280            String newUserName = "";
    280281            if (evt.getNewValue() instanceof StringSetting) {
    281282                newUserName = ((StringSetting) evt.getNewValue()).getValue();
    282283            }
    283             if (newUserName == null || newUserName.trim().isEmpty()) {
     284            if (Utils.isBlank(newUserName)) {
    284285                setAnonymous();
    285             } else {
    286                 if (!newUserName.equals(userName)) {
    287                     setPartiallyIdentified(newUserName);
    288                 }
     286            } else if (!newUserName.equals(userName)) {
     287                setPartiallyIdentified(newUserName);
    289288            }
    290289            return;
     
    294293                newUrl = ((StringSetting) evt.getNewValue()).getValue();
    295294            }
    296             if (newUrl == null || newUrl.trim().isEmpty()) {
     295            if (Utils.isBlank(newUrl)) {
    297296                setAnonymous();
    298297            } else if (isFullyIdentified()) {
  • trunk/src/org/openstreetmap/josm/data/gpx/GpxExtension.java

    r16553 r18208  
    66
    77import org.openstreetmap.josm.data.gpx.GpxData.XMLNamespace;
     8import org.openstreetmap.josm.tools.Utils;
    89import org.xml.sax.Attributes;
    910
     
    174175        if (parent instanceof GpxExtension) {
    175176            GpxExtension gpx = ((GpxExtension) parent);
    176             if ((gpx.getValue() == null || gpx.getValue().trim().isEmpty())
    177                     && gpx.getAttributes().isEmpty()
    178                     && gpx.getExtensions().isEmpty()) {
     177            if (Utils.isBlank(gpx.getValue())
     178                    && Utils.isEmpty(gpx.getAttributes())
     179                    && Utils.isEmpty(gpx.getExtensions())) {
    179180                gpx.remove();
    180181            }
     
    190191        if (parent != null && parent instanceof GpxExtension) {
    191192            GpxExtension gpx = (GpxExtension) parent;
    192             if ((gpx.getValue() == null || gpx.getValue().trim().isEmpty())
     193            if (Utils.isBlank(gpx.getValue())
    193194                    && gpx.getAttributes().isEmpty()
    194195                    && !gpx.getExtensions().isVisible()) {
  • trunk/src/org/openstreetmap/josm/data/gpx/GpxExtensionCollection.java

    r17985 r18208  
    1212import org.openstreetmap.josm.io.GpxReader;
    1313import org.openstreetmap.josm.tools.Logging;
     14import org.openstreetmap.josm.tools.Utils;
    1415import org.xml.sax.Attributes;
    1516
     
    6667     */
    6768    public void closeChild(String qName, String value) {
    68         if (childStack == null || childStack.isEmpty()) {
     69        if (Utils.isEmpty(childStack)) {
    6970            Logging.warn("Can''t close child ''{0}'', no element in stack.", qName);
    7071            return;
  • trunk/src/org/openstreetmap/josm/data/imagery/LayerDetails.java

    r16553 r18208  
    1010
    1111import org.openstreetmap.josm.data.Bounds;
     12import org.openstreetmap.josm.tools.Utils;
    1213
    1314/**
     
    150151    @Override
    151152    public String toString() {
    152         String baseName = (title == null || title.isEmpty()) ? name : title;
     153        String baseName = Utils.isEmpty(title) ? name : title;
    153154        return abstr == null || abstr.equalsIgnoreCase(baseName) ? baseName : baseName + " (" + abstr + ')';
    154155    }
     
    184185     */
    185186    public boolean isSelectable() {
    186         return !(name == null || name.isEmpty());
     187        return !Utils.isEmpty(name);
    187188    }
    188189
  • trunk/src/org/openstreetmap/josm/data/osm/AbstractPrimitive.java

    r18076 r18208  
    536536    public void setKeys(Map<String, String> keys) {
    537537        Map<String, String> originalKeys = getKeys();
    538         if (keys == null || keys.isEmpty()) {
     538        if (Utils.isEmpty(keys)) {
    539539            this.keys = null;
    540540            keysChangedImpl(originalKeys);
  • trunk/src/org/openstreetmap/josm/data/osm/ChangesetCache.java

    r14153 r18208  
    1717import org.openstreetmap.josm.spi.preferences.PreferenceChangedListener;
    1818import org.openstreetmap.josm.tools.SubclassFilteredCollection;
     19import org.openstreetmap.josm.tools.Utils;
    1920
    2021/**
     
    110111     */
    111112    public void update(Collection<Changeset> changesets) {
    112         if (changesets == null || changesets.isEmpty()) return;
     113        if (Utils.isEmpty(changesets)) return;
    113114        DefaultChangesetCacheEvent e = new DefaultChangesetCacheEvent(this);
    114115        for (Changeset cs: changesets) {
  • trunk/src/org/openstreetmap/josm/data/osm/DefaultNameFormatter.java

    r17825 r18208  
    247247                    }
    248248                }
    249                 if (n == null || n.isEmpty()) {
     249                if (Utils.isEmpty(n)) {
    250250                    n = String.valueOf(way.getId());
    251251                }
  • trunk/src/org/openstreetmap/josm/data/osm/NoteData.java

    r18009 r18208  
    1919import org.openstreetmap.josm.tools.ListenerList;
    2020import org.openstreetmap.josm.tools.Logging;
     21import org.openstreetmap.josm.tools.Utils;
    2122
    2223/**
     
    173174     */
    174175    public synchronized void createNote(LatLon location, String text) {
    175         if (text == null || text.isEmpty()) {
     176        if (Utils.isEmpty(text)) {
    176177            throw new IllegalArgumentException("Comment can not be blank when creating a note");
    177178        }
  • trunk/src/org/openstreetmap/josm/data/osm/OsmUtils.java

    r18050 r18208  
    1111import org.openstreetmap.josm.tools.CheckParameterUtil;
    1212import org.openstreetmap.josm.tools.TextTagParser;
     13import org.openstreetmap.josm.tools.Utils;
    1314
    1415/**
     
    224225     */
    225226    public static boolean isOsmCollectionEditable(Collection<? extends IPrimitive> collection) {
    226         if (collection == null || collection.isEmpty()) {
     227        if (Utils.isEmpty(collection)) {
    227228            return false;
    228229        }
  • trunk/src/org/openstreetmap/josm/data/osm/QuadBuckets.java

    r17559 r18208  
    1515import org.openstreetmap.josm.data.coor.QuadTiling;
    1616import org.openstreetmap.josm.tools.Logging;
     17import org.openstreetmap.josm.tools.Utils;
    1718
    1819/**
     
    352353
    353354        boolean canRemove() {
    354             return (content == null || content.isEmpty()) && !this.hasChildren();
     355            return Utils.isEmpty(content) && !this.hasChildren();
    355356        }
    356357    }
  • trunk/src/org/openstreetmap/josm/data/osm/Relation.java

    r17981 r18208  
    385385    public void removeMembersFor(Collection<? extends OsmPrimitive> primitives) {
    386386        checkDatasetNotReadOnly();
    387         if (primitives == null || primitives.isEmpty())
     387        if (Utils.isEmpty(primitives))
    388388            return;
    389389
  • trunk/src/org/openstreetmap/josm/data/osm/TagCollection.java

    r17585 r18208  
    2323
    2424import org.openstreetmap.josm.tools.Logging;
     25import org.openstreetmap.josm.tools.Utils;
    2526
    2627/**
     
    118119    public static TagCollection commonToAllPrimitives(Collection<? extends Tagged> primitives) {
    119120        TagCollection tags = new TagCollection();
    120         if (primitives == null || primitives.isEmpty()) return tags;
     121        if (Utils.isEmpty(primitives)) return tags;
    121122        // initialize with the first
    122123        tags.add(TagCollection.from(primitives.iterator().next()));
     
    565566        ensureApplicableToPrimitive();
    566567        for (Tag tag: tags.keySet()) {
    567             if (tag.getValue() == null || tag.getValue().isEmpty()) {
     568            if (Utils.isEmpty(tag.getValue())) {
    568569                primitive.remove(tag.getKey());
    569570            } else {
  • trunk/src/org/openstreetmap/josm/data/osm/Way.java

    r18019 r18208  
    5454            }
    5555
    56             if (nodes == null || nodes.isEmpty()) {
     56            if (Utils.isEmpty(nodes)) {
    5757                this.nodes = EMPTY_NODES;
    5858            } else {
  • trunk/src/org/openstreetmap/josm/data/osm/search/SearchCompiler.java

    r18202 r18208  
    5454import org.openstreetmap.josm.tools.Logging;
    5555import org.openstreetmap.josm.tools.UncheckedParseException;
     56import org.openstreetmap.josm.tools.Utils;
    5657import org.openstreetmap.josm.tools.date.DateUtils;
    5758
     
    18771878        protected Collection<Bounds> getBounds(OsmPrimitive primitive) {
    18781879            final Collection<Bounds> bounds = super.getBounds(primitive);
    1879             return bounds == null || bounds.isEmpty() ?
     1880            return Utils.isEmpty(bounds) ?
    18801881                    Collections.singleton(ProjectionRegistry.getProjection().getWorldBoundsLatLon()) : bounds;
    18811882        }
     
    18961897        Preset(String presetName) throws SearchParseError {
    18971898
    1898             if (presetName == null || presetName.isEmpty()) {
     1899            if (Utils.isEmpty(presetName)) {
    18991900                throw new SearchParseError("The name of the preset is required");
    19001901            }
     
    22192220    public static String buildSearchStringForTag(String key, String value) {
    22202221        final String forKey = '"' + escapeStringForSearch(key) + '"' + '=';
    2221         if (value == null || value.isEmpty()) {
     2222        if (Utils.isEmpty(value)) {
    22222223            return forKey + '*';
    22232224        } else {
  • trunk/src/org/openstreetmap/josm/data/osm/search/SearchSetting.java

    r18197 r18208  
    77
    88import org.openstreetmap.josm.tools.Logging;
     9import org.openstreetmap.josm.tools.Utils;
    910
    1011/**
     
    172173     */
    173174    public String writeToString() {
    174         if (text == null || text.isEmpty())
     175        if (Utils.isEmpty(text))
    175176            return "";
    176177
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java

    r17986 r18208  
    613613        TextLabel text = bs.text;
    614614        String s = text.labelCompositionStrategy.compose(n);
    615         if (s == null || s.isEmpty()) return;
     615        if (Utils.isEmpty(s)) return;
    616616
    617617        Font defaultFont = g.getFont();
     
    11451145        }
    11461146        String name = text.getString(osm);
    1147         if (name == null || name.isEmpty()) {
     1147        if (Utils.isEmpty(name)) {
    11481148            return;
    11491149        }
  • trunk/src/org/openstreetmap/josm/data/sources/SourceInfo.java

    r17484 r18208  
    730730     */
    731731    public void setNoTileHeaders(MultiMap<String, String> noTileHeaders) {
    732        if (noTileHeaders == null || noTileHeaders.isEmpty()) {
     732       if (Utils.isEmpty(noTileHeaders)) {
    733733           this.noTileHeaders = null;
    734734       } else {
     
    750750     */
    751751    public void setNoTileChecksums(MultiMap<String, String> noTileChecksums) {
    752         if (noTileChecksums == null || noTileChecksums.isEmpty()) {
     752        if (Utils.isEmpty(noTileChecksums)) {
    753753            this.noTileChecksums = null;
    754754        } else {
     
    770770     */
    771771    public void setMetadataHeaders(Map<String, String> metadataHeaders) {
    772         if (metadataHeaders == null || metadataHeaders.isEmpty()) {
     772        if (Utils.isEmpty(metadataHeaders)) {
    773773            this.metadataHeaders = null;
    774774        } else {
  • trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java

    r17787 r18208  
    8282import org.openstreetmap.josm.tools.Logging;
    8383import org.openstreetmap.josm.tools.Stopwatch;
     84import org.openstreetmap.josm.tools.Utils;
    8485
    8586/**
     
    505506        int i = 0;
    506507        while (i < list.size()) {
    507             if (list.get(i) == null || list.get(i).isEmpty()) {
     508            if (Utils.isEmpty(list.get(i))) {
    508509                list.remove(i);
    509510                continue;
  • trunk/src/org/openstreetmap/josm/data/validation/ValidationTask.java

    r17858 r18208  
    2020import org.openstreetmap.josm.gui.progress.swing.PleaseWaitProgressMonitor;
    2121import org.openstreetmap.josm.gui.util.GuiHelper;
     22import org.openstreetmap.josm.tools.Utils;
    2223
    2324/**
     
    7879    @Override
    7980    protected void realRun() {
    80         if (tests == null || tests.isEmpty())
     81        if (Utils.isEmpty(tests))
    8182            return;
    8283        errors = new ArrayList<>();
  • trunk/src/org/openstreetmap/josm/data/validation/routines/InetAddressValidator.java

    r16647 r18208  
    2020import java.util.Arrays;
    2121import java.util.List;
     22
     23import org.openstreetmap.josm.tools.Utils;
    2224
    2325/**
     
    9698        // verify that address subgroups are legal
    9799        for (String ipSegment : groups) {
    98             if (ipSegment == null || ipSegment.isEmpty()) {
     100            if (Utils.isEmpty(ipSegment)) {
    99101                return false;
    100102            }
  • trunk/src/org/openstreetmap/josm/data/validation/routines/RegexValidator.java

    r16445 r18208  
    2323import java.util.stream.Collectors;
    2424import java.util.stream.IntStream;
     25
     26import org.openstreetmap.josm.tools.Utils;
    2527
    2628/**
     
    126128        int flags = caseSensitive ? 0 : Pattern.CASE_INSENSITIVE;
    127129        for (int i = 0; i < regexs.length; i++) {
    128             if (regexs[i] == null || regexs[i].isEmpty()) {
     130            if (Utils.isEmpty(regexs[i])) {
    129131                throw new IllegalArgumentException("Regular expression[" + i + "] is missing");
    130132            }
  • trunk/src/org/openstreetmap/josm/data/validation/tests/ConnectivityRelations.java

    r17384 r18208  
    2626import org.openstreetmap.josm.data.validation.TestError;
    2727import org.openstreetmap.josm.tools.Logging;
     28import org.openstreetmap.josm.tools.Utils;
    2829
    2930/**
     
    7677    public static Map<Integer, Map<Integer, Boolean>> parseConnectivityTag(Relation relation) {
    7778        final String cnTag = relation.get(CONNECTIVITY_TAG);
    78         if (cnTag == null || cnTag.isEmpty()) {
     79        if (Utils.isEmpty(cnTag)) {
    7980            return Collections.emptyMap();
    8081        }
  • trunk/src/org/openstreetmap/josm/data/validation/tests/MultipolygonTest.java

    r17223 r18208  
    3939import org.openstreetmap.josm.tools.Geometry;
    4040import org.openstreetmap.josm.tools.Geometry.PolygonIntersection;
     41import org.openstreetmap.josm.tools.Utils;
    4142
    4243/**
     
    440441        PolygonLevelFinder levelFinder = new PolygonLevelFinder(sharedNodes);
    441442        List<PolygonLevel> list = levelFinder.findOuterWays(allPolygons);
    442         if (list == null || list.isEmpty()) {
     443        if (Utils.isEmpty(list)) {
    443444            return;
    444445        }
  • trunk/src/org/openstreetmap/josm/data/validation/tests/OpeningHourTest.java

    r17643 r18208  
    1616import javax.swing.JPanel;
    1717
    18 import ch.poole.openinghoursparser.OpeningHoursParseException;
    19 import ch.poole.openinghoursparser.OpeningHoursParser;
    20 import ch.poole.openinghoursparser.Rule;
    21 import ch.poole.openinghoursparser.Util;
    2218import org.openstreetmap.josm.command.ChangePropertyCommand;
    2319import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    2824import org.openstreetmap.josm.data.validation.TestError;
    2925import org.openstreetmap.josm.tools.GBC;
     26import org.openstreetmap.josm.tools.Utils;
     27
     28import ch.poole.openinghoursparser.OpeningHoursParseException;
     29import ch.poole.openinghoursparser.OpeningHoursParser;
     30import ch.poole.openinghoursparser.Rule;
     31import ch.poole.openinghoursparser.Util;
    3032
    3133/**
     
    9395     */
    9496    List<TestError> checkOpeningHourSyntax(final String key, final String value, OsmPrimitive p, Locale locale) {
    95         if (value == null || value.isEmpty()) {
     97        if (Utils.isEmpty(value)) {
    9698            return Collections.emptyList();
    9799        }
  • trunk/src/org/openstreetmap/josm/data/validation/tests/RelationChecker.java

    r17243 r18208  
    333333                String templates = allroles.keySet().stream()
    334334                        .map(r -> r.key)
    335                         .map(r -> r == null || r.isEmpty() ? tr("<empty>") : r)
     335                        .map(r -> Utils.isEmpty(r) ? tr("<empty>") : r)
    336336                        .distinct()
    337337                        .collect(Collectors.joining("/"));
  • trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java

    r17766 r18208  
    880880
    881881    private void checkSingleTagComplex(MultiMap<OsmPrimitive, String> withErrors, OsmPrimitive p, String key, String value) {
    882         if (!checkValues || key == null || value == null || value.isEmpty())
     882        if (!checkValues || key == null || Utils.isEmpty(value))
    883883            return;
    884884        if (additionalPresetsValueData != null && !isTagIgnored(key, value)) {
     
    937937        // try to fix common typos and check again if value is still unknown
    938938        final String harmonizedValue = harmonizeValue(value);
    939         if (harmonizedValue == null || harmonizedValue.isEmpty())
     939        if (Utils.isEmpty(harmonizedValue))
    940940            return;
    941941        String fixedValue;
     
    12191219                String key = prop.getKey();
    12201220                String value = prop.getValue();
    1221                 if (value == null || value.trim().isEmpty()) {
     1221                if (Utils.isBlank(value)) {
    12221222                    commands.add(new ChangePropertyCommand(p, key, null));
    12231223                } else if (value.startsWith(" ") || value.endsWith(" ") || value.contains("  ")) {
  • trunk/src/org/openstreetmap/josm/data/vector/VectorNode.java

    r17867 r18208  
    1515import org.openstreetmap.josm.data.osm.visitor.PrimitiveVisitor;
    1616import org.openstreetmap.josm.data.projection.ProjectionRegistry;
     17import org.openstreetmap.josm.tools.Utils;
    1718
    1819/**
     
    8384        // when way is cloned
    8485        List<? extends IPrimitive> referrers = super.getReferrers();
    85         if (referrers == null || referrers.isEmpty())
     86        if (Utils.isEmpty(referrers))
    8687            return false;
    8788        if (referrers instanceof IPrimitive)
  • trunk/src/org/openstreetmap/josm/gui/ImageryMenu.java

    r16953 r18208  
    4444import org.openstreetmap.josm.tools.ImageProvider.ImageSizes;
    4545import org.openstreetmap.josm.tools.Logging;
     46import org.openstreetmap.josm.tools.Utils;
    4647
    4748/**
     
    151152    private static boolean isPosInOneShapeIfAny(ImageryInfo info, LatLon pos) {
    152153        List<Shape> shapes = info.getBounds().getShapes();
    153         return shapes == null || shapes.isEmpty() || shapes.stream().anyMatch(s -> s.contains(pos));
     154        return Utils.isEmpty(shapes) || shapes.stream().anyMatch(s -> s.contains(pos));
    154155    }
    155156
  • trunk/src/org/openstreetmap/josm/gui/PleaseWaitDialog.java

    r15586 r18208  
    2626import org.openstreetmap.josm.tools.GBC;
    2727import org.openstreetmap.josm.tools.ImageProvider;
     28import org.openstreetmap.josm.tools.Utils;
    2829
    2930/**
     
    106107    @Override
    107108    public void setCustomText(String text) {
    108         if (text == null || text.trim().isEmpty()) {
     109        if (Utils.isBlank(text)) {
    109110            customText.setVisible(false);
    110111            adjustLayout();
     
    131132    @Override
    132133    public void appendLogMessage(String message) {
    133         if (message == null || message.trim().isEmpty())
     134        if (Utils.isBlank(message))
    134135            return;
    135136        if (!spLog.isVisible()) {
  • trunk/src/org/openstreetmap/josm/gui/conflict/tags/CombinePrimitiveResolverDialog.java

    r17353 r18208  
    5151import org.openstreetmap.josm.tools.StreamUtils;
    5252import org.openstreetmap.josm.tools.UserCancelException;
     53import org.openstreetmap.josm.tools.Utils;
    5354
    5455/**
     
    637638        String values = normalizedTags.getValues(key)
    638639                .stream()
    639                 .map(x -> (x == null || x.isEmpty()) ? tr("<i>missing</i>") : x)
     640                .map(x -> Utils.isEmpty(x) ? tr("<i>missing</i>") : x)
    640641                .collect(Collectors.joining(tr(", ")));
    641642        return tr("{0} ({1})", key, values);
  • trunk/src/org/openstreetmap/josm/gui/conflict/tags/RelationMemberConflictResolver.java

    r13597 r18208  
    195195        if (tfValue.getText().trim().isEmpty())
    196196            return null;
    197         if (primitives == null || primitives.isEmpty())
     197        if (Utils.isEmpty(primitives))
    198198            return null;
    199199        return new ChangePropertyCommand(primitives, Utils.removeWhiteSpaces(tfKey.getText()), Utils.removeWhiteSpaces(tfValue.getText()));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java

    r18067 r18208  
    664664            final int sel = tblStyles.getSelectionModel().getLeadSelectionIndex();
    665665            final StyleSource style = sel >= 0 && sel < model.getRowCount() ? model.getRow(sel) : null;
    666             if (style == null || style.settings.isEmpty()) {
     666            if (style == null || Utils.isEmpty(style.settings)) {
    667667                setMenu.setEnabled(false);
    668668            } else {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java

    r18009 r18208  
    5959import org.openstreetmap.josm.tools.OpenBrowser;
    6060import org.openstreetmap.josm.tools.Shortcut;
     61import org.openstreetmap.josm.tools.Utils;
    6162import org.openstreetmap.josm.tools.date.DateUtils;
    6263
     
    244245
    245246    static boolean matchesNote(String filter, Note note) {
    246         if (filter == null || filter.isEmpty()) {
     247        if (Utils.isEmpty(filter)) {
    247248            return true;
    248249        }
     
    287288                    String text = fstComment.getText();
    288289                    String userName = fstComment.getUser().getName();
    289                     if (userName == null || userName.isEmpty()) {
     290                    if (Utils.isEmpty(userName)) {
    290291                        userName = "<Anonymous>";
    291292                    }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/OsmIdSelectionDialog.java

    r18173 r18208  
    221221    protected void tryToPasteFromClipboard(OsmIdTextField tfId, OsmPrimitiveTypesComboBox cbType) {
    222222        String buf = ClipboardUtils.getClipboardStringContent();
    223         if (buf == null || buf.isEmpty()) return;
     223        if (Utils.isEmpty(buf)) return;
    224224        if (buf.length() > Config.getPref().getInt("downloadprimitive.max-autopaste-length", 2000)) return;
    225225        final List<SimplePrimitiveId> ids = SimplePrimitiveId.fuzzyParse(buf);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java

    r17768 r18208  
    308308     */
    309309    public void selectRelations(Collection<? extends IRelation<?>> relations) {
    310         if (relations == null || relations.isEmpty()) {
     310        if (Utils.isEmpty(relations)) {
    311311            model.setSelectedRelations(null);
    312312        } else {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/SelectionListDialog.java

    r17634 r18208  
    3838import javax.swing.event.PopupMenuEvent;
    3939
     40import org.openstreetmap.josm.actions.AbstractSelectAction;
    4041import org.openstreetmap.josm.actions.AbstractShowHistoryAction;
    41 import org.openstreetmap.josm.actions.AbstractSelectAction;
    4242import org.openstreetmap.josm.actions.AutoScaleAction;
    4343import org.openstreetmap.josm.actions.AutoScaleAction.AutoScaleMode;
     
    838838    protected static class SelectionHistoryPopup extends JPopupMenu {
    839839        public static void launch(Component parent, Collection<Collection<? extends OsmPrimitive>> history) {
    840             if (history == null || history.isEmpty()) return;
     840            if (Utils.isEmpty(history)) return;
    841841            if (parent.isShowing()) {
    842842                JPopupMenu menu = new SelectionHistoryPopup(history);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java

    r17188 r18208  
    310310        protected Map<User, Integer> computeStatistics(Collection<? extends OsmPrimitive> primitives) {
    311311            Map<User, Integer> ret = new HashMap<>();
    312             if (primitives == null || primitives.isEmpty())
     312            if (Utils.isEmpty(primitives))
    313313                return ret;
    314314            for (OsmPrimitive primitive: primitives) {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ValidatorListManagementDialog.java

    r16626 r18208  
    3838import org.openstreetmap.josm.tools.ImageProvider;
    3939import org.openstreetmap.josm.tools.Logging;
     40import org.openstreetmap.josm.tools.Utils;
    4041
    4142/**
     
    224225        List<TestError> errors = map.validatorDialog.tree.getErrors();
    225226        ValidateAction validateAction = ValidatorDialog.validateAction;
    226         if (!validateAction.isEnabled() || errors == null || errors.isEmpty()) return JOptionPane.NO_OPTION;
     227        if (!validateAction.isEnabled() || Utils.isEmpty(errors)) return JOptionPane.NO_OPTION;
    227228        final int answer = ConditionalOptionPaneUtil.showOptionDialog(
    228229                "rerun_validation_when_ignorelist_changed",
  • trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/AbstractCellRenderer.java

    r17717 r18208  
    1414
    1515import org.openstreetmap.josm.data.osm.User;
     16import org.openstreetmap.josm.tools.Utils;
    1617import org.openstreetmap.josm.tools.date.DateUtils;
    1718
     
    5657
    5758    protected void renderUser(User user) {
    58         if (user == null || user.getName().trim().isEmpty()) {
     59        if (user == null || Utils.isBlank(user.getName())) {
    5960            setFont(UIManager.getFont("Table.font").deriveFont(Font.ITALIC));
    6061            setText(tr("anonymous"));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/ChangesetListModel.java

    r16601 r18208  
    2323import org.openstreetmap.josm.gui.util.GuiHelper;
    2424import org.openstreetmap.josm.gui.util.TableHelper;
     25import org.openstreetmap.josm.tools.Utils;
    2526
    2627/**
     
    9596     */
    9697    public void initFromChangesetIds(Collection<Integer> ids) {
    97         if (ids == null || ids.isEmpty()) {
     98        if (Utils.isEmpty(ids)) {
    9899            setChangesets(null);
    99100            return;
  • trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/UidInputFieldValidator.java

    r11326 r18208  
    77
    88import org.openstreetmap.josm.gui.widgets.AbstractTextComponentValidator;
     9import org.openstreetmap.josm.tools.Utils;
    910
    1011/**
     
    3940    public void validate() {
    4041        String value = getComponent().getText();
    41         if (value == null || value.trim().isEmpty()) {
     42        if (Utils.isBlank(value)) {
    4243            feedbackInvalid("");
    4344            return;
     
    6263    public int getUid() {
    6364        String value = getComponent().getText();
    64         if (value == null || value.trim().isEmpty()) return 0;
     65        if (Utils.isBlank(value)) return 0;
    6566        try {
    6667            int uid = Integer.parseInt(value.trim());
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/AbstractCopyAction.java

    r16553 r18208  
    1616import org.openstreetmap.josm.data.osm.Tagged;
    1717import org.openstreetmap.josm.gui.datatransfer.ClipboardUtils;
     18import org.openstreetmap.josm.tools.Utils;
    1819
    1920/**
     
    4445        int[] rows = tagTable.getSelectedRows();
    4546        Collection<? extends Tagged> sel = objectSupplier.get();
    46         if (rows.length == 0 || sel == null || sel.isEmpty()) return Stream.empty();
     47        if (rows.length == 0 || Utils.isEmpty(sel)) return Stream.empty();
    4748        return Arrays.stream(rows)
    4849                .mapToObj(keySupplier)
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java

    r18173 r18208  
    247247            activeDataSet.beginUpdate();
    248248            sel = OsmDataManager.getInstance().getInProgressSelection();
    249             if (sel == null || sel.isEmpty())
     249            if (Utils.isEmpty(sel))
    250250                return;
    251251
     
    281281        changedKey = null;
    282282        sel = OsmDataManager.getInstance().getInProgressSelection();
    283         if (sel == null || sel.isEmpty())
     283        if (Utils.isEmpty(sel))
    284284            return;
    285285
     
    914914            while (true) {
    915915                s = JOptionPane.showInputDialog(this, tr("Please enter the number of recently added tags to display"), s);
    916                 if (s == null || s.isEmpty()) {
     916                if (Utils.isEmpty(s)) {
    917917                    return;
    918918                }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java

    r17773 r18208  
    5151import org.openstreetmap.josm.gui.widgets.OsmPrimitivesTableModel;
    5252import org.openstreetmap.josm.tools.JosmRuntimeException;
     53import org.openstreetmap.josm.tools.Utils;
    5354import org.openstreetmap.josm.tools.bugreport.BugReport;
    5455
     
    417418
    418419    private void addMembersAtIndex(List<? extends OsmPrimitive> primitives, int index) {
    419         if (primitives == null || primitives.isEmpty())
     420        if (Utils.isEmpty(primitives))
    420421            return;
    421422        int idx = index;
     
    547548     */
    548549    public void setSelectedMembers(Collection<RelationMember> selectedMembers) {
    549         if (selectedMembers == null || selectedMembers.isEmpty()) {
     550        if (Utils.isEmpty(selectedMembers)) {
    550551            getSelectionModel().clearSelection();
    551552            return;
     
    571572     */
    572573    public void setSelectedMembersIdx(Collection<Integer> selectedIndices) {
    573         if (selectedIndices == null || selectedIndices.isEmpty()) {
     574        if (Utils.isEmpty(selectedIndices)) {
    574575            getSelectionModel().clearSelection();
    575576            return;
     
    652653     */
    653654    public static boolean hasMembersReferringTo(Collection<RelationMember> members, Collection<OsmPrimitive> primitives) {
    654         if (primitives == null || primitives.isEmpty())
     655        if (Utils.isEmpty(primitives))
    655656            return false;
    656657        Set<OsmPrimitive> referrers = members.stream().map(RelationMember::getMember).collect(Collectors.toSet());
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/AddFromSelectionAction.java

    r16651 r18208  
    1212import org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor;
    1313import org.openstreetmap.josm.gui.dialogs.relation.GenericRelationEditor.AddAbortException;
     14import org.openstreetmap.josm.tools.Utils;
    1415
    1516/**
     
    3031
    3132    protected List<OsmPrimitive> filterConfirmedPrimitives(List<OsmPrimitive> primitives) throws AddAbortException {
    32         if (primitives == null || primitives.isEmpty())
     33        if (Utils.isEmpty(primitives))
    3334            return primitives;
    3435        List<OsmPrimitive> ret = new ArrayList<>();
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/SetRoleAction.java

    r17555 r18208  
    4545
    4646    protected boolean isEmptyRole() {
    47         return tfRole.getText() == null || tfRole.getText().trim().isEmpty();
     47        return Utils.isBlank(tfRole.getText());
    4848    }
    4949
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/sort/RelationNodeMap.java

    r17867 r18208  
    1515import org.openstreetmap.josm.data.osm.IRelationMember;
    1616import org.openstreetmap.josm.data.osm.IWay;
     17import org.openstreetmap.josm.tools.Utils;
    1718
    1819/**
     
    260261    private static Integer findAdjacentWay(NodesWays nw, INode n) {
    261262        Set<Integer> adj = nw.nodes.get(n);
    262         if (adj == null || adj.isEmpty()) return null;
     263        if (Utils.isEmpty(adj)) return null;
    263264        return adj.iterator().next();
    264265    }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java

    r17437 r18208  
    4343import org.openstreetmap.josm.tools.Destroyable;
    4444import org.openstreetmap.josm.tools.ListenerList;
     45import org.openstreetmap.josm.tools.Utils;
    4546
    4647/**
     
    260261                    if (groupNode != null) {
    261262                        searchMsg = description;
    262                     } else if (description == null || description.isEmpty()) {
     263                    } else if (Utils.isEmpty(description)) {
    263264                        searchMsg = message;
    264265                    } else {
  • trunk/src/org/openstreetmap/josm/gui/download/BookmarkSelection.java

    r14153 r18208  
    2929import org.openstreetmap.josm.gui.widgets.JosmTextArea;
    3030import org.openstreetmap.josm.tools.ImageProvider;
     31import org.openstreetmap.josm.tools.Utils;
    3132
    3233/**
     
    223224        public void actionPerformed(ActionEvent e) {
    224225            List<Bookmark> sels = bookmarks.getSelectedValuesList();
    225             if (sels == null || sels.isEmpty())
     226            if (Utils.isEmpty(sels))
    226227                return;
    227228            for (Object sel: sels) {
  • trunk/src/org/openstreetmap/josm/gui/help/HelpUtil.java

    r14119 r18208  
    1616import org.openstreetmap.josm.tools.LanguageInfo;
    1717import org.openstreetmap.josm.tools.LanguageInfo.LocaleType;
     18import org.openstreetmap.josm.tools.Utils;
    1819
    1920/**
     
    149150    public static String buildAbsoluteHelpTopic(String topic, LocaleType type) {
    150151        String prefix = getHelpTopicPrefix(type);
    151         if (prefix == null || topic == null || topic.trim().isEmpty() || "/".equals(topic.trim()))
     152        if (prefix == null || Utils.isBlank(topic) || "/".equals(topic.trim()))
    152153            return prefix;
    153154        prefix += '/' + topic;
  • trunk/src/org/openstreetmap/josm/gui/io/CustomConfigurator.java

    r17333 r18208  
    149149     */
    150150    public static void messageBox(String type, String text) {
    151         char c = (type == null || type.isEmpty() ? "plain" : type).charAt(0);
     151        char c = (Utils.isEmpty(type) ? "plain" : type).charAt(0);
    152152        MainFrame parent = MainApplication.getMainFrame();
    153153        switch (c) {
  • trunk/src/org/openstreetmap/josm/gui/io/LayerNameAndFilePathTableCell.java

    r13115 r18208  
    3030import org.openstreetmap.josm.gui.widgets.JosmTextField;
    3131import org.openstreetmap.josm.tools.GBC;
     32import org.openstreetmap.josm.tools.Utils;
    3233
    3334/**
     
    229230    @Override
    230231    public boolean stopCellEditing() {
    231         if (tfFilename.getText() == null || tfFilename.getText().trim().isEmpty()) {
     232        if (Utils.isBlank(tfFilename.getText())) {
    232233            value = null;
    233234        } else {
  • trunk/src/org/openstreetmap/josm/gui/io/OpenChangesetComboBoxModel.java

    r16438 r18208  
    1212import org.openstreetmap.josm.data.osm.ChangesetCacheListener;
    1313import org.openstreetmap.josm.gui.util.GuiHelper;
     14import org.openstreetmap.josm.tools.Utils;
    1415
    1516/**
     
    5455     */
    5556    public void selectFirstChangeset() {
    56         if (changesets == null || changesets.isEmpty()) {
     57        if (Utils.isEmpty(changesets)) {
    5758            setSelectedItem(null);
    5859        } else {
  • trunk/src/org/openstreetmap/josm/gui/layer/NoteLayer.java

    r17712 r18208  
    5757import org.openstreetmap.josm.tools.ImageProvider;
    5858import org.openstreetmap.josm.tools.Logging;
     59import org.openstreetmap.josm.tools.Utils;
    5960import org.openstreetmap.josm.tools.date.DateUtils;
    6061
     
    314315                sb.append("<hr/>");
    315316                String userName = XmlWriter.encode(comment.getUser().getName());
    316                 if (userName == null || userName.trim().isEmpty()) {
     317                if (Utils.isBlank(userName)) {
    317318                    userName = "&lt;Anonymous&gt;";
    318319                }
  • trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java

    r18078 r18208  
    135135import org.openstreetmap.josm.tools.Logging;
    136136import org.openstreetmap.josm.tools.UncheckedParseException;
     137import org.openstreetmap.josm.tools.Utils;
    137138import org.openstreetmap.josm.tools.date.DateUtils;
    138139
     
    653654    public void cleanupAfterUpload(final Collection<? extends IPrimitive> processed) {
    654655        // return immediately if an upload attempt failed
    655         if (processed == null || processed.isEmpty())
     656        if (Utils.isEmpty(processed))
    656657            return;
    657658
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ChooseTrackVisibilityAction.java

    r17845 r18208  
    5454import org.openstreetmap.josm.tools.ImageProvider;
    5555import org.openstreetmap.josm.tools.OpenBrowser;
     56import org.openstreetmap.josm.tools.Utils;
    5657import org.openstreetmap.josm.tools.date.Interval;
    5758
     
    181182                int row = t.rowAtPoint(e.getPoint());
    182183                String url = (String) t.getValueAt(row, col);
    183                 if (url == null || url.isEmpty()) {
     184                if (Utils.isEmpty(url)) {
    184185                    return;
    185186                }
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertFromGpxLayerAction.java

    r18078 r18208  
    3737import org.openstreetmap.josm.spi.preferences.Config;
    3838import org.openstreetmap.josm.tools.GBC;
     39import org.openstreetmap.josm.tools.Utils;
    3940
    4041/**
     
    159160                String extpre = "extension:";
    160161                String pre = ext.getPrefix();
    161                 if (pre == null || pre.isEmpty()) {
     162                if (Utils.isEmpty(pre)) {
    162163                    pre = "other";
    163164                }
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSRuleIndex.java

    r17593 r18208  
    157157                }
    158158                final List<Condition> conditions = selRightmost.getConditions();
    159                 if (conditions == null || conditions.isEmpty()) {
     159                if (Utils.isEmpty(conditions)) {
    160160                    remaining.set(ruleIndex);
    161161                    continue;
  • trunk/src/org/openstreetmap/josm/gui/mappaint/mapcss/Selector.java

    r17808 r18208  
    458458
    459459            void execGeometryTests() {
    460                 if (toCheck == null || toCheck.isEmpty())
     460                if (Utils.isEmpty(toCheck))
    461461                    return;
    462462                for (IPrimitive p : Geometry.filterInsideAnyPolygon(toCheck, e.osm)) {
  • trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java

    r17713 r18208  
    759759
    760760    private static void prepareFileChooser(String url, AbstractFileChooser fc) {
    761         if (url == null || url.trim().isEmpty()) return;
     761        if (Utils.isBlank(url)) return;
    762762        URL sourceUrl = null;
    763763        try {
  • trunk/src/org/openstreetmap/josm/gui/preferences/TabPreferenceSetting.java

    r17231 r18208  
    77
    88import org.openstreetmap.josm.tools.ImageProvider;
     9import org.openstreetmap.josm.tools.Utils;
    910
    1011/**
     
    2829    default ImageIcon getIcon(ImageProvider.ImageSizes size) {
    2930        String iconName = getIconName();
    30         return iconName == null || iconName.isEmpty()
     31        return Utils.isEmpty(iconName)
    3132                ? null
    3233                : iconName.contains("/")
  • trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java

    r17667 r18208  
    8585import org.openstreetmap.josm.tools.Logging;
    8686import org.openstreetmap.josm.tools.Shortcut;
     87import org.openstreetmap.josm.tools.Utils;
    8788
    8889/**
     
    10881089
    10891090    public static Collection<String> getToolString() {
    1090 
    10911091        Collection<String> toolStr = Config.getPref().getList("toolbar", Arrays.asList(deftoolbar));
    1092         if (toolStr == null || toolStr.isEmpty()) {
     1092        if (Utils.isEmpty(toolStr)) {
    10931093            toolStr = Arrays.asList(deftoolbar);
    10941094        }
  • trunk/src/org/openstreetmap/josm/gui/preferences/display/GPXSettingsPanel.java

    r17997 r18208  
    4040import org.openstreetmap.josm.tools.GBC;
    4141import org.openstreetmap.josm.tools.Logging;
     42import org.openstreetmap.josm.tools.Utils;
    4243import org.openstreetmap.josm.tools.template_engine.ParseError;
    4344import org.openstreetmap.josm.tools.template_engine.TemplateParser;
     
    143144        super(new GridBagLayout());
    144145        this.layers = layers;
    145         if (layers == null || layers.isEmpty()) {
     146        if (Utils.isEmpty(layers)) {
    146147            throw new InvalidArgumentException("At least one layer required");
    147148        }
     
    262263     */
    263264    public static void putLayerPrefLocal(GpxData data, String key, String value) {
    264         if (value == null || value.trim().isEmpty() ||
     265        if (Utils.isBlank(value) ||
    265266                (getLayerPref(null, key).equals(value) && DEFAULT_PREFS.get(key) != null && DEFAULT_PREFS.get(key).toString().equals(value))) {
    266267            data.getLayerPrefs().remove(key);
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/ImageryProvidersPanel.java

    r17862 r18208  
    7373import org.openstreetmap.josm.tools.LanguageInfo;
    7474import org.openstreetmap.josm.tools.Logging;
     75import org.openstreetmap.josm.tools.Utils;
    7576
    7677/**
     
    479480                    activeModel.addRow(p.getImageryInfo());
    480481                } catch (IllegalArgumentException ex) {
    481                     if (ex.getMessage() == null || ex.getMessage().isEmpty())
     482                    if (Utils.isEmpty(ex.getMessage()))
    482483                        throw ex;
    483484                    else {
  • trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginListPanel.java

    r17793 r18208  
    2222import org.openstreetmap.josm.gui.widgets.VerticallyScrollablePanel;
    2323import org.openstreetmap.josm.plugins.PluginInformation;
     24import org.openstreetmap.josm.tools.Utils;
    2425
    2526/**
     
    6364    protected static String formatPluginRemoteVersion(PluginInformation pi) {
    6465        StringBuilder sb = new StringBuilder();
    65         if (pi.version == null || pi.version.trim().isEmpty()) {
     66        if (Utils.isBlank(pi.version)) {
    6667            sb.append(tr("unknown"));
    6768        } else {
     
    7778        if (pi == null)
    7879            return tr("unknown");
    79         if (pi.localversion == null || pi.localversion.trim().isEmpty())
     80        if (Utils.isBlank(pi.localversion))
    8081            return tr("unknown");
    8182        return pi.localversion;
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java

    r18099 r18208  
    414414            return roles.roles.stream()
    415415                    .filter(i -> i.memberExpression != null && i.memberExpression.match(osm))
    416                     .filter(i -> i.types == null || i.types.isEmpty() || i.types.contains(TaggingPresetType.forPrimitive(osm)))
     416                    .filter(i -> Utils.isEmpty(i.types) || i.types.contains(TaggingPresetType.forPrimitive(osm)))
    417417                    .findFirst()
    418418                    .map(i -> i.key)
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetItem.java

    r17787 r18208  
    2727import org.openstreetmap.josm.tools.ImageProvider;
    2828import org.openstreetmap.josm.tools.Logging;
     29import org.openstreetmap.josm.tools.Utils;
    2930import org.xml.sax.SAXException;
    3031
     
    8384
    8485    protected static Set<TaggingPresetType> getType(String types) throws SAXException {
    85         if (types == null || types.isEmpty()) {
     86        if (Utils.isEmpty(types)) {
    8687            throw new SAXException(tr("Unknown type: {0}", types));
    8788        }
     
    118119
    119120    protected static Integer parseInteger(String str) {
    120         if (str == null || str.isEmpty())
     121        if (Utils.isEmpty(str))
    121122            return null;
    122123        try {
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetItemGuiSupport.java

    r18080 r18208  
    11// License: GPL. For details, see LICENSE file.
    22package org.openstreetmap.josm.gui.tagging.presets;
     3
     4import java.util.Arrays;
     5import java.util.Collection;
     6import java.util.Collections;
     7import java.util.function.Supplier;
    38
    49import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    712import org.openstreetmap.josm.data.osm.search.SearchCompiler;
    813import org.openstreetmap.josm.tools.ListenerList;
     14import org.openstreetmap.josm.tools.Utils;
    915import org.openstreetmap.josm.tools.template_engine.TemplateEngineDataProvider;
    10 
    11 import java.util.Arrays;
    12 import java.util.Collection;
    13 import java.util.Collections;
    14 import java.util.function.Supplier;
    1516
    1617/**
     
    9293    /**
    9394     * Get tags with values as currently shown in the dialog.
    94      * If exactly one primitive is selected, get all tags of it, then 
     95     * If exactly one primitive is selected, get all tags of it, then
    9596     * overwrite with the current values shown in the dialog.
    9697     * Else get only the tags shown in the dialog.
     
    116117    public Object getTemplateValue(String key, boolean special) {
    117118        String value = getTagged().get(key);
    118         return (value == null || value.isEmpty()) ? null : value;
     119        return Utils.isEmpty(value) ? null : value;
    119120    }
    120121
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/PresetListEntry.java

    r16690 r18208  
    6767        String shortDescription = getShortDescription(true);
    6868
    69         if (displayValue.isEmpty() && (shortDescription == null || shortDescription.isEmpty()))
     69        if (displayValue.isEmpty() && Utils.isEmpty(shortDescription))
    7070            return "&nbsp;";
    7171
    7272        final StringBuilder res = new StringBuilder("<b>").append(displayValue).append("</b>");
    73         if (shortDescription != null) {
     73        if (!Utils.isEmpty(shortDescription)) {
    7474            // wrap in table to restrict the text width
    7575            res.append("<div style=\"width:300px; padding:0 0 5px 5px\">")
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Text.java

    r18080 r18208  
    234234    @Override
    235235    public Collection<String> getValues() {
    236         if (default_ == null || default_.isEmpty())
     236        if (Utils.isEmpty(default_))
    237237            return Collections.emptyList();
    238238        return Collections.singleton(default_);
     
    254254
    255255    private void setupListeners(AutoCompletingTextField textField, TaggingPresetItemGuiSupport support) {
    256         // value_templates don't work well with multiple selected items because, 
    257         // as the command queue is currently implemented, we can only save 
    258         // the same value to all selected primitives, which is probably not 
     256        // value_templates don't work well with multiple selected items because,
     257        // as the command queue is currently implemented, we can only save
     258        // the same value to all selected primitives, which is probably not
    259259        // what you want.
    260260        if (valueTemplate == null || support.getSelected().size() > 1) { // only fire on normal fields
  • trunk/src/org/openstreetmap/josm/gui/widgets/FileChooserManager.java

    r18113 r18208  
    1919import org.openstreetmap.josm.spi.preferences.Config;
    2020import org.openstreetmap.josm.tools.PlatformManager;
     21import org.openstreetmap.josm.tools.Utils;
    2122
    2223/**
     
    9899    public FileChooserManager(boolean open, String lastDirProperty, String defaultDir) {
    99100        this.open = open;
    100         this.lastDirProperty = lastDirProperty == null || lastDirProperty.isEmpty() ? "lastDirectory" : lastDirProperty;
     101        this.lastDirProperty = Utils.isEmpty(lastDirProperty) ? "lastDirectory" : lastDirProperty;
    101102        this.curDir = Config.getPref().get(this.lastDirProperty).isEmpty() ?
    102                 defaultDir == null || defaultDir.isEmpty() ? "." : defaultDir
     103                Utils.isEmpty(defaultDir) ? "." : defaultDir
    103104                : Config.getPref().get(this.lastDirProperty);
    104105    }
  • trunk/src/org/openstreetmap/josm/gui/widgets/FilterField.java

    r18114 r18208  
    9393                final TableRowSorter<? extends TableModel> sorter =
    9494                    (TableRowSorter<? extends TableModel>) table.getRowSorter();
    95                 if (expr == null || expr.isEmpty()) {
     95                if (Utils.isEmpty(expr)) {
    9696                    sorter.setRowFilter(null);
    9797                } else {
  • trunk/src/org/openstreetmap/josm/gui/widgets/OsmIdTextField.java

    r13969 r18208  
    1414import org.openstreetmap.josm.data.osm.SimplePrimitiveId;
    1515import org.openstreetmap.josm.tools.Logging;
     16import org.openstreetmap.josm.tools.Utils;
    1617
    1718/**
     
    9495            String value = getComponent().getText();
    9596            char c;
    96             if (value == null || value.trim().isEmpty()) {
     97            if (Utils.isBlank(value)) {
    9798                return false;
    9899            }
  • trunk/src/org/openstreetmap/josm/io/AbstractReader.java

    r17822 r18208  
    427427
    428428    protected final void parseTimestamp(PrimitiveData current, String time) {
    429         if (time == null || time.isEmpty()) {
     429        if (Utils.isEmpty(time)) {
    430430            return;
    431431        }
  • trunk/src/org/openstreetmap/josm/io/ChangesetQuery.java

    r17843 r18208  
    432432    public static class ChangesetQueryUrlParser {
    433433        protected int parseUid(String value) throws ChangesetQueryUrlException {
    434             if (value == null || value.trim().isEmpty())
     434            if (Utils.isBlank(value))
    435435                throw new ChangesetQueryUrlException(
    436436                        tr("Unexpected value for ''{0}'' in changeset query url, got {1}", "uid", value));
     
    449449
    450450        protected boolean parseBoolean(String value, String parameter) throws ChangesetQueryUrlException {
    451             if (value == null || value.trim().isEmpty())
     451            if (Utils.isBlank(value))
    452452                throw new ChangesetQueryUrlException(
    453453                        tr("Unexpected value for ''{0}'' in changeset query url, got {1}", parameter, value));
     
    464464
    465465        protected Instant parseDate(String value, String parameter) throws ChangesetQueryUrlException {
    466             if (value == null || value.trim().isEmpty())
     466            if (Utils.isBlank(value))
    467467                throw new ChangesetQueryUrlException(
    468468                        tr("Unexpected value for ''{0}'' in changeset query url, got {1}", parameter, value));
     
    488488
    489489        protected Collection<Long> parseLongs(String value) {
    490             if (value == null || value.isEmpty()) {
     490            if (Utils.isEmpty(value)) {
    491491                return Collections.<Long>emptySet();
    492492            } else {
  • trunk/src/org/openstreetmap/josm/io/OsmApiException.java

    r15085 r18208  
    215215        String header = Utils.strip(errorHeader);
    216216        String body = Utils.strip(errorBody);
    217         if ((header == null || header.isEmpty()) && (body == null || body.isEmpty())) {
     217        if (Utils.isEmpty(header) && Utils.isEmpty(body)) {
    218218            sb.append(tr("The server replied an error with code {0}.", responseCode));
    219219        } else {
  • trunk/src/org/openstreetmap/josm/io/OsmServerChangesetReader.java

    r16628 r18208  
    2020import org.openstreetmap.josm.tools.CheckParameterUtil;
    2121import org.openstreetmap.josm.tools.Logging;
     22import org.openstreetmap.josm.tools.Utils;
    2223import org.openstreetmap.josm.tools.XmlParsingException;
    2324
     
    124125                monitor.indeterminateSubTask(tr("Downloading changeset {0} ...", id));
    125126                List<Changeset> changesets = OsmChangesetParser.parse(in, monitor.createSubTaskMonitor(1, true));
    126                 if (changesets == null || changesets.isEmpty())
     127                if (Utils.isEmpty(changesets))
    127128                    return null;
    128129                result = changesets.get(0);
     
    173174                    monitor.indeterminateSubTask(tr("({0}/{1}) Downloading changeset {2}...", i, ids.size(), id));
    174175                    List<Changeset> changesets = OsmChangesetParser.parse(in, monitor.createSubTaskMonitor(1, true));
    175                     if (changesets == null || changesets.isEmpty()) {
     176                    if (Utils.isEmpty(changesets)) {
    176177                        continue;
    177178                    }
  • trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/RequestHandler.java

    r18134 r18208  
    279279            for (String key : mandatory) {
    280280                String value = args.get(key);
    281                 if (value == null || value.isEmpty()) {
     281                if (Utils.isEmpty(value)) {
    282282                    error = true;
    283283                    Logging.warn('\'' + myCommand + "' remote control request must have '" + key + "' parameter");
  • trunk/src/org/openstreetmap/josm/io/session/GpxTracksSessionImporter.java

    r16866 r18208  
    2020import org.openstreetmap.josm.gui.progress.ProgressMonitor;
    2121import org.openstreetmap.josm.io.IllegalDataException;
     22import org.openstreetmap.josm.tools.Utils;
    2223import org.w3c.dom.Element;
    2324
     
    4041            XPathExpression fileExp = xpath.compile("file/text()");
    4142            String fileStr = (String) fileExp.evaluate(elem, XPathConstants.STRING);
    42             if (fileStr == null || fileStr.isEmpty()) {
     43            if (Utils.isEmpty(fileStr)) {
    4344                throw new IllegalDataException(tr("File name expected for layer no. {0}", support.getLayerIndex()));
    4445            }
  • trunk/src/org/openstreetmap/josm/io/session/MarkerSessionImporter.java

    r16866 r18208  
    2121import org.openstreetmap.josm.io.IllegalDataException;
    2222import org.openstreetmap.josm.io.session.SessionReader.ImportSupport;
     23import org.openstreetmap.josm.tools.Utils;
    2324import org.w3c.dom.Element;
    2425
     
    4041            XPathExpression fileExp = xpath.compile("file/text()");
    4142            String fileStr = (String) fileExp.evaluate(elem, XPathConstants.STRING);
    42             if (fileStr == null || fileStr.isEmpty()) {
     43            if (Utils.isEmpty(fileStr)) {
    4344                throw new IllegalDataException(tr("File name expected for layer no. {0}", support.getLayerIndex()));
    4445            }
  • trunk/src/org/openstreetmap/josm/io/session/NoteSessionImporter.java

    r12671 r18208  
    1919import org.openstreetmap.josm.io.IllegalDataException;
    2020import org.openstreetmap.josm.io.session.SessionReader.ImportSupport;
     21import org.openstreetmap.josm.tools.Utils;
    2122import org.w3c.dom.Element;
    2223import org.xml.sax.SAXException;
     
    3940            XPathExpression fileExp = xpath.compile("file/text()");
    4041            String fileStr = (String) fileExp.evaluate(elem, XPathConstants.STRING);
    41             if (fileStr == null || fileStr.isEmpty()) {
     42            if (Utils.isEmpty(fileStr)) {
    4243                throw new IllegalDataException(tr("File name expected for layer no. {0}", support.getLayerIndex()));
    4344            }
  • trunk/src/org/openstreetmap/josm/io/session/OsmDataSessionImporter.java

    r15377 r18208  
    1919import org.openstreetmap.josm.io.IllegalDataException;
    2020import org.openstreetmap.josm.io.session.SessionReader.ImportSupport;
     21import org.openstreetmap.josm.tools.Utils;
    2122import org.w3c.dom.Element;
    2223
     
    6162            XPathExpression fileExp = xpath.compile("file/text()");
    6263            String fileStr = (String) fileExp.evaluate(elem, XPathConstants.STRING);
    63             if (fileStr == null || fileStr.isEmpty()) {
     64            if (Utils.isEmpty(fileStr)) {
    6465                throw new IllegalDataException(tr("File name expected for layer no. {0}", support.getLayerIndex()));
    6566            }
  • trunk/src/org/openstreetmap/josm/plugins/ReadRemotePluginInformationTask.java

    r16643 r18208  
    204204    private void handleIOException(final ProgressMonitor monitor, IOException e, String details) {
    205205        final String msg = e.getMessage();
    206         if (details == null || details.isEmpty()) {
     206        if (Utils.isEmpty(details)) {
    207207            Logging.error(e.getClass().getSimpleName()+": " + msg);
    208208        } else {
  • trunk/src/org/openstreetmap/josm/spi/preferences/AbstractPreferences.java

    r16436 r18208  
    1010
    1111import org.openstreetmap.josm.tools.Logging;
     12
     13import com.jayway.jsonpath.internal.Utils;
    1214
    1315/**
     
    2426    @Override
    2527    public boolean put(final String key, String value) {
    26         return putSetting(key, value == null || value.isEmpty() ? null : new StringSetting(value));
     28        return putSetting(key, Utils.isEmpty(value) ? null : new StringSetting(value));
    2729    }
    2830
  • trunk/src/org/openstreetmap/josm/tools/ExceptionUtil.java

    r17840 r18208  
    461461    public static String explainGeneric(Exception e) {
    462462        String msg = e.getMessage();
    463         if (msg == null || msg.trim().isEmpty()) {
     463        if (Utils.isBlank(msg)) {
    464464            msg = e.toString();
    465465        }
  • trunk/src/org/openstreetmap/josm/tools/Mediawiki.java

    r18046 r18208  
    6262        for (String page : distinctPages) {
    6363            String normalized = xPath.evaluate("/api/query/normalized/n[@from='" + page + "']/@to", document);
    64             if (normalized == null || normalized.isEmpty()) {
     64            if (Utils.isEmpty(normalized)) {
    6565                normalized = page;
    6666            }
  • trunk/src/org/openstreetmap/josm/tools/OsmPrimitiveImageProvider.java

    r16848 r18208  
    5858            final Optional<ImageResource> icon = TaggingPresets.getMatchingPresets(primitive).stream()
    5959                    .sorted(Comparator.comparing(p -> (p.iconName != null && p.iconName.contains("multipolygon"))
    60                             || p.types == null || p.types.isEmpty() ? Integer.MAX_VALUE : p.types.size()))
     60                            || Utils.isEmpty(p.types) ? Integer.MAX_VALUE : p.types.size()))
    6161                    .map(TaggingPreset::getImageResource)
    6262                    .filter(Objects::nonNull)
  • trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java

    r17688 r18208  
    390390    public File getDefaultCacheDirectory() {
    391391        String p = getSystemEnv("LOCALAPPDATA");
    392         if (p == null || p.isEmpty()) {
     392        if (Utils.isEmpty(p)) {
    393393            // Fallback for Windows OS earlier than Windows Vista, where the variable is not defined
    394394            p = getSystemEnv("APPDATA");
  • trunk/src/org/openstreetmap/josm/tools/Tag2Link.java

    r17909 r18208  
    3535/**
    3636 * Extracts web links from OSM tags.
    37  * 
     37 *
    3838 * The following rules are used:
    3939 * <ul>
     
    144144    public static void getLinksForTag(String key, String value, LinkConsumer linkConsumer) {
    145145
    146         if (value == null || value.isEmpty()) {
     146        if (Utils.isEmpty(value)) {
    147147            return;
    148148        }
  • trunk/src/org/openstreetmap/josm/tools/Utils.java

    r18207 r18208  
    709709
    710710    /**
     711     * Determines if a multimap is null or empty.
     712     * @param map map
     713     * @return {@code true} if map is null or empty
     714     * @since 18208
     715     */
     716    public static boolean isEmpty(MultiMap<?, ?> map) {
     717        return map == null || map.isEmpty();
     718    }
     719
     720    /**
    711721     * Determines if a string is null or empty.
    712722     * @param string string
     
    716726    public static boolean isEmpty(String string) {
    717727        return string == null || string.isEmpty();
     728    }
     729
     730    /**
     731     * Determines if a string is null or blank.
     732     * @param string string
     733     * @return {@code true} if string is null or blank
     734     * @since 18208
     735     */
     736    public static boolean isBlank(String string) {
     737        return string == null || strip(string).isEmpty();
    718738    }
    719739
Note: See TracChangeset for help on using the changeset viewer.