Merge pull request #254 from agueganno/feature/analysis/Recode-for-lines

Improve unique values for lines
Oooooooops I forgot three values...
Merge pull request #256 from agueganno/oooooops-sorry

Oooooooops I forgot three values...
Adds a POJO that will help to present RecodedLine as a kind of
Map<String,UniqueObject>, preserving typing. It just wraps the
parameters needed to draw a simple line.
Adding a default constructor that produces a RecodedLine from a constant LineSymbolizer
Adds a get method in RecodedLine.
Adds an equals method in LineParameters.
Tests them.
Adds the put operation in RecodedLine and tests it.
Adds the remove operation in RecodedLine. I've been forced to change the
behaviour of remoevItem in  RecodedLegend instances to match what we
expect in RecodedLine.
keySet is defined in the Map api, so more suited
Adding the size method in AbstractRecodedLegend
Adds a way to gather all the fields that are used in the legend. This
way, we'll be able to do a global set and to perform validation after
creation.
Adds a validation mechanism when instanciating a RecodedLine so that we
can't have two RecodedLegend with different analysis fields. Sets the
analysis fields on all the RecodedLegend so that all the RecodedLegend
have one, even literals (if we have at least one Recode in our
Symbolizer).
Adds a getter to retrieve the name of the analysis field. Refactor a bit
the RecodedLine constructor consequently.
Adds the clear and isEmpty operations
Make some methods private - they don't deserve to stay public
RecodedLine is now a fully working Map implementation. The only task
remaining is the hard link between the EntrySet operator and the map.
Basic implementation of setValue in MapEntry. Still have some things to
do about synchronization of Sets
some factorisation : I will need to be able to handle other maps than
RecodedLine with approximately the same basis. I've put everything I
could in MappedLegend, using genereics as much as possible. Nothing has
broken so... let's continue :-)
There is a direct equivalence between LineParameters and
UniqueSymbolLine. We express it by declaring a new constructor and a new
getter that respectively use and return a LineParameters instance. It
will ease the management of MappedLegends later.
Minor modifications in the javadoc