Index: applications/editors/josm/plugins/graphview/.checkstyle
===================================================================
--- applications/editors/josm/plugins/graphview/.checkstyle	(revision 32620)
+++ applications/editors/josm/plugins/graphview/.checkstyle	(revision 32620)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+  <local-check-config name="JOSM" location="/JOSM/tools/checkstyle/josm_checks.xml" type="project" description="">
+    <additional-data name="protect-config-file" value="false"/>
+  </local-check-config>
+  <fileset name="all" enabled="true" check-config-name="JOSM" local="true">
+    <file-match-pattern match-pattern="." include-pattern="true"/>
+  </fileset>
+  <filter name="DerivedFiles" enabled="true"/>
+  <filter name="FilesFromPackage" enabled="true">
+    <filter-data value="data"/>
+    <filter-data value="images"/>
+    <filter-data value="styles"/>
+    <filter-data value="resources"/>
+    <filter-data value="scripts"/>
+  </filter>
+</fileset-config>
Index: applications/editors/josm/plugins/graphview/.project
===================================================================
--- applications/editors/josm/plugins/graphview/.project	(revision 32619)
+++ applications/editors/josm/plugins/graphview/.project	(revision 32620)
@@ -16,7 +16,13 @@
 			</arguments>
 		</buildCommand>
+		<buildCommand>
+			<name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
 	</buildSpec>
 	<natures>
 		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
 	</natures>
 </projectDescription>
Index: applications/editors/josm/plugins/graphview/.settings/org.eclipse.jdt.ui.prefs
===================================================================
--- applications/editors/josm/plugins/graphview/.settings/org.eclipse.jdt.ui.prefs	(revision 32620)
+++ applications/editors/josm/plugins/graphview/.settings/org.eclipse.jdt.ui.prefs	(revision 32620)
@@ -0,0 +1,60 @@
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=false
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=false
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=false
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+sp_cleanup.use_type_arguments=false
Index: applications/editors/josm/plugins/graphview/build.xml
===================================================================
--- applications/editors/josm/plugins/graphview/build.xml	(revision 32619)
+++ applications/editors/josm/plugins/graphview/build.xml	(revision 32620)
@@ -2,5 +2,5 @@
 <project name="graphview" default="dist" basedir=".">
     <property name="commit.message" value="option to change graph colors; closes ticket 5523 in JOSM Trac"/>
-    <property name="plugin.main.version" value="10279"/>
+    <property name="plugin.main.version" value="10420"/>
 
     <!-- Configure these properties (replace "..." accordingly).
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessEvaluator.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessEvaluator.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessEvaluator.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -27,5 +28,5 @@
      *                           != null
      */
