Justin Lee
Justin Lee
I haven't really taken a look at it. I don't typically use async APIs so it's been a lower priority for me vs other features/fixes but i'll pin it to...
This will expose `MongoCollection#watch(java.util.List
*grumble* *grumble* It's not the first time this has come up and I thought it was fixed last time. the fix might be simple for someone with expertise in CSS...
You can define your own `NamingStrategy` and [configure](https://morphia.dev/morphia/2.4/configuration.html#_collection_and_property_naming) Morphia to use that instead. Simply pass the class name for your custom strategy rather than the named type.
Multitenancy isn't directly supported in 2.x though it's on the roadmap for 3.x. If you need something like that now, your best bet is to create a `Datastore` per tenant...
What's the use case for doing a projection on the discriminator? Such metadata should be ignored/transparent to your application?
If you're querying by the interface type, you'll need to enable [polymorphic queries](https://morphia.dev/morphia/2.4/queries.html#_polymorphic_queries).
What does your query look like?
I'm not seeing how/where the discrimininator come in to play. Is the failure you're seeing that the projection doesn't know how to "see past" the interface definition?
If you could put together a [reproducer](/morphiaorg/reproducer) I can take a deeper look. I have some ideas about what might be happening here but I can't quite follow your examples...