Interface ReferenceTargetQuery

  • All Superinterfaces:
    Query
    All Known Implementing Classes:
    ReferenceTargetQuery.Base

    public interface ReferenceTargetQuery
    extends Query
    Unlike PropertyValueQuery, this one doesn't tell its link or default resolve info (which could be easily generated from template model). First of all, it's not possible from API perspective (for RTQ, we need association link prior to evaluate to populate RMC, while evaluate is our only way to figure out query is missing. Second, it's little value in the association link at all (much like PVQ.getProperty(), too) - for interpreted templates, I need to find appropriate meta object anyway (in TemplateNode; to figure out which property/link to copy or to process with a macro), for generated, code to set property/reference would be generated right in the template code. There's indeed use for default value (both for reference and property), and this shall be added here. I did't do it right away due to existence of ReflectiveQueryProvider where I'd need to pass this default value through QK, which I don't think is nice). Although even in that case there might be too much magic - if QK identifies a macro node, I'd need to go to parent to find out defaultReferenceInfo value, while in TemplateNode everything is already there.
    Since:
    3.4