-    public boolean wayUsable(W way, boolean forward,
+    boolean wayUsable(W way, boolean forward,
             Map<RoadPropertyType<?>, Object> roadPropertyValues);
 
@@ -38,5 +39,4 @@
      *                           property type; != null
      */
-    public boolean nodeUsable(N node, Map<RoadPropertyType<?>, Object> roadPropertyValues);
-
+    boolean nodeUsable(N node, Map<RoadPropertyType<?>, Object> roadPropertyValues);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessParameters.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessParameters.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessParameters.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -11,5 +12,5 @@
 public interface AccessParameters {
 
-    public String getAccessClass();
+    String getAccessClass();
 
     /**
@@ -17,5 +18,5 @@
      * @param accessType  access type to check usablitly for; != null
      */
-    public boolean getAccessTypeUsable(AccessType accessType);
+    boolean getAccessTypeUsable(AccessType accessType);
 
     /**
@@ -24,5 +25,5 @@
      * @return  collection of property types; != null
      */
-    public Collection<VehiclePropertyType<?>> getAvailableVehicleProperties();
+    Collection<VehiclePropertyType<?>> getAvailableVehicleProperties();
 
     /**
@@ -35,5 +36,4 @@
      *                         {@link VehiclePropertyType#isValidValue(Object)} method.
      */
-    public <V> V getVehiclePropertyValue(VehiclePropertyType<V> vehicleProperty);
-
+    <V> V getVehiclePropertyValue(VehiclePropertyType<V> vehicleProperty);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRuleset.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRuleset.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRuleset.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -21,5 +22,5 @@
      *         empty if the parameter was no known mode of transport; != null
      */
-    public List<String> getAccessHierarchyAncestors(String transportMode);
+    List<String> getAccessHierarchyAncestors(String transportMode);
 
     /**
@@ -28,5 +29,5 @@
      * (commonly things like highway=* or barrier=*)
      */
-    public Collection<Tag> getBaseTags();
+    Collection<Tag> getBaseTags();
 
     /**
@@ -34,5 +35,4 @@
      * @return  list of implications in the order they are expected to be applied; != null
      */
-    public List<Implication> getImplications();
-
+    List<Implication> getImplications();
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReader.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReader.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReader.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -20,5 +21,5 @@
  * utility class that can read access rulesets from xml files
  */
-public class AccessRulesetReader {
+public final class AccessRulesetReader {
 
     public static class AccessRulesetSyntaxException extends IOException {
@@ -26,5 +27,6 @@
         public AccessRulesetSyntaxException(String message) {
             super(message);
-        };
+        }
+
         public AccessRulesetSyntaxException(Throwable t) {
             super(t.toString());
@@ -58,8 +60,10 @@
             final String name;
             final AccessClass parent;
-            public AccessClass(String name, AccessClass parent) {
+
+            AccessClass(String name, AccessClass parent) {
                 this.name = name;
                 this.parent = parent;
             }
+
             List<String> getAncestorHierarchy() {
                 List<String> names;
@@ -77,5 +81,6 @@
         private final Collection<Tag> baseTags = new LinkedList<>();
 
-        private static enum Section {NONE, CLASSES, BASETAGS, IMPLICATIONS};
+        private enum Section { NONE, CLASSES, BASETAGS, IMPLICATIONS }
+
         private Section currentSection = Section.NONE;
 
@@ -90,4 +95,5 @@
             return new AccessRuleset() {
 
+                @Override
                 public List<String> getAccessHierarchyAncestors(String transportMode) {
                     for (AccessClass accessClass : accessClasses) {
@@ -99,8 +105,10 @@
                 }
 
+                @Override
                 public Collection<Tag> getBaseTags() {
                     return baseTags;
                 }
 
+                @Override
                 public List<Implication> getImplications() {
                     return implications;
@@ -234,4 +242,4 @@
         }
 
-    };
+    }
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessType.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessType.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/AccessType.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -15,5 +16,5 @@
 
     private String[] valueStrings;
-    private AccessType(String... valueStrings) {
+    AccessType(String... valueStrings) {
         this.valueStrings = valueStrings;
     }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/Implication.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/Implication.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/Implication.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/ImplicationXMLReader.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/ImplicationXMLReader.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/ImplicationXMLReader.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -21,5 +22,6 @@
     private final List<Implication> implications = new LinkedList<>();
 
-    private static enum State {BEFORE_IMPLICATION, BEFORE_CONDITION, CONDITION, BEFORE_IMPLIES, IMPLIES, AFTER_IMPLIES};
+    private enum State { BEFORE_IMPLICATION, BEFORE_CONDITION, CONDITION, BEFORE_IMPLIES, IMPLIES, AFTER_IMPLIES }
+
     private State state = State.BEFORE_IMPLICATION;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/RulesetAccessEvaluator.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/RulesetAccessEvaluator.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/access/RulesetAccessEvaluator.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
@@ -37,4 +38,5 @@
     }
 
+    @Override
     public boolean wayUsable(W way, boolean forward,
             Map<RoadPropertyType<?>, Object> segmentPropertyValues) {
@@ -63,5 +65,5 @@
         /* evaluate one-way tagging */
 
-        String onewayValue =  wayTagsWithImplications.getValue("oneway");
+        String onewayValue = wayTagsWithImplications.getValue("oneway");
 
         if (forward && "-1".equals(onewayValue)
@@ -81,10 +83,11 @@
     }
 
-    public boolean nodeUsable(N node, Map<RoadPropertyType<?>,Object> roadPropertyValues) {
+    @Override
+    public boolean nodeUsable(N node, Map<RoadPropertyType<?>, Object> roadPropertyValues) {
 
         TagGroup nodeTags = dataSource.getTagsN(node);
 
         return objectUsable(roadPropertyValues, nodeTags);
-    };
+    }
 
     private boolean objectUsable(Map<RoadPropertyType<?>, Object> roadPropertyValues,
@@ -110,5 +113,7 @@
             for (String accessClass : ruleset.getAccessHierarchyAncestors(parameters.getAccessClass())) {
                 accessType = accessTypePerClass.get(accessClass);
-                if (accessType != UNDEFINED) { break; }
+                if (accessType != UNDEFINED) {
+                    break;
+                }
             }
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSource.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSource.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSource.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.data;
 
@@ -11,47 +12,47 @@
 
     /** returns all nodes */
-    public Iterable<N> getNodes();
+    Iterable<N> getNodes();
 
     /** returns all ways */
-    public Iterable<W> getWays();
+    Iterable<W> getWays();
 
     /** returns all relations */
-    public Iterable<R> getRelations();
+    Iterable<R> getRelations();
 
     /** returns a node's latitude */
-    public double getLat(N node);
+    double getLat(N node);
 
     /** returns a node's longitude */
-    public double getLon(N node);
+    double getLon(N node);
 
     /** returns a way's nodes */
-    public Iterable<N> getNodes(W way);
+    Iterable<N> getNodes(W way);
 
     /** returns a relation's members */
-    public Iterable<M> getMembers(R relation);
+    Iterable<M> getMembers(R relation);
 
     /** returns a node's tags */
-    public TagGroup getTagsN(N node);
+    TagGroup getTagsN(N node);
 
     /** returns a way's tags */
-    public TagGroup getTagsW(W way);
+    TagGroup getTagsW(W way);
 
     /** returns a relation's tags */
-    public TagGroup getTagsR(R relation);
+    TagGroup getTagsR(R relation);
 
     /** returns a relation member's role */
-    public String getRole(M member);
+    String getRole(M member);
 
     /** returns a relation member's member object */
-    public Object getMember(M member);
+    Object getMember(M member);
 
     /** returns whether a relation member is a node */
-    public boolean isNMember(M member);
+    boolean isNMember(M member);
 
     /** returns whether a relation member is a way */
-    public boolean isWMember(M member);
+    boolean isWMember(M member);
 
     /** returns whether a relation member is a relation */
-    public boolean isRMember(M member);
+    boolean isRMember(M member);
 
     /**
@@ -61,5 +62,5 @@
      * @param observer  observer object, != null
      */
-    public void addObserver(DataSourceObserver observer);
+    void addObserver(DataSourceObserver observer);
 
     /**
@@ -69,5 +70,4 @@
      * @param observer  observer object, != null
      */
-    public void deleteObserver(DataSourceObserver observer);
-
+    void deleteObserver(DataSourceObserver observer);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSourceObserver.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSourceObserver.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/DataSourceObserver.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.data;
 
@@ -12,5 +13,4 @@
      * @param dataSource  observed data source that has changed; != null
      */
-    public void update(DataSource<?, ?, ?, ?> dataSource);
-
+    void update(DataSource<?, ?, ?, ?> dataSource);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/MapBasedTagGroup.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/MapBasedTagGroup.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/MapBasedTagGroup.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.data;
 
@@ -58,4 +59,5 @@
     }
 
+    @Override
     public String getValue(String key) {
         assert key != null;
@@ -63,4 +65,5 @@
     }
 
+    @Override
     public boolean containsKey(String key) {
         assert key != null;
@@ -68,4 +71,5 @@
     }
 
+    @Override
     public boolean containsValue(String value) {
         assert value != null;
@@ -73,4 +77,5 @@
     }
 
+    @Override
     public boolean contains(Tag tag) {
         assert tag != null;
@@ -78,4 +83,5 @@
     }
 
+    @Override
     public int size() {
         return tagMap.size();
@@ -86,4 +92,5 @@
      * The Iterator does not support the {@link Iterator#remove()} method.
      */
+    @Override
     public Iterator<Tag> iterator() {
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/Tag.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/Tag.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/Tag.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.data;
 
@@ -23,5 +24,5 @@
             return false;
         } else {
-            Tag otherTag = (Tag)obj;
+            Tag otherTag = (Tag) obj;
             return key.equals(otherTag.key) && value.equals(otherTag.value);
         }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/TagGroup.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/TagGroup.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/data/TagGroup.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.data;
 
@@ -12,5 +13,5 @@
      * @param key  key whose value will be returned; != null
      */
-    public String getValue(String key);
+    String getValue(String key);
 
     /**
@@ -18,5 +19,5 @@
      * @param key  key to check for; != null
      */
-    public boolean containsKey(String key);
+    boolean containsKey(String key);
 
     /**
@@ -24,5 +25,5 @@
      * @param value  value to check for; != null
      */
-    public boolean containsValue(String value);
+    boolean containsValue(String value);
 
     /**
@@ -30,10 +31,9 @@
      * @param tag  tag to check for; != null
      */
-    public boolean contains(Tag tag);
+    boolean contains(Tag tag);
 
     /**
      * returns the number of tags in this group
      */
-    public int size();
-
+    int size();
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/ConnectorEvaluationGroup.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/ConnectorEvaluationGroup.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/ConnectorEvaluationGroup.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -62,5 +63,7 @@
         assert targetNode != null && borderNodes.contains(targetNode);
 
-        if (!evaluated) { throw new IllegalStateException(tr("Group not yet evaluated")); }
+        if (!evaluated) {
+            throw new IllegalStateException(tr("Group not yet evaluated"));
+        }
 
         int inboundIndex = borderNodes.indexOf(startNode);
@@ -78,6 +81,6 @@
         List<Segment>[][] sequenceArray = new List[borderNodes.size()][borderNodes.size()];
 
-        for (int startIndex = 0; startIndex < borderNodes.size(); startIndex ++) {
-            for (int targetIndex = 0; targetIndex < borderNodes.size(); targetIndex ++) {
+        for (int startIndex = 0; startIndex < borderNodes.size(); startIndex++) {
+            for (int targetIndex = 0; targetIndex < borderNodes.size(); targetIndex++) {
 
                 List<Segment> sequence =
@@ -108,4 +111,3 @@
         return "ConnectorEG " + segments;
     }
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/EvaluationGroup.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/EvaluationGroup.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/EvaluationGroup.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -263,5 +264,7 @@
     public final void evaluate(Collection<Restriction> restrictions) {
 
-        if (evaluated) { return; }
+        if (evaluated) {
+            return;
+        }
 
         evaluateImpl(restrictions);
@@ -278,5 +281,5 @@
      *                      will not be modified; != null
      */
-    abstract protected void evaluateImpl(Collection<Restriction> restrictions);
+    protected abstract void evaluateImpl(Collection<Restriction> restrictions);
 
     /**
@@ -284,5 +287,5 @@
      * @param node  node to check; != null
      */
-    abstract protected boolean isUsableNode(SegmentNode node);
+    protected abstract boolean isUsableNode(SegmentNode node);
 
     /**
@@ -290,5 +293,4 @@
      * @param segment  segment to check; != null
      */
-    abstract protected boolean isUsableSegment(Segment segment);
-
+    protected abstract boolean isUsableSegment(Segment segment);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphEdge.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphEdge.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphEdge.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphNode.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphNode.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/GraphNode.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -16,10 +17,10 @@
      * returns all edges that lead to this GraphNode; != null
      */
-    public Collection<GraphEdge> getInboundEdges();
+    Collection<GraphEdge> getInboundEdges();
 
     /**
      * returns all edges that start at this GraphNode; != null
      */
-    public Collection<GraphEdge> getOutboundEdges();
+    Collection<GraphEdge> getOutboundEdges();
 
     /**
@@ -29,5 +30,5 @@
      *          by {@link #getSegment()}; != null
      */
-    public SegmentNode getSegmentNode();
+    SegmentNode getSegmentNode();
 
     /**
@@ -36,5 +37,4 @@
      * @return  Segment; != null
      */
-    public Segment getSegment();
-
+    Segment getSegment();
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/JunctionEvaluationGroup.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/JunctionEvaluationGroup.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/JunctionEvaluationGroup.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -38,5 +39,7 @@
      */
     public Collection<Segment> getInboundSegments() {
-        if (!evaluated) { throw new IllegalStateException(tr("Group not yet evaluated")); }
+        if (!evaluated) {
+            throw new IllegalStateException(tr("Group not yet evaluated"));
+        }
         return inboundSegments;
     }
@@ -49,5 +52,7 @@
      */
     public Collection<Segment> getOutboundSegments() {
-        if (!evaluated) { throw new IllegalStateException(tr("Group not yet evaluated")); }
+        if (!evaluated) {
+            throw new IllegalStateException(tr("Group not yet evaluated"));
+        }
         return outboundSegments;
     }
@@ -68,5 +73,7 @@
         assert outboundSegment != null && outboundSegments.contains(outboundSegment);
 
-        if (!evaluated) { throw new IllegalStateException(tr("Group not yet evaluated")); }
+        if (!evaluated) {
+            throw new IllegalStateException(tr("Group not yet evaluated"));
+        }
 
         int inboundIndex = inboundSegments.indexOf(inboundSegment);
@@ -105,6 +112,6 @@
         List<Segment>[][] sequenceArray = new List[inboundSegments.size()][outboundSegments.size()];
 
-        for (int inboundIndex = 0; inboundIndex < inboundSegments.size(); inboundIndex ++) {
-            for (int outboundIndex = 0; outboundIndex < outboundSegments.size(); outboundIndex ++) {
+        for (int inboundIndex = 0; inboundIndex < inboundSegments.size(); inboundIndex++) {
+            for (int outboundIndex = 0; outboundIndex < outboundSegments.size(); outboundIndex++) {
 
                 List<Segment> sequence =
@@ -118,5 +125,4 @@
 
         segmentSequences = sequenceArray;
-
     }
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/TSBasedWayGraph.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/TSBasedWayGraph.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/TSBasedWayGraph.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -32,5 +33,6 @@
         private final List<GraphEdge> incomingEdges = new ArrayList<>();
         private final List<GraphEdge> outgoingEdges = new ArrayList<>();
-        public GraphNodeImpl(SegmentNode node, Segment segment) {
+
+        GraphNodeImpl(SegmentNode node, Segment segment) {
             assert node != null && segment != null;
             assert segment.getNode1() == node || segment.getNode2() == node;
@@ -38,24 +40,35 @@
             this.segment = segment;
         }
+
+        @Override
         public SegmentNode getSegmentNode() {
             return node;
         }
+
+        @Override
         public Segment getSegment() {
             return segment;
         }
+
         public void addIncomingEdge(GraphEdge edge) {
             assert edge != null;
             incomingEdges.add(edge);
         }
+
+        @Override
         public Collection<GraphEdge> getInboundEdges() {
             return incomingEdges;
         }
+
         public void addOutgoingEdge(GraphEdge edge) {
             assert edge != null;
             outgoingEdges.add(edge);
         }
+
+        @Override
         public Collection<GraphEdge> getOutboundEdges() {
             return outgoingEdges;
         }
+
         @Override
         public String toString() {
@@ -70,5 +83,5 @@
         private final Map<GraphEdgePropertyType<?>, Object> properties;
 
-        public GraphEdgeImpl(GraphNode startNode, GraphNode targetNode,
+        GraphEdgeImpl(GraphNode startNode, GraphNode targetNode,
                 Map<GraphEdgePropertyType<?>, Object> properties) {
             assert startNode != null && targetNode != null && properties != null;
@@ -78,14 +91,20 @@
         }
 
+        @Override
         public GraphNode getStartNode() {
             return startNode;
         }
+
+        @Override
         public GraphNode getTargetNode() {
             return targetNode;
         }
 
+        @Override
         public Collection<GraphEdgePropertyType<?>> getAvailableProperties() {
             return properties.keySet();
         }
+
+        @Override
         public <V> V getPropertyValue(GraphEdgePropertyType<V> property) {
             @SuppressWarnings("unchecked")
@@ -99,5 +118,5 @@
         }
 
-    };
+    }
 
     private final Set<WayGraphObserver> observers = new HashSet<>();
@@ -121,8 +140,10 @@
     }
 
+    @Override
     public Collection<GraphEdge> getEdges() {
         return edges;
     }
 
+    @Override
     public Collection<GraphNode> getNodes() {
         return nodes;
@@ -478,4 +499,5 @@
     }
 
+    @Override
     public void update(TransitionStructure transitionStructure) {
         createNodesAndEdges();
@@ -483,8 +505,10 @@
     }
 
+    @Override
     public void addObserver(WayGraphObserver observer) {
         observers.add(observer);
     }
 
+    @Override
     public void deleteObserver(WayGraphObserver observer) {
         observers.remove(observer);
@@ -496,4 +520,3 @@
         }
     }
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraph.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraph.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraph.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -9,4 +10,5 @@
 
     Collection<GraphNode> getNodes();
+
     Collection<GraphEdge> getEdges();
 
@@ -17,5 +19,5 @@
      * @param observer  observer object, != null
      */
-    public void addObserver(WayGraphObserver observer);
+    void addObserver(WayGraphObserver observer);
 
     /**
@@ -25,5 +27,5 @@
      * @param observer  observer object, != null
      */
-    public void deleteObserver(WayGraphObserver observer);
+    void deleteObserver(WayGraphObserver observer);
 
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraphObserver.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraphObserver.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/graph/WayGraphObserver.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.graph;
 
@@ -11,5 +12,4 @@
      * @param wayGraph  observed graph that has changed; != null
      */
-    public void update(WayGraph wayGraph);
-
+    void update(WayGraph wayGraph);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgePropertyType.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgePropertyType.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgePropertyType.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -21,5 +22,5 @@
      * determines the property value for segments created from junction groups
      */
-    public V evaluate(JunctionEvaluationGroup junctionGroup,
+    V evaluate(JunctionEvaluationGroup junctionGroup,
             List<Segment> segmentSequence,
             TransitionStructure transitionStructure);
@@ -28,7 +29,6 @@
      * determines the property value for segments created from connector groups
      */
-    public V evaluate(ConnectorEvaluationGroup connectorGroup,
+    V evaluate(ConnectorEvaluationGroup connectorGroup,
             List<Segment> segmentSequence,
             TransitionStructure transitionStructure);
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgeSegments.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgeSegments.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/GraphEdgeSegments.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -25,4 +26,5 @@
     private GraphEdgeSegments() { }
 
+    @Override
     public List<Segment> evaluate(JunctionEvaluationGroup junctionGroup,
             List<Segment> segmentSequence, TransitionStructure transitionStructure) {
@@ -30,8 +32,8 @@
     }
 
+    @Override
     public List<Segment> evaluate(ConnectorEvaluationGroup connectorGroup,
             List<Segment> segmentSequence, TransitionStructure transitionStructure) {
         return segmentSequence;
     }
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadIncline.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadIncline.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadIncline.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -8,11 +9,13 @@
 public class RoadIncline implements RoadPropertyType<Float> {
 
+    @Override
     public <N, W, R, M> Float evaluateN(N node, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         return null;
-    };
+    }
 
+    @Override
     public <N, W, R, M> Float evaluateW(W way, boolean forward, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         assert way != null && accessParameters != null && dataSource != null;
 
@@ -31,10 +34,11 @@
 
         return null;
-    };
+    }
 
+    @Override
     public boolean isUsable(Object propertyValue, AccessParameters accessParameters) {
         assert propertyValue instanceof Float;
 
-        float incline = (Float)propertyValue;
+        float incline = (Float) propertyValue;
 
         Float maxInclineUp =
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxaxleload.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxaxleload.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxaxleload.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("maxaxleload", AXLELOAD, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxheight.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxheight.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxheight.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("maxheight", HEIGHT, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxlength.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxlength.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxlength.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("maxlength", LENGTH, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeed.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeed.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeed.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -30,4 +31,5 @@
     }
 
+    @Override
     public <N, W, R, M> Float evaluateN(N node, AccessParameters accessParameters,
             DataSource<N, W, R, M> dataSource) {
@@ -39,4 +41,5 @@
     }
 
+    @Override
     public <N, W, R, M> Float evaluateW(W way, boolean forward, AccessParameters accessParameters,
             DataSource<N, W, R, M> dataSource) {
@@ -63,4 +66,5 @@
     }
 
+    @Override
     public boolean isUsable(Object propertyValue, AccessParameters accessParameters) {
         assert propertyValue instanceof Float;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxweight.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxweight.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxweight.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("maxweight", WEIGHT, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxwidth.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxwidth.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxwidth.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("maxwidth", WIDTH, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMinspeed.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMinspeed.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadMinspeed.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("minspeed", SPEED, LimitType.MINIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyType.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyType.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyType.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -26,5 +27,5 @@
      *                          null if property cannot be determined / does not apply
      */
-    public <N, W, R, M> V evaluateW(W way, boolean forward,
+    <N, W, R, M> V evaluateW(W way, boolean forward,
             AccessParameters accessParameters, DataSource<N, W, R, M> dataSource);
 
@@ -39,5 +40,5 @@
      *                          null if property cannot be determined / does not apply
      */
-    public <N, W, R, M> V evaluateN(N node,
+    <N, W, R, M> V evaluateN(N node,
             AccessParameters accessParameters, DataSource<N, W, R, M> dataSource);
 
@@ -49,5 +50,4 @@
      *                MUST be of type V; != null
      */
-    public boolean isUsable(Object object, AccessParameters accessParameters);
-
+    boolean isUsable(Object object, AccessParameters accessParameters);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadSurface.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadSurface.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadSurface.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,11 +10,13 @@
 public class RoadSurface implements RoadPropertyType<String> {
 
+    @Override
     public <N, W, R, M> String evaluateN(N node, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         return null;
-    };
+    }
 
+    @Override
     public <N, W, R, M> String evaluateW(W way, boolean forward, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         assert way != null && accessParameters != null && dataSource != null;
 
@@ -21,10 +24,11 @@
         return tags.getValue("surface");
 
-    };
+    }
 
+    @Override
     public boolean isUsable(Object propertyValue, AccessParameters accessParameters) {
         assert propertyValue instanceof String;
 
-        String surface = (String)propertyValue;
+        String surface = (String) propertyValue;
 
         Collection<String> surfaceBlacklist =
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadTracktype.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadTracktype.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadTracktype.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -7,11 +8,13 @@
 public class RoadTracktype implements RoadPropertyType<Integer> {
 
+    @Override
     public <N, W, R, M> Integer evaluateN(N node, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         return null;
-    };
+    }
 
+    @Override
     public <N, W, R, M> Integer evaluateW(W way, boolean forward, AccessParameters accessParameters,
-            DataSource<N,W,R,M> dataSource) {
+            DataSource<N, W, R, M> dataSource) {
         assert way != null && accessParameters != null && dataSource != null;
 
@@ -34,10 +37,11 @@
 
         return null;
-    };
+    }
 
+    @Override
     public boolean isUsable(Object propertyValue, AccessParameters accessParameters) {
         assert propertyValue instanceof Integer;
 
-        int tracktype = (Integer)propertyValue;
+        int tracktype = (Integer) propertyValue;
 
         Integer maxTracktype =
@@ -50,4 +54,3 @@
         }
     }
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadValueLimit.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadValueLimit.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadValueLimit.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,7 +10,7 @@
  * abstract superclass for road property types that define a limit for a vehicle property
  */
-abstract public class RoadValueLimit implements RoadPropertyType<Float> {
+public abstract class RoadValueLimit implements RoadPropertyType<Float> {
 
-    protected static enum LimitType {MINIMUM, MAXIMUM};
+    protected enum LimitType { MINIMUM, MAXIMUM }
 
     private final String keyName;
@@ -36,4 +37,5 @@
     protected abstract Float parse(String valueString);
 
+    @Override
     public <N, W, R, M> Float evaluateW(W way, boolean forward,
             AccessParameters accessParameters, DataSource<N, W, R, M> dataSource) {
@@ -42,4 +44,5 @@
     }
 
+    @Override
     public <N, W, R, M> Float evaluateN(N node,
             AccessParameters accessParameters, DataSource<N, W, R, M> dataSource) {
@@ -48,5 +51,5 @@
     }
 
-    private final Float evaluateTags(TagGroup tags) {
+    private Float evaluateTags(TagGroup tags) {
         String valueString = tags.getValue(keyName);
         if (valueString != null) {
@@ -58,4 +61,5 @@
     }
 
+    @Override
     public boolean isUsable(Object propertyValue, AccessParameters accessParameters) {
         assert propertyValue instanceof Float;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadWidth.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadWidth.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/RoadWidth.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -9,4 +10,5 @@
         super("width", WIDTH, LimitType.MAXIMUM);
     }
+
     @Override
     protected Float parse(String valueString) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyType.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyType.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyType.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -15,5 +16,4 @@
      * null is never a valid value and must not be used as parameter.
      */
-    public boolean isValidValue(Object value);
-
+    boolean isValidValue(Object value);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyTypes.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyTypes.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/property/VehiclePropertyTypes.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -13,6 +14,7 @@
 
     private static final class NonnegativeFloatProperty implements VehiclePropertyType<Float> {
+        @Override
         public boolean isValidValue(Object value) {
-            return value instanceof Float && (Float)value >= 0;
+            return value instanceof Float && (Float) value >= 0;
         }
     }
@@ -44,4 +46,5 @@
     /** surface types ("surface" key values) the vehicle cannot use */
     public static final VehiclePropertyType<Collection<String>> SURFACE_BLACKLIST = new VehiclePropertyType<Collection<String>>() {
+        @Override
         public boolean isValidValue(Object value) {
 
@@ -50,5 +53,5 @@
             }
 
-            for (Object contentObject : (Collection<?>)value) {
+            for (Object contentObject : (Collection<?>) value) {
                 if (!(contentObject instanceof String)) {
                     return false;
@@ -66,6 +69,7 @@
      */
     public static final VehiclePropertyType<Integer> MAX_TRACKTYPE = new VehiclePropertyType<Integer>() {
+        @Override
         public boolean isValidValue(Object value) {
-            return value instanceof Integer && (Integer)value >= 0 && (Integer)value <= 5;
+            return value instanceof Integer && (Integer) value >= 0 && (Integer) value <= 5;
         }
     };
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/GenericTransitionStructure.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/GenericTransitionStructure.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/GenericTransitionStructure.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -41,5 +42,6 @@
         private final List<Segment> outboundSegments = new LinkedList<>();
         private final Map<RoadPropertyType<?>, Object> properties;
-        public SegmentNodeImpl(double lat, double lon, Map<RoadPropertyType<?>, Object> properties) {
+
+        SegmentNodeImpl(double lat, double lon, Map<RoadPropertyType<?>, Object> properties) {
             assert properties != null;
             this.lat = lat;
@@ -47,19 +49,29 @@
             this.properties = properties;
         }
+
+        @Override
         public double getLat() {
             return lat;
         }
+
+        @Override
         public double getLon() {
             return lon;
         }
+
         public void addInboundSegment(Segment segment) {
             inboundSegments.add(segment);
         }
+
         public void addOutboundSegment(Segment segment) {
             outboundSegments.add(segment);
         }
+
+        @Override
         public Collection<Segment> getOutboundSegments() {
             return outboundSegments;
         }
+
+        @Override
         public Collection<Segment> getInboundSegments() {
             return inboundSegments;
@@ -69,7 +81,10 @@
             properties.put(property, value);
         }*/
+        @Override
         public Collection<RoadPropertyType<?>> getAvailableProperties() {
             return properties.keySet();
         }
+
+        @Override
         public <P> P getPropertyValue(RoadPropertyType<P> property) {
             @SuppressWarnings("unchecked") //cast is safe due to type parameter of setProperty
@@ -77,4 +92,5 @@
             return result;
         }
+
         public Map<RoadPropertyType<?>, Object> getProperties() {
             return properties;
@@ -91,21 +107,31 @@
         private final SegmentNode node2;
         private final Map<RoadPropertyType<?>, Object> properties;
-        public SegmentImpl(SegmentNode node1, SegmentNode node2, Map<RoadPropertyType<?>, Object> properties) {
+
+        SegmentImpl(SegmentNode node1, SegmentNode node2, Map<RoadPropertyType<?>, Object> properties) {
             this.node1 = node1;
             this.node2 = node2;
             this.properties = properties;
         }
+
+        @Override
         public SegmentNode getNode1() {
             return node1;
         }
+
+        @Override
         public SegmentNode getNode2() {
             return node2;
         }
+
         /*public <P> void setProperty(RoadPropertyType<P> property, P value) {
             properties.put(property, value);
         }*/
+
+        @Override
         public Collection<RoadPropertyType<?>> getAvailableProperties() {
             return properties.keySet();
         }
+
+        @Override
         public <P> P getPropertyValue(RoadPropertyType<P> property) {
             @SuppressWarnings("unchecked") //cast is safe due to type parameter of setProperty
@@ -126,5 +152,5 @@
 
         /** constructor, will directly use collection references, collections must not be changed after usage as constructor param */
-        public RestrictionImpl(Segment from, Collection<Segment> vias, Collection<Segment> tos) {
+        RestrictionImpl(Segment from, Collection<Segment> vias, Collection<Segment> tos) {
             this.from = from;
             this.vias = Collections.unmodifiableCollection(vias);
@@ -132,10 +158,15 @@
         }
 
+        @Override
         public Segment getFrom() {
             return from;
         }
+
+        @Override
         public Collection<Segment> getVias() {
             return vias;
         }
+
+        @Override
         public Collection<Segment> getTos() {
             return tos;
@@ -213,12 +244,15 @@
     }
 
+    @Override
     public Collection<SegmentNode> getNodes() {
         return nodes;
     }
 
+    @Override
     public Collection<Segment> getSegments() {
         return segments;
     }
 
+    @Override
     public Collection<Restriction> getRestrictions() {
         return restrictions;
@@ -278,5 +312,6 @@
             Map<N, SegmentNodeImpl> nodeCreationMap, Map<W, List<Segment>> waySegmentMap) {
 
-        assert way != null && wayAccessEvaluator != null && nodes != null && segments != null && nodeCreationMap != null && waySegmentMap != null;
+        assert way != null && wayAccessEvaluator != null && nodes != null
+                && segments != null && nodeCreationMap != null && waySegmentMap != null;
 
         /* calculate property values */
@@ -379,5 +414,5 @@
 
             if ("restriction".equals(tags.getValue("type"))
-                    && tags.getValue("restriction") != null ) {
+                    && tags.getValue("restriction") != null) {
 
                 //evaluate relation
@@ -415,5 +450,5 @@
                     return EMPTY_RESTRICTION_COLLECTION;
                 } else {
-                    fromWay = (W)dataSource.getMember(member);
+                    fromWay = (W) dataSource.getMember(member);
                 }
             } else if ("to".equals(dataSource.getRole(member))) {
@@ -422,11 +457,11 @@
                     return EMPTY_RESTRICTION_COLLECTION;
                 } else {
-                    toWays.add((W)dataSource.getMember(member));
+                    toWays.add((W) dataSource.getMember(member));
                 }
             } else if ("via".equals(dataSource.getRole(member))) {
                 if (dataSource.isWMember(member)) {
-                    viaWays.add((W)dataSource.getMember(member));
+                    viaWays.add((W) dataSource.getMember(member));
                 } else if (dataSource.isNMember(member)) {
-                    viaNodes.add((N)dataSource.getMember(member));
+                    viaNodes.add((N) dataSource.getMember(member));
                 }
             }
@@ -671,4 +706,5 @@
     }
 
+    @Override
     public void update(DataSource<?, ?, ?, ?> dataSource) {
         assert this.dataSource == dataSource;
@@ -676,8 +712,10 @@
     }
 
+    @Override
     public void addObserver(TransitionStructureObserver observer) {
         observers.add(observer);
     }
 
+    @Override
     public void deleteObserver(TransitionStructureObserver observer) {
         observers.remove(observer);
@@ -689,4 +727,3 @@
         }
     }
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Restriction.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Restriction.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Restriction.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -14,5 +15,5 @@
      * != null
      */
-    public Segment getFrom();
+    Segment getFrom();
 
     /**
@@ -22,5 +23,5 @@
      * @return  unmodifiable collection of segments; != null
      */
-    public Collection<Segment> getVias();
+    Collection<Segment> getVias();
 
     /**
@@ -30,5 +31,4 @@
      * @return  unmodifiable collection of segments; != null
      */
-    public Collection<Segment> getTos();
-
+    Collection<Segment> getTos();
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Segment.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Segment.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/Segment.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -9,10 +10,9 @@
      * returns the node this segment starts at; != null
      */
-    public SegmentNode getNode1();
+    SegmentNode getNode1();
 
     /**
      * returns the node this segment leads to; != null
      */
-    public SegmentNode getNode2();
-
+    SegmentNode getNode2();
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/SegmentNode.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/SegmentNode.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/SegmentNode.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -9,8 +10,8 @@
 
     /** returns the node's latitude */
-    public double getLat();
+    double getLat();
 
     /** returns the node's longitude */
-    public double getLon();
+    double getLon();
 
     /** returns all segments that end at this node */
@@ -19,4 +20,3 @@
     /** returns all segments that start at this node */
     Collection<Segment> getOutboundSegments();
-
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructure.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructure.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructure.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -9,7 +10,9 @@
 public interface TransitionStructure {
 
-    public Collection<SegmentNode> getNodes();
-    public Collection<Segment> getSegments();
-    public Collection<Restriction> getRestrictions();
+    Collection<SegmentNode> getNodes();
+
+    Collection<Segment> getSegments();
+
+    Collection<Restriction> getRestrictions();
 
     /**
@@ -19,5 +22,5 @@
      * @param observer  observer object, != null
      */
-    public void addObserver(TransitionStructureObserver observer);
+    void addObserver(TransitionStructureObserver observer);
 
     /**
@@ -27,5 +30,5 @@
      * @param observer  observer object, != null
      */
-    public void deleteObserver(TransitionStructureObserver observer);
+    void deleteObserver(TransitionStructureObserver observer);
 
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureElement.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureElement.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureElement.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -15,5 +16,5 @@
      * @return  property type collection; != null
      */
-    public Collection<RoadPropertyType<?>> getAvailableProperties();
+    Collection<RoadPropertyType<?>> getAvailableProperties();
 
     /**
@@ -23,5 +24,4 @@
      * @return property      value of the property for this segment; null if not available
      */
-    public <P> P getPropertyValue(RoadPropertyType<P> propertyType);
-
+    <P> P getPropertyValue(RoadPropertyType<P> propertyType);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureObserver.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureObserver.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/transition/TransitionStructureObserver.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.transition;
 
@@ -11,5 +12,4 @@
      * @param transitionStructure  observed transition structure that has changed; != null
      */
-    public void update(TransitionStructure transitionStructure);
-
+    void update(TransitionStructure transitionStructure);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/GraphUtil.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/GraphUtil.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/GraphUtil.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 
@@ -18,5 +19,5 @@
      * (a node whose {@link SegmentNode} is connected to at most one other {@link SegmentNode})
      */
-    public static final boolean isEndNode(GraphNode node) {
+    public static boolean isEndNode(GraphNode node) {
 
         SegmentNode ownSegmentNode = node.getSegmentNode();
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagCondition.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagCondition.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagCondition.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogic.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogic.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogic.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 
@@ -24,7 +25,9 @@
         assert tag != null;
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 return tags.contains(tag);
             }
+
             @Override
             public String toString() {
@@ -42,7 +45,9 @@
         assert key != null;
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 return tags.containsKey(key);
             }
+
             @Override
             public String toString() {
@@ -60,4 +65,5 @@
     public static TagCondition and(final TagCondition condition, final TagCondition... conditions) {
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 for (TagCondition c : conditions) {
@@ -68,4 +74,5 @@
                 return condition.matches(tags);
             }
+
             @Override
             public String toString() {
@@ -93,4 +100,5 @@
         }
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 for (TagCondition c : conditions) {
@@ -101,4 +109,5 @@
                 return true;
             }
+
             @Override
             public String toString() {
@@ -127,4 +136,5 @@
     public static TagCondition or(final TagCondition condition, final TagCondition... conditions) {
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 for (TagCondition c : conditions) {
@@ -135,4 +145,5 @@
                 return condition.matches(tags);
             }
+
             @Override
             public String toString() {
@@ -160,4 +171,5 @@
         }
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 for (TagCondition c : conditions) {
@@ -168,4 +180,5 @@
                 return false;
             }
+
             @Override
             public String toString() {
@@ -193,7 +206,9 @@
     public static TagCondition not(final TagCondition condition) {
         return new TagCondition() {
+            @Override
             public boolean matches(TagGroup tags) {
                 return !condition.matches(tags);
             }
+
             @Override
             public String toString() {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParser.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParser.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParser.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 
@@ -4,4 +5,6 @@
 import java.util.regex.Pattern;
 
+import org.openstreetmap.josm.Main;
+
 public final class ValueStringParser {
 
@@ -12,5 +15,5 @@
     private static final Pattern DEC_POINT_PATTERN = Pattern.compile("^(\\-?\\d+)\\.(\\d+)$");
 
-    public static final Float parseOsmDecimal(String value, boolean allowNegative) {
+    public static Float parseOsmDecimal(String value, boolean allowNegative) {
 
         /* positive integer */
@@ -20,8 +23,10 @@
             int weight = Integer.parseInt(value);
             if (weight >= 0 || allowNegative) {
-                return (float)weight;
-            }
-
-        } catch (NumberFormatException nfe) {}
+                return (float) weight;
+            }
+
+        } catch (NumberFormatException nfe) {
+            Main.trace(nfe);
+        }
 
         /* positive number with decimal point */
@@ -46,9 +51,10 @@
 
                     if (result >= 0 || allowNegative) {
-                        return (float)result;
+                        return (float) result;
                     }
 
-                } catch (NumberFormatException nfe) {}
-
+                } catch (NumberFormatException nfe) {
+                    Main.trace(nfe);
+                }
             }
         }
@@ -67,5 +73,5 @@
      * @return  speed in km/h; null if value had syntax errors
      */
-    public static final Float parseSpeed(String value) {
+    public static Float parseSpeed(String value) {
 
         /* try numeric speed (implied km/h) */
@@ -82,6 +88,8 @@
             String kmhString = kmhMatcher.group(1);
             try {
-                return (float)Integer.parseInt(kmhString);
-            } catch (NumberFormatException nfe) {}
+                return (float) Integer.parseInt(kmhString);
+            } catch (NumberFormatException nfe) {
+                Main.trace(nfe);
+            }
         }
 
@@ -94,5 +102,7 @@
                 int mph = Integer.parseInt(mphString);
                 return KM_PER_MILE * mph;
-            } catch (NumberFormatException nfe) {}
+            } catch (NumberFormatException nfe) {
+                Main.trace(nfe);
+            }
         }
 
@@ -115,5 +125,5 @@
      * @return  measure in m; null if value had syntax errors
      */
-    public static final Float parseMeasure(String value) {
+    public static Float parseMeasure(String value) {
 
         /* try numeric measure (implied m) */
@@ -147,5 +157,5 @@
             String miString = miMatcher.group(1);
             float mi = parseOsmDecimal(miString, false);
-            return (float)(M_PER_MI * mi);
+            return (float) (M_PER_MI * mi);
         }
 
@@ -160,7 +170,9 @@
                 int inches = Integer.parseInt(inchesString);
                 if (feet >= 0 && inches >= 0 && inches < 12) {
-                    return (float)(M_PER_INCH * (12 * feet + inches));
+                    return (float) (M_PER_INCH * (12 * feet + inches));
                 }
-            } catch (NumberFormatException nfe) {}
+            } catch (NumberFormatException nfe) {
+                Main.trace(nfe);
+            }
         }
 
@@ -207,5 +219,5 @@
      * @return  incline in percents; null if value had syntax errors
      */
-    public static final Float parseIncline(String value) {
+    public static Float parseIncline(String value) {
 
         Matcher inclineMatcher = INCLINE_PATTERN.matcher(value);
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/ColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/ColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/ColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -15,5 +16,5 @@
      * @param edge  GraphNode to determine the color for; != null
      */
-    public Color getNodeColor(GraphNode node);
+    Color getNodeColor(GraphNode node);
 
     /**
@@ -21,5 +22,4 @@
      * @param segment  segment to determine the color for; != null
      */
-    public Color getSegmentColor(Segment segment);
-
+    Color getSegmentColor(Segment segment);
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/DefaultNodePositioner.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/DefaultNodePositioner.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/DefaultNodePositioner.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -11,4 +12,5 @@
 public class DefaultNodePositioner implements NodePositioner {
 
+    @Override
     public LatLonCoords getPosition(GraphNode node) {
 
@@ -16,5 +18,5 @@
 
         if (2 >= segmentNode.getInboundSegments().size()
-                + segmentNode.getOutboundSegments().size() ) {
+                + segmentNode.getOutboundSegments().size()) {
 
             return new LatLonCoords(
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/EndNodeColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/EndNodeColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/EndNodeColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -22,8 +23,10 @@
     }
 
+    @Override
     public Color getNodeColor(GraphNode node) {
         return GraphUtil.isEndNode(node) ? endNodeColor : nodeColor;
     }
 
+    @Override
     public Color getSegmentColor(Segment segment) {
         return segmentColor;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -42,4 +43,5 @@
     }
 
+    @Override
     public Color getSegmentColor(Segment segment) {
         assert segment != null;
@@ -50,5 +52,5 @@
             if (propertyClass.isInstance(property)) {
                 @SuppressWarnings("unchecked") //has been checked using isInstance
-                RoadPropertyType<Float> floatProperty = (RoadPropertyType<Float>)property;
+                RoadPropertyType<Float> floatProperty = (RoadPropertyType<Float>) property;
                 propertyValue = segment.getPropertyValue(floatProperty);
                 break;
@@ -63,9 +65,8 @@
     }
 
+    @Override
     public Color getNodeColor(GraphNode node) {
 
         List<Color> segmentColors = new ArrayList<>();
-
-
 
         for (GraphEdge edge : node.getInboundEdges()) {
@@ -158,5 +159,5 @@
         float weightPerColor = 1.0f / colors.size();
 
-        Color average = new Color(0,0,0);
+        Color average = new Color(0, 0, 0);
 
         for (Color color : colors) {
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/InclineColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/InclineColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/InclineColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/LatLonCoords.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/LatLonCoords.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/LatLonCoords.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxheightColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxheightColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxheightColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxspeedColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxspeedColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxspeedColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxweightColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxweightColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/MaxweightColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NodePositioner.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NodePositioner.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NodePositioner.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NonMovingNodePositioner.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NonMovingNodePositioner.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/NonMovingNodePositioner.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -5,4 +6,5 @@
 public class NonMovingNodePositioner implements NodePositioner {
 
+    @Override
     public LatLonCoords getPosition(GraphNode node) {
         return new LatLonCoords(
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/SingleColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/SingleColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/core/visualisation/SingleColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
@@ -20,8 +21,10 @@
     }
 
+    @Override
     public Color getNodeColor(GraphNode node) {
         return nodeColor;
     }
 
+    @Override
     public Color getSegmentColor(Segment segment) {
         return segmentColor;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/GraphViewPlugin.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/GraphViewPlugin.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/GraphViewPlugin.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin;
 
@@ -175,7 +176,4 @@
      * @return ruleset read from a source as specified by preferences, null if the preferences
      *         don't specify a ruleset source
-     * @throws AccessRulesetSyntaxException
-     * @throws IOException
-     * @throws FileNotFoundException
      */
     private AccessRuleset getAccessRuleset()
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMDataSource.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMDataSource.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMDataSource.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.data;
 
@@ -26,40 +27,50 @@
 public class JOSMDataSource implements DataSource<Node, Way, Relation, RelationMember> {
 
+    @Override
     public double getLat(Node node) {
         return node.getCoor().lat();
     }
 
+    @Override
     public double getLon(Node node) {
         return node.getCoor().lon();
     }
 
+    @Override
     public Iterable<RelationMember> getMembers(Relation relation) {
         return relation.getMembers();
     }
 
+    @Override
     public Iterable<Node> getNodes(Way way) {
         return new FilteredOsmPrimitiveIterable<>(way.getNodes());
     }
 
+    @Override
     public Iterable<Node> getNodes() {
         return new FilteredOsmPrimitiveIterable<>(Main.getLayerManager().getEditDataSet().getNodes());
     }
 
+    @Override
     public Iterable<Relation> getRelations() {
         return new FilteredRelationIterable(Main.getLayerManager().getEditDataSet().getRelations());
     }
 
+    @Override
     public Iterable<Way> getWays() {
         return new FilteredOsmPrimitiveIterable<>(Main.getLayerManager().getEditDataSet().getWays());
     }
 
+    @Override
     public TagGroup getTagsN(Node node) {
         return getTags(node);
     }
 
+    @Override
     public TagGroup getTagsW(Way way) {
         return getTags(way);
     }
 
+    @Override
     public TagGroup getTagsR(Relation relation) {
         return getTags(relation);
@@ -74,20 +85,25 @@
     }
 
+    @Override
     public Object getMember(RelationMember member) {
         return member.getMember();
     }
 
+    @Override
     public String getRole(RelationMember member) {
         return member.getRole();
     }
 
+    @Override
     public boolean isNMember(RelationMember member) {
         return member.getMember() instanceof Node;
     }
 
+    @Override
     public boolean isWMember(RelationMember member) {
         return member.getMember() instanceof Way;
     }
 
+    @Override
     public boolean isRMember(RelationMember member) {
         return member.getMember() instanceof Relation;
@@ -116,4 +132,5 @@
 
         /** returns an iterator. The iterator does not support {@link Iterator#remove()}. */
+        @Override
         public Iterator<P> iterator() {
             return new FilteredIterator(originalIterable.iterator());
@@ -126,13 +143,15 @@
             private P next;
 
-            public FilteredIterator(Iterator<P> originalIterator) {
+            FilteredIterator(Iterator<P> originalIterator) {
                 this.originalIterator = originalIterator;
                 updateNext();
             }
 
+            @Override
             public boolean hasNext() {
                 return next != null;
             }
 
+            @Override
             public P next() {
                 if (next != null) {
@@ -145,4 +164,5 @@
             }
 
+            @Override
             public void remove() {
                 throw new UnsupportedOperationException();
@@ -192,11 +212,14 @@
         private final String role;
         private final Object member;
-        public RelationMemberImpl(org.openstreetmap.josm.data.osm.RelationMember originalMember) {
+
+        RelationMemberImpl(org.openstreetmap.josm.data.osm.RelationMember originalMember) {
             this.role = originalMember.getRole();
             this.member = originalMember.getMember();
         }
+
         public String getRole() {
             return role;
         }
+
         public Object getMember() {
             return member;
@@ -206,8 +229,10 @@
     private final Set<DataSourceObserver> observers = new HashSet<>();
 
+    @Override
     public void addObserver(DataSourceObserver observer) {
         observers.add(observer);
     }
 
+    @Override
     public void deleteObserver(DataSourceObserver observer) {
         observers.remove(observer);
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMTransitionStructure.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMTransitionStructure.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/data/JOSMTransitionStructure.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.data;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/AccessParameterDialog.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/AccessParameterDialog.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/AccessParameterDialog.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.dialogs;
 
@@ -39,6 +40,6 @@
 public class AccessParameterDialog extends JDialog {
 
-    public static interface BookmarkAction {
-        public void execute(String name, PreferenceAccessParameters parameters);
+    public interface BookmarkAction {
+        void execute(String name, PreferenceAccessParameters parameters);
     }
 
@@ -66,5 +67,5 @@
         private final JTextField bookmarkNameTextField;
 
-        public BookmarkNamePanel(String initialName) {
+        BookmarkNamePanel(String initialName) {
             super();
             this.setBorder(BorderFactory.createTitledBorder(tr("Bookmark name")));
@@ -101,5 +102,5 @@
         private final JTextField accessClassTextField;
 
-        public AccessClassPanel(PreferenceAccessParameters initialParameters) {
+        AccessClassPanel(PreferenceAccessParameters initialParameters) {
             super();
             this.setBorder(BorderFactory.createTitledBorder(tr("Access class")));
@@ -134,5 +135,5 @@
             new EnumMap<>(AccessType.class);
 
-        public AccessTypesPanel(PreferenceAccessParameters initialParameters) {
+        AccessTypesPanel(PreferenceAccessParameters initialParameters) {
             super();
             this.setBorder(BorderFactory.createTitledBorder(tr("Access types")));
@@ -171,5 +172,5 @@
             new HashMap<>();
 
-        public VehiclePropertiesPanel(PreferenceAccessParameters initialParameters) {
+        VehiclePropertiesPanel(PreferenceAccessParameters initialParameters) {
             super();
             this.setBorder(BorderFactory.createTitledBorder(tr("Vehicle properties")));
@@ -220,8 +221,6 @@
         private JTextField tracktypeTextField;
 
-        public RoadQualityPanel(PreferenceAccessParameters initialParameters) {
-            super();
+        RoadQualityPanel(PreferenceAccessParameters initialParameters) {
             this.setBorder(BorderFactory.createTitledBorder(tr("Road requirements")));
-
 
             this.setLayout(new GridLayout(4, 2));
@@ -338,10 +337,11 @@
     private class OkCancelPanel extends JPanel {
 
-        public OkCancelPanel() {
+        OkCancelPanel() {
 
             new BoxLayout(this, BoxLayout.X_AXIS);
 
-            JButton okButton = new JButton(existingBookmark?tr("Change bookmark"):tr("Create bookmark"));
+            JButton okButton = new JButton(existingBookmark ? tr("Change bookmark") : tr("Create bookmark"));
             okButton.addActionListener(new ActionListener() {
+                @Override
                 public void actionPerformed(ActionEvent e) {
                     String bookmarkName = bookmarkNamePanel.getBookmarkName();
@@ -359,4 +359,5 @@
             JButton cancelButton = new JButton(tr("Cancel"));
             cancelButton.addActionListener(new ActionListener() {
+                @Override
                 public void actionPerformed(ActionEvent e) {
                     AccessParameterDialog.this.dispose();
@@ -364,7 +365,5 @@
             });
             this.add(cancelButton);
-
-        }
-
+        }
     }
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewDialog.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewDialog.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewDialog.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.dialogs;
 
@@ -27,4 +28,5 @@
 import javax.swing.JPanel;
 
+import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.gui.SideButton;
 import org.openstreetmap.josm.gui.dialogs.ToggleDialog;
@@ -68,5 +70,5 @@
 
         super(tr("Graph View Dialog"), "graphview",
-                tr("Open the dialog for graph view configuration."), (Shortcut)null, HEIGHT);
+                tr("Open the dialog for graph view configuration."), (Shortcut) null, HEIGHT);
 
         this.preferences = GraphViewPreferences.getInstance();
@@ -154,4 +156,5 @@
         createLayout(selectionPanel, true, Arrays.asList(new SideButton[] {
             new SideButton(new AbstractAction(tr("Create/update graph")) {
+                @Override
                 public void actionPerformed(ActionEvent e) {
                     plugin.createGraphViewLayer();
@@ -165,4 +168,5 @@
 
     private final ActionListener rulesetActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
             if (rulesetComboBox.getSelectedItem() != null) {
@@ -186,6 +190,7 @@
 
     private final ActionListener bookmarkActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
-            String selectedBookmarkName = (String)bookmarkComboBox.getSelectedItem();
+            String selectedBookmarkName = (String) bookmarkComboBox.getSelectedItem();
             if (selectedBookmarkName != null) {
                 preferences.setCurrentParameterBookmarkName(selectedBookmarkName);
@@ -197,7 +202,8 @@
 
     private final ActionListener colorSchemeActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
             assert availableColorSchemes.containsKey(colorSchemeComboBox.getSelectedItem());
-            String colorSchemeLabel = (String)colorSchemeComboBox.getSelectedItem();
+            String colorSchemeLabel = (String) colorSchemeComboBox.getSelectedItem();
             preferences.setCurrentColorScheme(availableColorSchemes.get(colorSchemeLabel));
             preferences.distributeChanges();
@@ -206,4 +212,5 @@
     };
 
+    @Override
     public void update(Observable observable, Object param) {
         if (observable == preferences) {
@@ -223,5 +230,5 @@
 
             rulesetComboBox.removeAllItems();
-            for (int i=0; i < InternalRuleset.values().length; i++) {
+            for (int i = 0; i < InternalRuleset.values().length; i++) {
                 InternalRuleset ruleset = InternalRuleset.values()[i];
                 rulesetComboBox.addItem(ruleset.toString());
@@ -249,4 +256,5 @@
                     } catch (IOException ioe) {
                         //don't add to rulesetFiles
+                        Main.debug(ioe);
                     }
                 }
@@ -256,5 +264,5 @@
 
             rulesetComboBox.removeAllItems();
-            for (int i=0; i < rulesetFiles.size(); i++) {
+            for (int i = 0; i < rulesetFiles.size(); i++) {
                 File rulesetFile = rulesetFiles.get(i);
                 rulesetComboBox.addItem(rulesetFile.getName());
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewPreferenceEditor.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewPreferenceEditor.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/dialogs/GraphViewPreferenceEditor.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.dialogs;
 
@@ -76,4 +77,5 @@
     }
 
+    @Override
     public void addGui(PreferenceTabbedPane gui) {
 
@@ -203,65 +205,66 @@
     private JPanel createVisualizationPanel() {
 
-    	JPanel visualizationPanel = new JPanel();
-    	visualizationPanel.setBorder(BorderFactory.createTitledBorder(tr("Visualization")));
-    	visualizationPanel.setLayout(new BoxLayout(visualizationPanel, BoxLayout.Y_AXIS));
-
-    	separateDirectionsCheckBox = new JCheckBox(tr("Draw directions separately"));
-    	separateDirectionsCheckBox.setSelected(GraphViewPreferences.getInstance().getSeparateDirections());
-    	visualizationPanel.add(separateDirectionsCheckBox);
-
-    	{ // create color chooser panel
-
-    		JPanel colorPanel = new JPanel();
-    		colorPanel.setLayout(new GridLayout(3, 2));
-
-    		Color nodeColor = GraphViewPreferences.getInstance().getNodeColor();
-
-    		nodeColorButton = new JButton(tr("Node color"));
-    		nodeColorButton.addActionListener(chooseNodeColorActionListener);
-    		colorPanel.add(nodeColorButton);
-    		nodeColorField = new JPanel();
-    		nodeColorField.setBackground(nodeColor);
-    		colorPanel.add(nodeColorField);
-
-    		Color segmentColor = GraphViewPreferences.getInstance().getSegmentColor();
-
-    		segmentColorButton = new JButton(tr("Arrow color"));
-    		segmentColorButton.addActionListener(chooseSegmentColorActionListener);
-    		colorPanel.add(segmentColorButton);
-    		segmentColorField = new JPanel();
-    		segmentColorField.setBackground(segmentColor);
-    		colorPanel.add(segmentColorField);
-
-    		Color arrowheadFillColor = GraphViewPreferences.getInstance().getArrowheadFillColor();
-
-    		arrowheadFillColorButton = new JButton(tr("Arrowhead fill color"));
-    		arrowheadFillColorButton.addActionListener(chooseArrowheadFillColorActionListener);
-    		colorPanel.add(arrowheadFillColorButton);
-    		arrowheadFillColorField = new JPanel();
-    		arrowheadFillColorField.setBackground(arrowheadFillColor);
-    		colorPanel.add(arrowheadFillColorField);
-
-    		visualizationPanel.add(colorPanel);
-
-    	}
-
-    	arrowheadPlacementSlider = new JSlider(0, 100);
-    	arrowheadPlacementSlider.setToolTipText(tr("Arrowhead placement"));
-    	arrowheadPlacementSlider.setMajorTickSpacing(10);
-    	arrowheadPlacementSlider.setPaintTicks(true);
-    	arrowheadPlacementSlider.setName("name");
-    	arrowheadPlacementSlider.setLabelTable(null);
-    	arrowheadPlacementSlider.setValue((int)Math.round(
-    			100 * GraphViewPreferences.getInstance().getArrowheadPlacement()));
-    	arrowheadPlacementSlider.addChangeListener(arrowheadPlacementChangeListener);
-    	visualizationPanel.add(arrowheadPlacementSlider);
-
-    	arrowPreviewPanel = new ArrowPreviewPanel();
-    	visualizationPanel.add(arrowPreviewPanel);
-
-    	return visualizationPanel;
-    }
-
+        JPanel visualizationPanel = new JPanel();
+        visualizationPanel.setBorder(BorderFactory.createTitledBorder(tr("Visualization")));
+        visualizationPanel.setLayout(new BoxLayout(visualizationPanel, BoxLayout.Y_AXIS));
+
+        separateDirectionsCheckBox = new JCheckBox(tr("Draw directions separately"));
+        separateDirectionsCheckBox.setSelected(GraphViewPreferences.getInstance().getSeparateDirections());
+        visualizationPanel.add(separateDirectionsCheckBox);
+
+        { // create color chooser panel
+
+            JPanel colorPanel = new JPanel();
+            colorPanel.setLayout(new GridLayout(3, 2));
+
+            Color nodeColor = GraphViewPreferences.getInstance().getNodeColor();
+
+            nodeColorButton = new JButton(tr("Node color"));
+            nodeColorButton.addActionListener(chooseNodeColorActionListener);
+            colorPanel.add(nodeColorButton);
+            nodeColorField = new JPanel();
+            nodeColorField.setBackground(nodeColor);
+            colorPanel.add(nodeColorField);
+
+            Color segmentColor = GraphViewPreferences.getInstance().getSegmentColor();
+
+            segmentColorButton = new JButton(tr("Arrow color"));
+            segmentColorButton.addActionListener(chooseSegmentColorActionListener);
+            colorPanel.add(segmentColorButton);
+            segmentColorField = new JPanel();
+            segmentColorField.setBackground(segmentColor);
+            colorPanel.add(segmentColorField);
+
+            Color arrowheadFillColor = GraphViewPreferences.getInstance().getArrowheadFillColor();
+
+            arrowheadFillColorButton = new JButton(tr("Arrowhead fill color"));
+            arrowheadFillColorButton.addActionListener(chooseArrowheadFillColorActionListener);
+            colorPanel.add(arrowheadFillColorButton);
+            arrowheadFillColorField = new JPanel();
+            arrowheadFillColorField.setBackground(arrowheadFillColor);
+            colorPanel.add(arrowheadFillColorField);
+
+            visualizationPanel.add(colorPanel);
+
+        }
+
+        arrowheadPlacementSlider = new JSlider(0, 100);
+        arrowheadPlacementSlider.setToolTipText(tr("Arrowhead placement"));
+        arrowheadPlacementSlider.setMajorTickSpacing(10);
+        arrowheadPlacementSlider.setPaintTicks(true);
+        arrowheadPlacementSlider.setName("name");
+        arrowheadPlacementSlider.setLabelTable(null);
+        arrowheadPlacementSlider.setValue((int) Math.round(
+                100 * GraphViewPreferences.getInstance().getArrowheadPlacement()));
+        arrowheadPlacementSlider.addChangeListener(arrowheadPlacementChangeListener);
+        visualizationPanel.add(arrowheadPlacementSlider);
+
+        arrowPreviewPanel = new ArrowPreviewPanel();
+        visualizationPanel.add(arrowPreviewPanel);
+
+        return visualizationPanel;
+    }
+
+    @Override
     public boolean ok() {
 
@@ -273,5 +276,5 @@
         preferences.setParameterBookmarks(parameterBookmarks);
 
-        String selectedBookmarkName = (String)bookmarkComboBox.getSelectedItem();
+        String selectedBookmarkName = (String) bookmarkComboBox.getSelectedItem();
         preferences.setCurrentParameterBookmarkName(selectedBookmarkName);
 
@@ -283,5 +286,5 @@
 
         preferences.setArrowheadPlacement(
-        		arrowheadPlacementSlider.getValue() / 100f);
+                arrowheadPlacementSlider.getValue() / 100f);
 
         preferences.distributeChanges();
@@ -291,4 +294,5 @@
 
     private final ActionListener internalRulesetActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
             updateRulesetPanel();
@@ -297,4 +301,5 @@
 
     private final ActionListener selectRulesetFolderActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
 
@@ -319,4 +324,5 @@
 
     private final ActionListener createVehicleActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
 
@@ -331,4 +337,5 @@
                     defaultBookmarkParameters,
                     new BookmarkAction() {
+                        @Override
                         public void execute(String name, PreferenceAccessParameters parameters) {
                             parameterBookmarks.put(name, parameters);
@@ -342,8 +349,9 @@
 
     private final ActionListener editVehicleActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
             if (bookmarkComboBox.getSelectedItem() != null) {
 
-                final String selectedBookmarkName = (String)bookmarkComboBox.getSelectedItem();
+                final String selectedBookmarkName = (String) bookmarkComboBox.getSelectedItem();
                 PreferenceAccessParameters parameters =
                     parameterBookmarks.get(selectedBookmarkName);
@@ -363,4 +371,5 @@
                         parameters,
                         new BookmarkAction() {
+                            @Override
                             public void execute(String name, PreferenceAccessParameters parameters) {
                                 parameterBookmarks.remove(selectedBookmarkName);
@@ -372,13 +381,13 @@
                 apd.setVisible(true);
             }
-
         }
     };
 
     private final ActionListener deleteVehicleActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
             if (bookmarkComboBox.getSelectedItem() != null) {
 
-                String selectedBookmarkName = (String)bookmarkComboBox.getSelectedItem();
+                String selectedBookmarkName = (String) bookmarkComboBox.getSelectedItem();
 
                 int userChoice = JOptionPane.showConfirmDialog(
@@ -392,5 +401,4 @@
                     updateVehiclePanel(null);
                 }
-
             }
         }
@@ -398,4 +406,5 @@
 
     private final ActionListener restoreVehicleDefaultsActionListener = new ActionListener() {
+        @Override
         public void actionPerformed(ActionEvent e) {
 
@@ -418,14 +427,15 @@
 
     private final ActionListener chooseNodeColorActionListener = new ActionListener() {
-        public void actionPerformed(ActionEvent e) {
-
-        	Color selectedColor = JColorChooser.showDialog(
-        			preferencePanel, tr("Choose node color"), nodeColorField.getBackground());
-
-        	if (selectedColor != null) {
-        		nodeColorField.setBackground(selectedColor);
-        	}
-
-        	arrowPreviewPanel.repaint();
+        @Override
+        public void actionPerformed(ActionEvent e) {
+
+            Color selectedColor = JColorChooser.showDialog(
+                    preferencePanel, tr("Choose node color"), nodeColorField.getBackground());
+
+            if (selectedColor != null) {
+                nodeColorField.setBackground(selectedColor);
+            }
+
+            arrowPreviewPanel.repaint();
 
         }
@@ -433,14 +443,15 @@
 
     private final ActionListener chooseSegmentColorActionListener = new ActionListener() {
-        public void actionPerformed(ActionEvent e) {
-
-        	Color selectedColor = JColorChooser.showDialog(
-        			preferencePanel, tr("Choose arrow color"), segmentColorField.getBackground());
-
-        	if (selectedColor != null) {
-        		segmentColorField.setBackground(selectedColor);
-        	}
-
-        	arrowPreviewPanel.repaint();
+        @Override
+        public void actionPerformed(ActionEvent e) {
+
+            Color selectedColor = JColorChooser.showDialog(
+                    preferencePanel, tr("Choose arrow color"), segmentColorField.getBackground());
+
+            if (selectedColor != null) {
+                segmentColorField.setBackground(selectedColor);
+            }
+
+            arrowPreviewPanel.repaint();
 
         }
@@ -448,14 +459,15 @@
 
     private final ActionListener chooseArrowheadFillColorActionListener = new ActionListener() {
-        public void actionPerformed(ActionEvent e) {
-
-        	Color selectedColor = JColorChooser.showDialog(
-        			preferencePanel, tr("Choose arrowhead fill color"), segmentColorField.getBackground());
-
-        	if (selectedColor != null) {
-        		arrowheadFillColorField.setBackground(selectedColor);
-        	}
-
-        	arrowPreviewPanel.repaint();
+        @Override
+        public void actionPerformed(ActionEvent e) {
+
+            Color selectedColor = JColorChooser.showDialog(
+                    preferencePanel, tr("Choose arrowhead fill color"), segmentColorField.getBackground());
+
+            if (selectedColor != null) {
+                arrowheadFillColorField.setBackground(selectedColor);
+            }
+
+            arrowPreviewPanel.repaint();
 
         }
@@ -463,6 +475,7 @@
 
     private final ChangeListener arrowheadPlacementChangeListener = new ChangeListener() {
-    	public void stateChanged(ChangeEvent e) {
-        	arrowPreviewPanel.repaint();
+        @Override
+        public void stateChanged(ChangeEvent e) {
+            arrowPreviewPanel.repaint();
         }
     };
@@ -493,39 +506,35 @@
         editBookmarkButton.setEnabled(parameterBookmarks.size() > 0);
         deleteBookmarkButton.setEnabled(parameterBookmarks.size() > 0);
-
     }
 
     private class ArrowPreviewPanel extends JPanel {
 
-    	public ArrowPreviewPanel() {
-    		setPreferredSize(new Dimension(100, 50));
-			setBackground(Color.DARK_GRAY);
-		}
-
-    	@Override
-    	public void paint(Graphics g) {
-
-    		super.paint(g);
-
-    		Graphics2D g2D = (Graphics2D)g;
-
-    		Point p1 = new Point(15, this.getHeight() / 2);
-    		Point p2 = new Point(this.getWidth()-15, this.getHeight() / 2);
-
-    		g2D.setStroke(new BasicStroke(3, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
-    		g2D.setColor(segmentColorField.getBackground());
-    		g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
-
-    		GraphViewLayer.paintNode(g, p1, nodeColorField.getBackground());
-    		GraphViewLayer.paintNode(g, p2, nodeColorField.getBackground());
-
-    		GraphViewLayer.paintArrowhead(g2D, p1, p2,
-    				arrowheadPlacementSlider.getValue() / 100.0,
-    				segmentColorField.getBackground(),
-    				arrowheadFillColorField.getBackground());
-
-    	}
-
-    }
-
+        ArrowPreviewPanel() {
+            setPreferredSize(new Dimension(100, 50));
+            setBackground(Color.DARK_GRAY);
+        }
+
+        @Override
+        public void paint(Graphics g) {
+
+            super.paint(g);
+
+            Graphics2D g2D = (Graphics2D) g;
+
+            Point p1 = new Point(15, this.getHeight() / 2);
+            Point p2 = new Point(this.getWidth()-15, this.getHeight() / 2);
+
+            g2D.setStroke(new BasicStroke(3, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND));
+            g2D.setColor(segmentColorField.getBackground());
+            g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
+
+            GraphViewLayer.paintNode(g, p1, nodeColorField.getBackground());
+            GraphViewLayer.paintNode(g, p2, nodeColorField.getBackground());
+
+            GraphViewLayer.paintArrowhead(g2D, p1, p2,
+                    arrowheadPlacementSlider.getValue() / 100.0,
+                    segmentColorField.getBackground(),
+                    arrowheadFillColorField.getBackground());
+        }
+    }
 }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/GraphViewLayer.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/GraphViewLayer.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/GraphViewLayer.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.layer;
 
@@ -118,5 +119,5 @@
     /** sets the arrowhead placement (relative offset from edge start) */
     public void setArrowheadPlacement(double arrowheadPlacement) {
-    	assert arrowheadPlacement >= 0 && arrowheadPlacement <= 1;
+        assert arrowheadPlacement >= 0 && arrowheadPlacement <= 1;
         this.arrowheadPlacement = arrowheadPlacement;
         invalidate();
@@ -149,11 +150,11 @@
     }
 
-	public static void paintNode(final Graphics g, Point p, Color color) {
-		g.setColor(color);
+    public static void paintNode(final Graphics g, Point p, Color color) {
+        g.setColor(color);
         g.fillOval(p.x - NODE_RADIUS, p.y - NODE_RADIUS, 2 * NODE_RADIUS, 2 * NODE_RADIUS);
-	}
+    }
 
     private void paintGraphEdge(final GraphEdge e, final Graphics2D g2D, final MapView mv,
-    		boolean drawLine, boolean drawDirectionIndicator) {
+            boolean drawLine, boolean drawDirectionIndicator) {
 
         if (!CONNECT_ALL_NODE_PAIRS && GraphViewPreferences.getInstance().getSeparateDirections()) {
@@ -200,5 +201,5 @@
 
                 if (drawLine) {
-                	g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
+                    g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
                 }
 
@@ -207,5 +208,5 @@
         } else {
 
-        	Color color = GraphViewPreferences.getInstance().getSegmentColor();
+            Color color = GraphViewPreferences.getInstance().getSegmentColor();
             g2D.setColor(color);
 
@@ -214,5 +215,5 @@
 
             if (drawLine) {
-            	g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
+                g2D.draw(new Line2D.Float(p1.x, p1.y, p2.x, p2.y));
             }
 
@@ -232,47 +233,46 @@
             if (drawDirectionIndicator) {
 
-	            paintArrowhead(g2D, p1, p2, arrowheadPlacement, null,
-	            		GraphViewPreferences.getInstance().getArrowheadFillColor());
-
-            }
-
-        }
-    }
-
-	public static void paintArrowhead(Graphics2D g2D,
-			Point p1, Point p2, Double arrowheadPlacement2,
-			Color casingColor, Color fillColor) {
-
-		Point pTip = new Point(
-				(int)(p1.x + arrowheadPlacement2 * (p2.x - p1.x)),
-				(int)(p1.y + arrowheadPlacement2 * (p2.y - p1.y)));
-
-		double angle = angleFromXAxis(p1, p2); // angle between x-axis and [p1,p2]
-
-		{ //draw head shape
-
-			if (casingColor != null) {
-				g2D.setColor(casingColor);
-			}
-
-		    Shape head = ARROW_HEAD;
-		    head = AffineTransform.getRotateInstance(angle).createTransformedShape(head);
-		    head = AffineTransform.getTranslateInstance(pTip.x, pTip.y).createTransformedShape(head);
-		    g2D.fill(head);
-		}
-
-		{ //draw head core shape
-
-			if (fillColor != null) {
-				g2D.setColor(fillColor);
-			}
-
-		    Shape headCore = ARROW_HEAD_CORE;
-		    headCore = AffineTransform.getRotateInstance(angle).createTransformedShape(headCore);
-		    headCore = AffineTransform.getTranslateInstance(pTip.x, pTip.y).createTransformedShape(headCore);
-		    g2D.fill(headCore);
-		}
-
-	}
+                paintArrowhead(g2D, p1, p2, arrowheadPlacement, null,
+                        GraphViewPreferences.getInstance().getArrowheadFillColor());
+
+            }
+
+        }
+    }
+
+    public static void paintArrowhead(Graphics2D g2D,
+            Point p1, Point p2, Double arrowheadPlacement2,
+            Color casingColor, Color fillColor) {
+
+        Point pTip = new Point(
+                (int) (p1.x + arrowheadPlacement2 * (p2.x - p1.x)),
+                (int) (p1.y + arrowheadPlacement2 * (p2.y - p1.y)));
+
+        double angle = angleFromXAxis(p1, p2); // angle between x-axis and [p1,p2]
+
+        { //draw head shape
+
+            if (casingColor != null) {
+                g2D.setColor(casingColor);
+            }
+
+            Shape head = ARROW_HEAD;
+            head = AffineTransform.getRotateInstance(angle).createTransformedShape(head);
+            head = AffineTransform.getTranslateInstance(pTip.x, pTip.y).createTransformedShape(head);
+            g2D.fill(head);
+        }
+
+        { //draw head core shape
+
+            if (fillColor != null) {
+                g2D.setColor(fillColor);
+            }
+
+            Shape headCore = ARROW_HEAD_CORE;
+            headCore = AffineTransform.getRotateInstance(angle).createTransformedShape(headCore);
+            headCore = AffineTransform.getTranslateInstance(pTip.x, pTip.y).createTransformedShape(headCore);
+            g2D.fill(headCore);
+        }
+    }
 
     private Point getNodePoint(GraphNode node, MapView mv) {
@@ -311,8 +311,10 @@
         return nodePoint;
     }
+
     private static Point getNodePoint(SegmentNode node, MapView mv) {
         LatLonCoords coords = new LatLonCoords(node.getLat(), node.getLon());
         return getNodePoint(coords, mv);
     }
+
     private static Point getNodePoint(LatLonCoords coords, MapView mv) {
         LatLon latLon = new LatLon(coords.getLat(), coords.getLon());
@@ -333,9 +335,9 @@
         final float vecY = p2.y - p1.y;
 
-        final float vecLength = (float)Math.sqrt(vecX*vecX + vecY*vecY);
+        final float vecLength = (float) Math.sqrt(vecX*vecX + vecY*vecY);
 
         final float dotProductVecAxis = vecX;
 
-        float angle = (float)Math.acos(dotProductVecAxis / vecLength);
+        float angle = (float) Math.acos(dotProductVecAxis / vecLength);
 
         if (p2.y < p1.y) {
@@ -361,5 +363,5 @@
 
             for (GraphEdge e : wayGraph.getEdges()) {
-            	//draw arrowheads last to make sure they end up on top
+                //draw arrowheads last to make sure they end up on top
                 paintGraphEdge(e, g, mv, false, true);
             }
@@ -404,4 +406,5 @@
     }
 
+    @Override
     public void update(WayGraph wayGraph) {
         assert wayGraph == this.wayGraph;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/PreferencesColorScheme.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/PreferencesColorScheme.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/layer/PreferencesColorScheme.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.layer;
 
@@ -19,8 +20,10 @@
     }
 
+    @Override
     public Color getNodeColor(GraphNode node) {
         return preferences.getNodeColor();
     }
 
+    @Override
     public Color getSegmentColor(Segment segment) {
         return preferences.getSegmentColor();
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferenceDefaults.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferenceDefaults.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferenceDefaults.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.preferences;
 
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferences.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferences.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/GraphViewPreferences.java	(revision 32620)
@@ -1,5 +1,4 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.preferences;
-
-import static org.openstreetmap.josm.tools.I18n.marktr;
 
 import static org.openstreetmap.josm.plugins.graphview.core.property.VehiclePropertyTypes.AXLELOAD;
@@ -13,4 +12,5 @@
 import static org.openstreetmap.josm.plugins.graphview.core.property.VehiclePropertyTypes.WEIGHT;
 import static org.openstreetmap.josm.plugins.graphview.core.property.VehiclePropertyTypes.WIDTH;
+import static org.openstreetmap.josm.tools.I18n.marktr;
 
 import java.awt.Color;
@@ -42,5 +42,5 @@
  * because this class isn't registered as a preference listener.
  */
-public class GraphViewPreferences extends Observable {
+public final class GraphViewPreferences extends Observable {
 
     private static GraphViewPreferences instance;
@@ -48,6 +48,4 @@
     /**
      * returns the single instance of GraphViewPreferences.
-     * @param ignoreSyntaxErrors
-     * @return
      */
     public static GraphViewPreferences getInstance() {
@@ -78,4 +76,5 @@
         return useInternalRulesets;
     }
+
     public synchronized void setUseInternalRulesets(boolean useInternalRulesets) {
         this.useInternalRulesets = useInternalRulesets;
@@ -85,4 +84,5 @@
         return rulesetFolder;
     }
+
     public synchronized void setRulesetFolder(File rulesetFolder) {
         this.rulesetFolder = rulesetFolder;
@@ -92,4 +92,5 @@
         return currentRulesetFile;
     }
+
     public synchronized void setCurrentRulesetFile(File currentRulesetFile) {
         this.currentRulesetFile = currentRulesetFile;
@@ -99,4 +100,5 @@
         return currentInternalRuleset;
     }
+
     public synchronized void setCurrentInternalRuleset(InternalRuleset internalRuleset) {
         this.currentInternalRuleset = internalRuleset;
@@ -141,4 +143,5 @@
         return Collections.unmodifiableMap(parameterBookmarks);
     }
+
     public synchronized void setParameterBookmarks(
             Map<String, PreferenceAccessParameters> parameterBookmarks) {
@@ -152,4 +155,5 @@
         return currentColorScheme;
     }
+
     public synchronized void setCurrentColorScheme(ColorScheme currentColorScheme) {
         this.currentColorScheme = currentColorScheme;
@@ -159,4 +163,5 @@
         return nodeColor;
     }
+
     public synchronized void setNodeColor(Color nodeColor) {
         this.nodeColor = nodeColor;
@@ -166,4 +171,5 @@
         return segmentColor;
     }
+
     public synchronized void setSegmentColor(Color segmentColor) {
         this.segmentColor = segmentColor;
@@ -171,13 +177,15 @@
 
     public synchronized Color getArrowheadFillColor() {
-		return arrowheadFillColor;
-	}
-	public synchronized void setArrowheadFillColor(Color arrowheadFillColor) {
-		this.arrowheadFillColor = arrowheadFillColor;
-	}
-
-	public synchronized boolean getSeparateDirections() {
+        return arrowheadFillColor;
+    }
+
+    public synchronized void setArrowheadFillColor(Color arrowheadFillColor) {
+        this.arrowheadFillColor = arrowheadFillColor;
+    }
+
+    public synchronized boolean getSeparateDirections() {
         return separateDirections;
     }
+
     public synchronized void setSeparateDirections(boolean separateDirections) {
         this.separateDirections = separateDirections;
@@ -185,6 +193,7 @@
 
     public synchronized double getArrowheadPlacement() {
-    	return arrowheadPlacement;
-    }
+        return arrowheadPlacement;
+    }
+
     public synchronized void setArrowheadPlacement(double arrowheadPlacement) {
         this.arrowheadPlacement = arrowheadPlacement;
@@ -315,5 +324,5 @@
         arrowheadPlacement = Main.pref.getDouble("graphview.arrowheadPlacement", 1.0);
         if (arrowheadPlacement < 0.0 || arrowheadPlacement >= 1.0) {
-        	arrowheadPlacement = 1.0;
+            arrowheadPlacement = 1.0;
         }
 
@@ -326,5 +335,4 @@
     private static final Map<VehiclePropertyType<?>, String> VEHICLE_PROPERTY_TYPE_NAME_MAP =
         new HashMap<>();
-
 
     static {
@@ -381,5 +389,5 @@
         }
 
-        if(stringBuilder.charAt(stringBuilder.length()-1) == ',') {
+        if (stringBuilder.charAt(stringBuilder.length()-1) == ',') {
             stringBuilder.deleteCharAt(stringBuilder.length()-1);
         }
@@ -398,5 +406,5 @@
         }
 
-        if(stringBuilder.charAt(stringBuilder.length()-1) == ',') {
+        if (stringBuilder.charAt(stringBuilder.length()-1) == ',') {
             stringBuilder.deleteCharAt(stringBuilder.length()-1);
         }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/InternalRuleset.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/InternalRuleset.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/InternalRuleset.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.preferences;
 
@@ -7,7 +8,9 @@
 
     private String resourceName;
-    private InternalRuleset(String resourceName) {
+
+    InternalRuleset(String resourceName) {
         this.resourceName = resourceName;
     }
+
     public String getResourceName() {
         return resourceName;
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/PreferenceAccessParameters.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/PreferenceAccessParameters.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/PreferenceAccessParameters.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.preferences;
 
@@ -22,8 +23,10 @@
     private final Map<VehiclePropertyType<?>, Object> vehiclePropertyValues;
 
+    @Override
     public String getAccessClass() {
         return accessClass;
     }
 
+    @Override
     public boolean getAccessTypeUsable(AccessType accessType) {
         assert accessType != null;
@@ -31,4 +34,5 @@
     }
 
+    @Override
     public Collection<VehiclePropertyType<?>> getAvailableVehicleProperties() {
         return vehiclePropertyValues.keySet();
@@ -44,9 +48,10 @@
      *                         {@link VehiclePropertyType#isValidValue(Object)} method.
      */
+    @Override
     public <D> D getVehiclePropertyValue(VehiclePropertyType<D> vehicleProperty) {
         assert vehicleProperty != null;
 
         @SuppressWarnings("unchecked")
-        D value = (D)vehiclePropertyValues.get(vehicleProperty);
+        D value = (D) vehiclePropertyValues.get(vehicleProperty);
         return value;
     }
Index: applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/VehiclePropertyStringParser.java
===================================================================
--- applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/VehiclePropertyStringParser.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/src/org/openstreetmap/josm/plugins/graphview/plugin/preferences/VehiclePropertyStringParser.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.plugin.preferences;
 
@@ -9,4 +10,5 @@
 import java.util.List;
 
+import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.plugins.graphview.core.property.VehiclePropertyType;
 import org.openstreetmap.josm.plugins.graphview.core.property.VehiclePropertyTypes;
@@ -53,7 +55,4 @@
      * returns the value represented by the propertyValueString
      *
-     * @throws PropertyValueSyntaxException  if the string has syntax errors that prevent parsing
-     * @throws InvalidParameterException     if an unknown property type was passed
-     *
      * @param propertyType         type of the property; != null
      * @param propertyValueString  string to parse; != null
@@ -61,6 +60,9 @@
      *                             Guaranteed to be valid according to propertyType's
      *                             {@link VehiclePropertyType#isValidValue(Object)} method.
+     *
+     * @throws PropertyValueSyntaxException  if the string has syntax errors that prevent parsing
+     * @throws InvalidParameterException     if an unknown property type was passed
      */
-    public static final <V> V parsePropertyValue(
+    public static <V> V parsePropertyValue(
             VehiclePropertyType<V> propertyType, String propertyValueString)
     throws PropertyValueSyntaxException {
@@ -74,5 +76,5 @@
             if (value != null && propertyType.isValidValue(value)) {
                 @SuppressWarnings("unchecked") //V must be float because of propertyType condition
-                V result = (V)value;
+                V result = (V) value;
                 return result;
             } else {
@@ -87,5 +89,5 @@
             if (value != null && propertyType.isValidValue(value)) {
                 @SuppressWarnings("unchecked") //V must be float because of propertyType condition
-                V result = (V)value;
+                V result = (V) value;
                 return result;
             } else {
@@ -98,5 +100,5 @@
             if (value != null && propertyType.isValidValue(value)) {
                 @SuppressWarnings("unchecked") //V must be float because of propertyType condition
-                V result = (V)value;
+                V result = (V) value;
                 return result;
             } else {
@@ -110,5 +112,5 @@
             if (value != null && propertyType.isValidValue(value)) {
                 @SuppressWarnings("unchecked") //V must be float because of propertyType condition
-                V result = (V)value;
+                V result = (V) value;
                 return result;
             } else {
@@ -122,8 +124,10 @@
                 if (0 <= value && value <= 5) {
                     @SuppressWarnings("unchecked") //V must be int because of propertyType condition
-                    V result = (V)(Integer)value;
+                    V result = (V) (Integer) value;
                     return result;
                 }
-            } catch (NumberFormatException e) {}
+            } catch (NumberFormatException e) {
+                Main.trace(e);
+            }
 
             throw new PropertyValueSyntaxException(ERROR_TRACKTYPE);
@@ -143,5 +147,5 @@
 
             @SuppressWarnings("unchecked") //V must be Collection because of propertyType condition
-            V result = (V)surfaceBlacklist;
+            V result = (V) surfaceBlacklist;
             return result;
 
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/FullGraphCreationTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/FullGraphCreationTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/FullGraphCreationTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core;
 
@@ -4,7 +5,9 @@
 
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.List;
 import java.util.Map;
 
@@ -49,11 +52,16 @@
 
     private static final AccessRuleset TEST_RULESET = new AccessRuleset() {
+        @Override
         public java.util.List<String> getAccessHierarchyAncestors(String transportMode) {
             return Arrays.asList(transportMode);
         }
-        public java.util.Collection<Tag> getBaseTags() {
+
+        @Override
+        public Collection<Tag> getBaseTags() {
             return Arrays.asList(new Tag("highway", "test"));
         }
-        public java.util.List<Implication> getImplications() {
+
+        @Override
+        public List<Implication> getImplications() {
             return new LinkedList<>();
         }
@@ -174,5 +182,5 @@
         while (iterator.hasNext()) {
             iterator.next();
-            size ++;
+            size++;
         }
         return size;
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/TestDataSource.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/TestDataSource.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/TestDataSource.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core;
 
@@ -12,9 +13,10 @@
 import org.openstreetmap.josm.plugins.graphview.core.data.TagGroup;
 
-public class TestDataSource implements DataSource<TestDataSource.TestNode, TestDataSource.TestWay, TestDataSource.TestRelation, TestDataSource.TestRelationMember> {
+public class TestDataSource
+implements DataSource<TestDataSource.TestNode, TestDataSource.TestWay, TestDataSource.TestRelation, TestDataSource.TestRelationMember> {
 
     public static class TestPrimitive {
         public final Map<String, String> tags = new HashMap<>();
-    };
+    }
 
     public static class TestNode extends TestPrimitive {
@@ -24,8 +26,10 @@
             this(0, 0);
         }
+
         public TestNode(double lat, double lon) {
             this.lat = lat;
             this.lon = lon;
         }
+
         @Override
         public String toString() {
@@ -57,10 +61,13 @@
             this.member = member;
         }
+
         public TestPrimitive getMember() {
             return member;
         }
+
         public String getRole() {
             return role;
         }
+
         @Override
         public String toString() {
@@ -74,68 +81,85 @@
     public final Collection<TestRelation> relations = new LinkedList<>();
 
-
+    @Override
     public double getLat(TestNode node) {
         return node.lat;
     }
+
+    @Override
     public double getLon(TestNode node) {
         return node.lon;
     }
 
+    @Override
     public Iterable<TestRelationMember> getMembers(TestRelation relation) {
         return relation.members;
     }
 
+    @Override
     public Iterable<TestNode> getNodes() {
         return nodes;
     }
 
+    @Override
     public Iterable<TestNode> getNodes(TestWay way) {
         return way.nodes;
     }
 
+    @Override
     public Iterable<TestWay> getWays() {
         return ways;
     }
 
+    @Override
     public Iterable<TestRelation> getRelations() {
         return relations;
     }
 
+    @Override
     public TagGroup getTagsN(TestNode node) {
         return new MapBasedTagGroup(node.tags);
     }
 
+    @Override
     public TagGroup getTagsW(TestWay way) {
         return new MapBasedTagGroup(way.tags);
     }
 
+    @Override
     public TagGroup getTagsR(TestRelation relation) {
         return new MapBasedTagGroup(relation.tags);
     }
 
+    @Override
     public Object getMember(TestRelationMember member) {
         return member.getMember();
     }
 
+    @Override
     public String getRole(TestRelationMember member) {
         return member.getRole();
     }
 
+    @Override
     public boolean isNMember(TestRelationMember member) {
         return member.getMember() instanceof TestNode;
     }
 
+    @Override
     public boolean isWMember(TestRelationMember member) {
         return member.getMember() instanceof TestWay;
     }
 
+    @Override
     public boolean isRMember(TestRelationMember member) {
         return member.getMember() instanceof TestRelation;
     }
 
+    @Override
     public void addObserver(DataSourceObserver observer) {
         // not needed for test
     }
 
+    @Override
     public void deleteObserver(DataSourceObserver observer) {
         // not needed for test
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReaderTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReaderTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/access/AccessRulesetReaderTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.access;
 
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadInclineTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadInclineTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadInclineTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeedTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeedTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadMaxspeedTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -7,5 +8,5 @@
 
     private static void testMaxspeed(float expectedMaxspeed, String maxspeedString) {
-        testEvaluateBoth(new RoadMaxspeed(),    expectedMaxspeed, new Tag("maxspeed", maxspeedString));
+        testEvaluateBoth(new RoadMaxspeed(), expectedMaxspeed, new Tag("maxspeed", maxspeedString));
     }
 
@@ -29,4 +30,3 @@
         testMaxspeed(24.14016f, "15 mph");
     }
-
 }
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/property/RoadPropertyTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.property;
 
@@ -8,5 +9,5 @@
 
 @Ignore("no test")
-abstract public class RoadPropertyTest {
+public abstract class RoadPropertyTest {
 
     protected static <P> void testEvaluateW(RoadPropertyType<P> property, P expectedForward, P expectedBackward, Tag... wayTags) {
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogicTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogicTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/TagConditionLogicTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 import static org.junit.Assert.assertFalse;
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParserTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParserTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/util/ValueStringParserTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.util;
 
@@ -88,5 +89,5 @@
     }
 
-    private static final void assertClose(float expected, float actual) {
+    private static void assertClose(float expected, float actual) {
         if (Math.abs(expected - actual) > 0.001) {
             throw new AssertionError("expected " + expected + ", was " + actual);
Index: applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorSchemeTest.java
===================================================================
--- applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorSchemeTest.java	(revision 32619)
+++ applications/editors/josm/plugins/graphview/test/unit/org/openstreetmap/josm/plugins/graphview/core/visualisation/FloatPropertyColorSchemeTest.java	(revision 32620)
@@ -1,2 +1,3 @@
+// License: GPL. For details, see LICENSE file.
 package org.openstreetmap.josm.plugins.graphview.core.visualisation;
 
