┌─┐ ║"│ └┬┘ ┌┼┐ | ,-. | ,-. │ +--{ ) +--{ ) ┌──────────────────────┐ ┌──────┐ ┌────────────────────┐ ┌┴┐ | `-' | `-' │ConfirmationController│ │Bundle│ │PasswordConfirmation│ User RequestHandlerGuard RouteDispatcher └──────────────────────┘ └──────┘ └────────────────────┘ │ request sensitive AnyComponent │ │ │ │ │────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ assert bundle for AnyComponent demand │ │ │ │ │────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ throw ConfirmationRequiredException │ │ │ │ │<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ temporary persist bundle for demand │ │ │ │ │──────────────────────────────────────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ render confirmation form │ │ │ │ │───────────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ show confirmation form │ │ │ │ │<───────────────────────────────────────────────────────────────────────────────────────────│ │ │ │ │ │ │ │ │ │ │ provide password confirmation │ │ │ │ │───────────────────────────────────────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ verify password │ │ │ │ │───────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ true │ │ │ │ │<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ │ │ │ │ grant bundle for demand │ │ │ │ │ │─────────────────────────>│ │ │ │ │ │ │ │ │ │ throw ApplyInstructionException for bundle │ │ │ │ │<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─│ │ │ │ │ │ │ │ │ │ │forward to originally demanded route │ │ │ │ │ │────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ │ │ assert bundle for AnyComponent demand │ │ │ │ │────────────────────────────────────────────────────────>│ │ │ │ │ │ │ │ │ │ │ true│ │ │ │ │ │<─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │ │ │ │ │ │ │ │ │ │ dispatch │ │ │ │ │<────────────────────────────────────────────────────────────│ │ │ │ User RequestHandlerGuard RouteDispatcher ┌──────────────────────┐ ┌──────┐ ┌────────────────────┐ ┌─┐ | ,-. | ,-. │ConfirmationController│ │Bundle│ │PasswordConfirmation│ ║"│ +--{ ) +--{ ) └──────────────────────┘ └──────┘ └────────────────────┘ └┬┘ | `-' | `-' ┌┼┐ │ ┌┴┐