OAS uses objects as requests handlers. The prototypes for the components are with OAS. A request handler is expected to implement these prototypes.
Following are the two interfaces OAS defines
virtual void *Work(void* ptr)=0;
virtual OASApplication* getApplicationInstance(void)=0;
The second interface OASApplicationManager is a resource-handling interface that acts as application manager. OAS first instantiates this interface. It then created necessary thread pools with request handler objects instantiated from th object manager.