[ 
https://issues.apache.org/jira/browse/QPID-7358?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lorenz Quack closed QPID-7358.
------------------------------
    Resolution: Duplicate

> [Java Broker] forbid the same state transition to be defined more than once
> ---------------------------------------------------------------------------
>
>                 Key: QPID-7358
>                 URL: https://issues.apache.org/jira/browse/QPID-7358
>             Project: Qpid
>          Issue Type: Bug
>          Components: Java Broker
>    Affects Versions: qpid-java-6.0, qpid-java-6.1, qpid-java-6.0.5
>            Reporter: Lorenz Quack
>
> Currently if we define a state transition more than once, only one will be 
> used and the others will be silently discarded. For example on 
> {{AbstractVirtualHost}} the state transition {{ERRORED -> ACTIVE}} is defined 
> twice:
> {code}@StateTransition(currentState = {State.UNINITIALIZED, State.ERRORED}, 
> desiredState = State.ACTIVE)
> private ListenableFuture<Void> onActivate()
> {...}
> @StateTransition( currentState = { State.STOPPED, State.ERRORED }, 
> desiredState = State.ACTIVE )
> private ListenableFuture<Void> onRestart()
> {...}{code}
> The relevant code that does the discarding is 
> {{ConfiguredObjectTypeRegistry#addStateTransitions}} and 
> {{ConfiguredObjectTypeRegistry#addStateTransition}}.
> I would argue that this should be a compilation error.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to