Ignore:
Timestamp:
2016-05-15T14:48:06+02:00 (8 years ago)
Author:
Don-vip
Message:

findbugs - SF_SWITCH_NO_DEFAULT + various sonar fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/io/session/GeoImageSessionImporter.java

    r9455 r10216  
    4949                        Node attrNode = attrNodes.item(j);
    5050                        if (attrNode.getNodeType() == Node.ELEMENT_NODE) {
    51                             Element attrElem = (Element) attrNode;
    52                             try {
    53                                 switch(attrElem.getTagName()) {
    54                                 case "file":
    55                                     entry.setFile(new File(attrElem.getTextContent()));
    56                                     break;
    57                                 case "position":
    58                                     double lat = Double.parseDouble(attrElem.getAttribute("lat"));
    59                                     double lon = Double.parseDouble(attrElem.getAttribute("lon"));
    60                                     entry.setPos(new LatLon(lat, lon));
    61                                     break;
    62                                 case "speed":
    63                                     entry.setSpeed(Double.valueOf(attrElem.getTextContent()));
    64                                     break;
    65                                 case "elevation":
    66                                     entry.setElevation(Double.valueOf(attrElem.getTextContent()));
    67                                     break;
    68                                 case "gps-time":
    69                                     entry.setGpsTime(new Date(Long.parseLong(attrElem.getTextContent())));
    70                                     break;
    71                                 case "exif-orientation":
    72                                     entry.setExifOrientation(Integer.valueOf(attrElem.getTextContent()));
    73                                     break;
    74                                 case "exif-time":
    75                                     entry.setExifTime(new Date(Long.parseLong(attrElem.getTextContent())));
    76                                     break;
    77                                 case "exif-gps-time":
    78                                     entry.setExifGpsTime(new Date(Long.parseLong(attrElem.getTextContent())));
    79                                     break;
    80                                 case "exif-coordinates":
    81                                     entry.setExifCoor(new LatLon(
    82                                             Double.parseDouble(attrElem.getAttribute("lat")),
    83                                             Double.parseDouble(attrElem.getAttribute("lon"))));
    84                                     break;
    85                                 case "exif-image-direction":
    86                                     entry.setExifImgDir(Double.parseDouble(attrElem.getTextContent()));
    87                                     break;
    88                                 case "is-new-gps-data":
    89                                     if (Boolean.parseBoolean(attrElem.getTextContent())) {
    90                                         entry.flagNewGpsData();
    91                                     }
    92                                 }
    93                                 // TODO: handle thumbnail loading
    94                             } catch (NumberFormatException e) {
    95                                 // do nothing
    96                                 if (Main.isTraceEnabled()) {
    97                                     Main.trace(e.getMessage());
    98                                 }
    99                             }
     51                            handleElement(entry, (Element) attrNode);
    10052                        }
    10153                    }
     
    11870        return new GeoImageLayer(entries, gpxLayer, useThumbs);
    11971    }
     72
     73    private static void handleElement(ImageEntry entry, Element attrElem) {
     74        try {
     75            switch(attrElem.getTagName()) {
     76            case "file":
     77                entry.setFile(new File(attrElem.getTextContent()));
     78                break;
     79            case "position":
     80                double lat = Double.parseDouble(attrElem.getAttribute("lat"));
     81                double lon = Double.parseDouble(attrElem.getAttribute("lon"));
     82                entry.setPos(new LatLon(lat, lon));
     83                break;
     84            case "speed":
     85                entry.setSpeed(Double.valueOf(attrElem.getTextContent()));
     86                break;
     87            case "elevation":
     88                entry.setElevation(Double.valueOf(attrElem.getTextContent()));
     89                break;
     90            case "gps-time":
     91                entry.setGpsTime(new Date(Long.parseLong(attrElem.getTextContent())));
     92                break;
     93            case "exif-orientation":
     94                entry.setExifOrientation(Integer.valueOf(attrElem.getTextContent()));
     95                break;
     96            case "exif-time":
     97                entry.setExifTime(new Date(Long.parseLong(attrElem.getTextContent())));
     98                break;
     99            case "exif-gps-time":
     100                entry.setExifGpsTime(new Date(Long.parseLong(attrElem.getTextContent())));
     101                break;
     102            case "exif-coordinates":
     103                entry.setExifCoor(new LatLon(
     104                        Double.parseDouble(attrElem.getAttribute("lat")),
     105                        Double.parseDouble(attrElem.getAttribute("lon"))));
     106                break;
     107            case "exif-image-direction":
     108                entry.setExifImgDir(Double.parseDouble(attrElem.getTextContent()));
     109                break;
     110            case "is-new-gps-data":
     111                if (Boolean.parseBoolean(attrElem.getTextContent())) {
     112                    entry.flagNewGpsData();
     113                }
     114                break;
     115            default: // Do nothing
     116            }
     117            // TODO: handle thumbnail loading
     118        } catch (NumberFormatException e) {
     119            if (Main.isTraceEnabled()) {
     120                Main.trace(e.getMessage());
     121            }
     122        }
     123    }
    120124}
Note: See TracChangeset for help on using the changeset viewer.