Index: applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/traffico/TrafficoSign.java
===================================================================
--- applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/traffico/TrafficoSign.java	(revision 31987)
+++ applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/traffico/TrafficoSign.java	(revision 31988)
@@ -3,4 +3,5 @@
 
 import java.awt.Color;
+import java.io.IOException;
 import java.io.InputStream;
 import java.util.ArrayList;
@@ -14,4 +15,6 @@
 import javax.json.JsonObject;
 
+import org.openstreetmap.josm.Main;
+
 public final class TrafficoSign {
   private static Map<String, Map<String, TrafficoSignElement[]>> signs = new HashMap<>();
@@ -23,59 +26,61 @@
   public static TrafficoSignElement[] getSign(String country, String signName) {
     if (signs.get(country) == null) {
-      System.out.println("Read signs for " + country);
-      InputStream countryStream = TrafficoSign.class
-          .getResourceAsStream("/data/fonts/traffico/signs/" + country + ".json");
-      if (countryStream == null) {
-        return null;
+      Main.info("Reading signs for country ''{0}''.", country);
+      try (
+        InputStream countryStream = TrafficoSign.class
+            .getResourceAsStream("/data/fonts/traffico/signs/" + country + ".json")) {
+        if (countryStream == null) {
+          return null;
+        }
+        JsonObject countrySigns = Json.createReader(countryStream).readObject();
+        Set<String> countrySignNames = countrySigns.keySet();
+        Main.info(
+            countrySignNames.size() + " different signs are supported for ''{0}'' by the Mapillary-plugin .",
+            country
+        );
+        Map<String, TrafficoSignElement[]> countryMap = new HashMap<>();
+        for (String name : countrySignNames) {
+          JsonArray elements = countrySigns.getJsonObject(name).getJsonArray("elements");
+
+          // TODO: Replace by an array when all types of sign elements (text!) are
+          // supported
+          List<TrafficoSignElement> layers = new ArrayList<>();
+
+          for (int i = 0; i < elements.size(); i++) {
+            Character glyph = TrafficoGlyph.getGlyph(elements.getJsonObject(i)
+                .getString("type"));
+            if (glyph != null) {
+              Color c;
+              switch (elements.getJsonObject(i).getString("color").toLowerCase()) {
+                case "black":
+                  c = Color.BLACK;
+                  break;
+                case "red":
+                  c = Color.RED;
+                  break;
+                case "blue":
+                  c = Color.BLUE;
+                  break;
+                case "white":
+                  c = Color.WHITE;
+                  break;
+                case "green":
+                  c = Color.GREEN;
+                  break;
+                case "yellow":
+                  c = Color.YELLOW;
+                  break;
+                default:
+                  c = Color.MAGENTA;
+              }
+              layers.add(new TrafficoSignElement(glyph, c));
+            }
+          }
+          countryMap.put(name, layers.toArray(new TrafficoSignElement[layers.size()]));
+        }
+        signs.put(country, countryMap);
+      } catch (IOException e) {
+        Main.error(e);
       }
-      JsonObject countrySigns = Json.createReader(countryStream).readObject();
-      Set<String> countrySignNames = countrySigns.keySet();
-      System.out.println(countrySignNames.size() + " signs found");
-      Map<String, TrafficoSignElement[]> countryMap = new HashMap<>();
-      for (String name : countrySignNames) {
-        System.out.println(" * sign " + name);
-        JsonArray elements = countrySigns.getJsonObject(name).getJsonArray(
-            "elements");
-
-        // TODO: Replace by an array when all types of sign elements (text!) are
-        // supported
-        List<TrafficoSignElement> layers = new ArrayList<>();
-
-        for (int i = 0; i < elements.size(); i++) {
-          System.out.println("   - "
-              + elements.getJsonObject(i).getString("color") + " layer "
-              + elements.getJsonObject(i).getString("type"));
-          Character glyph = TrafficoGlyph.getGlyph(elements.getJsonObject(i)
-              .getString("type"));
-          if (glyph != null) {
-            Color c;
-            switch (elements.getJsonObject(i).getString("color").toLowerCase()) {
-              case "black":
-                c = Color.BLACK;
-                break;
-              case "red":
-                c = Color.RED;
-                break;
-              case "blue":
-                c = Color.BLUE;
-                break;
-              case "white":
-                c = Color.WHITE;
-                break;
-              case "green":
-                c = Color.GREEN;
-                break;
-              case "yellow":
-                c = Color.YELLOW;
-                break;
-              default:
-                c = Color.MAGENTA;
-            }
-            layers.add(new TrafficoSignElement(glyph, c));
-          }
-        }
-        countryMap.put(name, layers.toArray(new TrafficoSignElement[0]));
-      }
-      signs.put(country, countryMap);
     }
     if (signs.get(country).get(signName) != null) {
