> I am browsing OB to understand the design of the Requests and the commands. > In particular, I am interested to understand why OBRequests are Notifications > and how they link with the commands. > > Is there anywhere I can read about it?
Please check the class comments of OBInteractionRequest and subclasses. "OBInteractionRequest is an abstract superclass for notifications that request some interaction with the user. It's useful for catching such notifications in an exception handler, while allowing other notifications to operate normally." So all these requests are interacting in some way with the user, e.g. they open a new browser, they close a browser, they refresh a browser, they show a specific dialog, they change the mouse cursor, etc. And depending on the current view these requests are handled differently. In OB-Morphic the respective morphic actions are performed, in OB-Web the request is serialized to JSON and performed on the client side, ... and in the tests the events are silently captured and verified using assertions. OBCommand is something entirely different. It represents the first-class actions (menu items, buttons) in a browser. The only way an OBCommand can interact with the user and for example request additional information is through OBInteractionRequests that might be triggered at any point. Lukas -- Lukas Renggli www.lukas-renggli.ch
