[mapguide-internals] ServiceArchitecture and design rules??

UV uvwild at googlemail.com
Fri Mar 19 22:14:32 EDT 2010


Hi,

i just wondered if someone can provide a bit deeper insight into the 
service architecture.

I am trying to distribute some functionality between the service as 
indicated by visibility of code.
(as we dont want/can simply include everything as needed - the big C++ 
linking problem)

e.g. I want to add a internal API method to the MgServerRenderingService.

Trying even to access a static member directly fails due to DLL 
import/export settings.
I suppose this is due to design as it looks there have been some fancy 
plans regarding service distribution.
Or is there a trick with the preprocessor how to include other services 
to get the DLL access done correctly?

or is the only doable solution to propagate and expose any internal 
interservice API via the MgRenderingService so I can access it via the 
service manager?

    Ptr<MgRenderingService> svcRendering = 
dynamic_cast<MgRenderingService*>(
        serviceMan->RequestService(MgServiceType::RenderingService));

This feels like a costly overkill for addressing server internal 
functionality which should be local....
and what code is needed in the proxy version for an internal APi call.....

thanks for some clarification



More information about the mapguide-internals mailing list