The Service Consumer and Service Provider patterns in WEF
The provider/consumer pattern is implemented through the usage of specialized models. As we saw in Chapter 7, Introduction to Web Experience Factory, models are comprised of builders. This being the case, by adding specific builders to a model, we can clearly define the tasks to be performed by these models. For instance, if we add UI-related builders such as Data Page, Link, Input Control, and so on to a model, it makes sense that this model will be responsible for handling the display and input of data. On the other hand, if we add builders such as Service Definition, Service Operation, Web Service Call, and other such builders, it makes sense that these models will be entirely responsible for data access and data manipulation.
The models responsible for data access and data manipulation play the role of Service Providers, and the ones responsible for the UI presentation are Service Consumers.
The following diagram shows the...