I have a server object extension (SOE) that returns a list of legend items based on symbols that fall within a specified extent. This allows the client to update a legend to reflect on the symbols that fall within the map extent.
To do this requires access to renderers. This is simple with with mxd based mapservices, however Msd based mapservices don't support access to renderers. As a workaround I'm using IMapDocument to open the mxd and keep a reference to the layout as a member variable.
Is this safe?
Support for mxd mapservices will be deprecated at 10.1, so I really need to figure this out.
Update
This video from the Dev Summit doesn't explicitly address this question. However, given how the printing gp service uses mxd files, this implies mxd access is safe. If it isn't, I suppose I could re-deploy my SOE as a gp service.
Update2
Here's a related question on CodeReview.Stackexchange.