= Migration from GeniusWeb 1.6 to 2.0
There are a few small differences between GeniusWeb 1.6 and 2.0. These concern some json formatting changes, some maven dependencies.
== json changes
The change here involves the json serialization of a number of objects. Most parties only will need recompilation, as the serialization to java objects already is done by the GeniusWeb libraries.
All objects now serialize by there class name (so the exceptions were changed)
The following table gives the old label and the new replacement label
||old ||new||
||accept||Accept||
||endnegotiation||EndNegotiation||
||offer||Offer||
||vote||Vote||
||votewithvalue||VoteWithValue||
||actionevent||ActionEvent||
||sessionstarted||SessionStarted||
||tournamentstarted||TournamentStarted||
||discreteset||DiscreteValueSet||
||numberset||NumberValueSet||
||discreteutils||DiscreteValueSetUtilities||
||numberutils||NumberValueSetUtilities||
||partsutils||PartsUtilities||
||rounds||ProgressRounds||
||time||ProgressTime||
||deadlinerounds||DeadlineRounds||
||deadlinetime||DeadlineTime||
Finally, the Range object now serializes different:
||[2,3,0.22]||{{{ {"low":2,"high":3,"step":0.22} }}}||
== Maven changes
The maven dependencies
{{{
tudelft.utilities
files / listener / tree / repository
2.1.0
}}}
and
{{{
tudelft.utilities
immutablelist
....
}}}
have all been replaced with
{{{
tudelft.utilities
utilities
1.1.0
}}}
For jackson, now use {{{ 2.12.3}}}
== Java
||old function||new function||
Finished.getAgreement() Finished.getAgreements()||
== BOA
There are a number of changes in the BOA system that may require you to change your BOA components.
* BoaState does not contain AS and BS anymore. AS and BS therefore can not call each other anymore. This is crucial to avoid mutual dependencies and infinite loops.
* AccceptanceStrategy now accepts the proposed action (rather than the last received bid).
* AS now filters the actions that came from the BS.