Ah, I hadn't thought of that. :+1: to `supports()`. 

You could sort of, perhaps, do a composite handler. Public API facing other classes would be a Handler facade that itself would house "inner handlers" front channel, back-channel logout. The facade handler via supports() would handle each logout request.

At a high level, instead of saying:
- A given component should first check to see if the request is front channel, or back channel, and on those, invoke appropriate executions...

It would be:
- A given component will pass the request to a logout facade handler, and it will know what to do. No need for an individual class to examine the request.