I'm using single-table inheritance with the 'type' column determining the 
subclass with a Qualifier in the model:
AiSystemPrompt (abstract)
AiSystemPromptSummarization (Qualifier type='AiSystemPromptSummarization')

This query works:

List<AiJob> jobs = ObjectSelect.query(AiJob.class)
.where(AiJob.AI_SYSTEM_PROMPT.dot(AiSystemPrompt.TYPE).eq("AiSystemPromptSummarization"))
.select(context);

But I don't like that I'm hardcoding the subclass 
("AiSystemPromptSummarization") and searching against the TYPE property.

Is there a way to do this using the attributes I have in the cayenne model? 
(abstract superclass with concrete subclass using the qualifier set in the 
entity model)

I looked at BaseProperty and a couple of others in 
org.apache.cayenne.exp.property but don't see it....

Rob

Reply via email to