if (context == null)
throw new IllegalArgumentException("No such context: " + name);
if (context instanceof LifecycleDispatchContext)
{
LifecycleDispatchContext ldc = (LifecycleDispatchContext)context;
ControllerState state = ldc.lifecycleInvocation(methodName, parameters, signature);
if (state != null)
{
if (state.equals(context.getState()) == false)
controller.change(context, state);