Class ListProperty<V extends Persistent>

All Implemented Interfaces:
PathProperty<List<V>>, Property<List<V>>, RelationshipProperty<List<V>>

public class ListProperty<V extends Persistent> extends CollectionProperty<V,List<V>>
Property that represents to-many relationship mapped on List.

 ObjectSelect.query(Artist.class)
      .where(Artist.PAINTING_ARRAY.contains(painting));
 
Since:
4.2
See Also:
  • Constructor Details

    • ListProperty

      protected ListProperty(CayennePath path, Expression expression, Class<V> entityType)
      Constructs a new property with the given path and expression
      Parameters:
      path - of the property (will be used as alias for the expression)
      expression - expression for property
      entityType - type of related entity
  • Method Details

    • alias

      public ListProperty<V> alias(String alias)
      Creates alias with different name for this property
      Overrides:
      alias in class BaseProperty<List<V extends Persistent>>
    • outer

      public ListProperty<V> outer()
      Returns a version of this property that represents an OUTER join.
    • enclosing

      public ListProperty<V> enclosing()
      Description copied from class: BaseProperty
      This operator allows to access properties of the enclosing query from the subquery. It allows multiple nesting levels to access a corresponding query in case of multiple levels of subqueries. Example:
      
       ObjectSelect.query(Artist.class)
                       .where(ExpressionFactory.notExists(ObjectSelect.query(Painting.class)
                               .where(Painting.TO_ARTIST.eq(Artist.ARTIST_ID_PK_PROPERTY.enclosing()))))
       
       
      Overrides:
      enclosing in class BaseProperty<List<V extends Persistent>>
      Returns:
      property that will be translated relative to parent query