I like the idea of a local geoprocessing task from a GP package that takes an array of geometries as input for making these determinations. But that means that I do have to manage and track the geometries for all graphic layers the MPC generates via the message group layer's processor, doesn't it?
I merely want to know if that is good practice because my MPC's perception has been to allow its message group layer to manage (create, update and delete) the military symbols you ask it to display. The part of CRUD that's not clear to me is the reading/retrieving (R) part. Is is good practice to access each dynamically-generated layer off the message group layer to access its containing geometries and then pass them to a task that also takes a referencing point, geometry for region, or envelope for area of interest, to determine which of them are found within its boundaries? I don't see another way to retrieve them.
I should add that the geometries being queried against are contained in graphic layers and not in geodatabases, so I'm not sure if this is even possible using a geoprocessing function. Also, there doesn't appear to be a GeoprocessingService type in Java API, but only on web and mobile APIs such as WPF or Android. Will it be in the next release?
It appears to be a viable solution, but I want to make sure I won't cause any potential performance efficiency or thread-raising issues later.