The adaptive proxy is generated for the client side and is the external representation of the adaptive service and exposes the interfaces, classes and methods to the client application. The adaptive proxy is generated from the PIM defined in the composition model.
The adaptive proxy is language specific but is not aware of how the client and server communicate, that is the responsibility of the Technology Adapter.
Client Technology Acceptance
The adaptive proxy is generated in the appropriate language for direct use by the client application. The adaptive proxy fully wraps the legacy application and data store so that the client developer does not have to be concerned with any of these details. All syntactical and semantic aspects of the legacy application and/or data stores are encapsulated.
This is important to ensure acceptance of the adaptive proxy by the “client community” who expect to work with their native tools and language constructs. Further, they expect to work with the standards and conventions of their community, be it Java developers, EJB designers or some other client technology community.
SCORE Adaptive Bridges directly addresses this issue by generating an adaptive proxy that is implemented and instantiated in exactly the same was a local implementation. There are no special data types, classes or operations. The client developer never sees (or suspects) that there might be a COBOL application providing the service.
The cultural integration also extends to generating project files etc to make the adaptive proxy directly usable from within client development environments such as NetBeans for Java. In this way client developers are able to maximize the use of their current skills, knowledge and toolsets when working with SCORE Adaptive Bridges.
In the normal deployment architecture for SCORE Adaptive Bridges your adaptive service is exposed to the client application using the adaptive proxy. In certain situations it might be necessary to have a “virtual client” where a client application invokes the server-side code directly.
An example of where this might be appropriate is when an application-specific message format is being used to connect with an existing client application. The server-side technology adapter can be generated for the custom message format. The client application can then invoke the server’s technology adapter directly.
This approach requires that the client knows the exact middleware interface generated for the technology adapter, which is more complicated than using a generated adaptive proxy and letting SCORE Adaptive Bridges take care of the communications details.
The “virtual client” enables project specific integration scenarios to be supported using the standard tools and features of SCORE Adaptive Bridges.
Where to Go Next?
You have seen how the external interface of the adaptive service is exposed to the client application. The following section looks at some specific Deployment Scenarios that show how the various layers are generated for specific deployment platforms.