Overhaul merger strategies
Currently, the names of the RoundRobinStrategy
and the BusyWaitingRoundRobinStrategy
do not reflect their corresponding concerns. Moreover, although both use a round-robin style to determine the next input port, they use two different algorithms.
The RoundRobinStrategy
returns the token of the next non-empty input port. Hereby, it starts from the last non-empty input port and passes each input port at most one time per execute()
.
The BusyWaitingRoundRobinStrategy
returns the token of the currently selected non-closed input port. It only passes over to the next non-closed input port, if it has received a non-null token from the previously selected input port or if the previously selected input port has been closed. Thus, this strategy represents a blocking strategy using busy-waiting.