Class Plate

  • All Implemented Interfaces:
    java.io.Serializable, IAnnotated, IMutable, IObject, Filterable

    @Entity
    @Indexed(index="FullText")
    @ClassBridge(name="details",
                 impl=DetailsFieldBridge.class,
                 index=UN_TOKENIZED,
                 store=NO)
    public class Plate
    extends java.lang.Object
    implements java.io.Serializable, IObject, IMutable, IAnnotated
    These filter definitions are used by the security system to eliminate non-readable objects from queries. The regular user does not need to worry about them, as they will be injected directly into the SQL (not HQL)
    See Also:
    Serialized Form
    • Field Detail

      • id

        protected java.lang.Long id
      • version

        protected java.lang.Integer version
      • defaultSample

        protected java.lang.Integer defaultSample
      • columnNamingConvention

        protected java.lang.String columnNamingConvention
      • rowNamingConvention

        protected java.lang.String rowNamingConvention
      • wellOriginX

        protected Length wellOriginX
      • wellOriginY

        protected Length wellOriginY
      • rows

        protected java.lang.Integer rows
      • columns

        protected java.lang.Integer columns
      • status

        protected java.lang.String status
      • externalIdentifier

        protected java.lang.String externalIdentifier
      • OWNER_FILTER_SCREENLINKS

        public static final java.lang.String OWNER_FILTER_SCREENLINKS
        See Also:
        Constant Field Values
      • GROUP_FILTER_SCREENLINKS

        public static final java.lang.String GROUP_FILTER_SCREENLINKS
        See Also:
        Constant Field Values
      • EVENT_FILTER_SCREENLINKS

        public static final java.lang.String EVENT_FILTER_SCREENLINKS
        See Also:
        Constant Field Values
      • PERMS_FILTER_SCREENLINKS

        public static final java.lang.String PERMS_FILTER_SCREENLINKS
        See Also:
        Constant Field Values
      • wells

        protected java.util.Set<Well> wells
      • OWNER_FILTER_WELLS

        public static final java.lang.String OWNER_FILTER_WELLS
        See Also:
        Constant Field Values
      • GROUP_FILTER_WELLS

        public static final java.lang.String GROUP_FILTER_WELLS
        See Also:
        Constant Field Values
      • EVENT_FILTER_WELLS

        public static final java.lang.String EVENT_FILTER_WELLS
        See Also:
        Constant Field Values
      • PERMS_FILTER_WELLS

        public static final java.lang.String PERMS_FILTER_WELLS
        See Also:
        Constant Field Values
      • plateAcquisitions

        protected java.util.Set<PlateAcquisition> plateAcquisitions
      • OWNER_FILTER_PLATEACQUISITIONS

        public static final java.lang.String OWNER_FILTER_PLATEACQUISITIONS
        See Also:
        Constant Field Values
      • GROUP_FILTER_PLATEACQUISITIONS

        public static final java.lang.String GROUP_FILTER_PLATEACQUISITIONS
        See Also:
        Constant Field Values
      • EVENT_FILTER_PLATEACQUISITIONS

        public static final java.lang.String EVENT_FILTER_PLATEACQUISITIONS
        See Also:
        Constant Field Values
      • PERMS_FILTER_PLATEACQUISITIONS

        public static final java.lang.String PERMS_FILTER_PLATEACQUISITIONS
        See Also:
        Constant Field Values
      • OWNER_FILTER_ANNOTATIONLINKS

        public static final java.lang.String OWNER_FILTER_ANNOTATIONLINKS
        See Also:
        Constant Field Values
      • GROUP_FILTER_ANNOTATIONLINKS

        public static final java.lang.String GROUP_FILTER_ANNOTATIONLINKS
        See Also:
        Constant Field Values
      • EVENT_FILTER_ANNOTATIONLINKS

        public static final java.lang.String EVENT_FILTER_ANNOTATIONLINKS
        See Also:
        Constant Field Values
      • PERMS_FILTER_ANNOTATIONLINKS

        public static final java.lang.String PERMS_FILTER_ANNOTATIONLINKS
        See Also:
        Constant Field Values
      • name

        protected java.lang.String name
      • description

        protected java.lang.String description
      • details

        protected Details details
      • COLUMNNAMINGCONVENTION

        public static final java.lang.String COLUMNNAMINGCONVENTION
        See Also:
        Constant Field Values
      • ROWNAMINGCONVENTION

        public static final java.lang.String ROWNAMINGCONVENTION
        See Also:
        Constant Field Values
      • EXTERNALIDENTIFIER

        public static final java.lang.String EXTERNALIDENTIFIER
        See Also:
        Constant Field Values
      • SCREENLINKSCOUNTPEROWNER

        public static final java.lang.String SCREENLINKSCOUNTPEROWNER
        See Also:
        Constant Field Values
      • PLATEACQUISITIONS

        public static final java.lang.String PLATEACQUISITIONS
        See Also:
        Constant Field Values
      • ANNOTATIONLINKSCOUNTPEROWNER

        public static final java.lang.String ANNOTATIONLINKSCOUNTPEROWNER
        See Also:
        Constant Field Values
      • FIELDS

        public static final java.util.Set<java.lang.String> FIELDS
      • _dynamicFields

        protected java.util.Map<java.lang.String,​java.lang.Object> _dynamicFields
      • _loaded

        protected boolean _loaded
    • Constructor Detail

      • Plate

        public Plate()
      • Plate

        protected Plate​(java.lang.Long id)
      • Plate

        public Plate​(java.lang.Long id,
                     boolean loaded)
        Main constructor.
      • Plate

        public Plate​(java.lang.String _name)
    • Method Detail

      • getId

        @DocumentId
        public java.lang.Long getId()
        The DB unique identifier for this object. You are not responsible for setting the id; however, it can be useful for creating "unloaded" versions of your objects. Each top-level entity contains an id field of type long. For all objects returned from the server, this value will be non-null, which doesn't necessarily hold for the other fields.
        Specified by:
        getId in interface IObject
        Returns:
        Long primary key. May be null.
      • setId

        public void setId​(java.lang.Long id)
        Description copied from interface: IObject
        usually unneeded. Ids are managed by the backend.
        Specified by:
        setId in interface IObject
        Parameters:
        id - Long value for this id.
      • getVersion

        public java.lang.Integer getVersion()
        This version number is controlled by the database for optimisitic locking.
        Specified by:
        getVersion in interface IMutable
      • setVersion

        public void setVersion​(java.lang.Integer version)
        Description copied from interface: IMutable
        use with caution. In general, the version should only be altered by the backend. In the best case, an exception will be thrown for a version not equal to the current DB value. In the worst (though rare) case, the new version could match the database, and override optimistic lock checks that are supposed to prevent data loss.
        Specified by:
        setVersion in interface IMutable
        Parameters:
        version - Value for this objects version.
      • getDefaultSample

        @Field(index=UN_TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.Integer getDefaultSample()
        Simple field ome.model.screen.Plate.defaultSample (java.lang.Integer)
      • setDefaultSample

        public void setDefaultSample​(java.lang.Integer defaultSample)
      • getColumnNamingConvention

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getColumnNamingConvention()
        Simple field ome.model.screen.Plate.columnNamingConvention (java.lang.String)
      • setColumnNamingConvention

        public void setColumnNamingConvention​(java.lang.String columnNamingConvention)
      • getRowNamingConvention

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getRowNamingConvention()
        Simple field ome.model.screen.Plate.rowNamingConvention (java.lang.String)
      • setRowNamingConvention

        public void setRowNamingConvention​(java.lang.String rowNamingConvention)
      • getWellOriginX

        public Length getWellOriginX()
        Enum-mapped unit-based field ome.model.screen.Plate.wellOriginX (ome.model.units.Length)
      • setWellOriginX

        public void setWellOriginX​(Length wellOriginX)
      • getWellOriginY

        public Length getWellOriginY()
        Enum-mapped unit-based field ome.model.screen.Plate.wellOriginY (ome.model.units.Length)
      • setWellOriginY

        public void setWellOriginY​(Length wellOriginY)
      • getRows

        @Field(index=UN_TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.Integer getRows()
        Simple field ome.model.screen.Plate.rows (java.lang.Integer)
      • setRows

        public void setRows​(java.lang.Integer rows)
      • getColumns

        @Field(index=UN_TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.Integer getColumns()
        Simple field ome.model.screen.Plate.columns (java.lang.Integer)
      • setColumns

        public void setColumns​(java.lang.Integer columns)
      • getStatus

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getStatus()
        Simple field ome.model.screen.Plate.status (java.lang.String)
      • setStatus

        public void setStatus​(java.lang.String status)
      • getExternalIdentifier

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getExternalIdentifier()
        Simple field ome.model.screen.Plate.externalIdentifier (java.lang.String)
      • setExternalIdentifier

        public void setExternalIdentifier​(java.lang.String externalIdentifier)
      • getScreenLinks

        protected java.util.Set<ScreenPlateLink> getScreenLinks()
        returns screenLinks . You should not modify this collection unless you know what you are doing. Use the iterate method instead. one-to-many Set ome.model.screen.Plate.screenLinks (ome.model.screen.ScreenPlateLink)
      • setScreenLinks

        protected void setScreenLinks​(java.util.Set<ScreenPlateLink> screenLinks)
        setter for screenLinks should be avoided. Does not fulfill normal semantics.
      • sizeOfScreenLinks

        public int sizeOfScreenLinks()
        returns the size of screenLinks. If less than zero, the Set was null.
      • iterateScreenLinks

        public java.util.Iterator<ScreenPlateLink> iterateScreenLinks()
        should be used rather than accessing the screenLinks set directly. This method will never return null, but rather will return an instance of EmptyIterator. To test for a null collection, see of sizeOfScreenLinks() is less than zero.
      • unmodifiableScreenLinks

        public java.util.Collection<ScreenPlateLink> unmodifiableScreenLinks()
        Returns an unmodifiable collection-view
      • collectScreenLinks

        public <E> java.util.List<E> collectScreenLinks​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.screen.ScreenPlateLink while collecting the results. If block == null, then the iterator values themselves are collected. This method uses iterateScreenLinks() internally and so will return a value even if the underlying collection is null.
      • addScreenPlateLink

        public void addScreenPlateLink​(ScreenPlateLink target)
        use instead of setScreenLinks . Makes the necessary call on ome.model.screen.ScreenPlateLink as well.
      • addScreenPlateLinkSet

        public void addScreenPlateLinkSet​(java.util.Collection<ScreenPlateLink> targets)
        use like addScreenPlateLink.
      • removeScreenPlateLink

        public void removeScreenPlateLink​(ScreenPlateLink target)
        removes a single element from this set and makes the inverse call on ome.model.screen.ScreenPlateLink
      • removeScreenPlateLinkSet

        public void removeScreenPlateLinkSet​(java.util.Collection<ScreenPlateLink> targets)
        use like removeScreenPlateLink
      • linkScreen

        public ScreenPlateLink linkScreen​(Screen addition)
        Adds a ome.model.screen.ScreenPlateLink to screenLinks . This entails changing our screenLinks Set, creating a new ome.model.screen.ScreenPlateLink and calling linkScreen on the ome.model.screen.Screen.
      • addScreenPlateLink

        public void addScreenPlateLink​(ScreenPlateLink link,
                                       boolean bothSides)
        Adds a ome.model.screen.ScreenPlateLink to screenLinks, allowing for recursion -- whether or not addScreenPlateLink will be called on the addition if it is loaded
      • linkedScreenIterator

        public java.util.Iterator<Screen> linkedScreenIterator()
        provides an iterator over the child values of the screenLinks. Like with most Collection iterators, modifications to the underlying collection while iterating will result in an ConcurrentModificationException. Use linkedScreenList() instead.
      • findScreenPlateLink

        public java.util.Set<ScreenPlateLink> findScreenPlateLink​(Screen target)
        find all ome.model.screen.ScreenPlateLink which have the argument as their parent.
      • linkedScreenList

        public java.util.List<Screen> linkedScreenList()
        produces a List-copy of the underlying collection. Unlike, linkedScreenIterator(), while using the returned List, modifications can be made to the underlying collection without throwing ConcurrentModificationException.
      • eachLinkedScreen

        public <E> java.util.List<E> eachLinkedScreen​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.screen.Screen while collecting the results. If block == null, then the iterator values themselves are collected.
      • unlinkScreen

        public void unlinkScreen​(Screen removal)
        unlinks all ome.model.screen.Screen instances from this instance.
      • removeScreenPlateLink

        public void removeScreenPlateLink​(ScreenPlateLink link,
                                          boolean bothSides)
        removes the given ScreenPlateLink from screenLinks, allowing for recursion -- whether or not the removal will call unlinkPlate again if loaded.
      • clearScreenLinks

        public void clearScreenLinks()
        clears the set.
      • setScreenLinksCountPerOwner

        protected void setScreenLinksCountPerOwner​(java.util.Map<java.lang.Long,​java.lang.Long> map)
      • getScreenLinksCountPerOwner

        public java.util.Map<java.lang.Long,​java.lang.Long> getScreenLinksCountPerOwner()
        If fetched, returns the count(*) of ome.model.screen.ScreenPlateLink that a user has. If unfetched, returns null. No entries in the collection should be null.
      • getWells

        protected java.util.Set<Well> getWells()
        returns wells . You should not modify this collection unless you know what you are doing. Use the iterate method instead. one-to-many Set ome.model.screen.Plate.wells (ome.model.screen.Well)
      • setWells

        protected void setWells​(java.util.Set<Well> wells)
        setter for wells should be avoided. Does not fulfill normal semantics.
      • sizeOfWells

        public int sizeOfWells()
        returns the size of wells. If less than zero, the Set was null.
      • iterateWells

        public java.util.Iterator<Well> iterateWells()
        should be used rather than accessing the wells set directly. This method will never return null, but rather will return an instance of EmptyIterator. To test for a null collection, see of sizeOfWells() is less than zero.
      • unmodifiableWells

        public java.util.Collection<Well> unmodifiableWells()
        Returns an unmodifiable collection-view
      • collectWells

        public <E> java.util.List<E> collectWells​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.screen.Well while collecting the results. If block == null, then the iterator values themselves are collected. This method uses iterateWells() internally and so will return a value even if the underlying collection is null.
      • addWell

        public void addWell​(Well target)
        use instead of setWells . Makes the necessary call on ome.model.screen.Well as well.
      • addWellSet

        public void addWellSet​(java.util.Collection<Well> targets)
        use like addWell.
      • removeWell

        public void removeWell​(Well target)
        removes a single element from this set and makes the inverse call on ome.model.screen.Well
      • removeWellSet

        public void removeWellSet​(java.util.Collection<Well> targets)
        use like removeWell
      • clearWells

        public void clearWells()
        clears the set.
      • getPlateAcquisitions

        protected java.util.Set<PlateAcquisition> getPlateAcquisitions()
        returns plateAcquisitions . You should not modify this collection unless you know what you are doing. Use the iterate method instead. one-to-many Set ome.model.screen.Plate.plateAcquisitions (ome.model.screen.PlateAcquisition)
      • setPlateAcquisitions

        protected void setPlateAcquisitions​(java.util.Set<PlateAcquisition> plateAcquisitions)
        setter for plateAcquisitions should be avoided. Does not fulfill normal semantics.
      • sizeOfPlateAcquisitions

        public int sizeOfPlateAcquisitions()
        returns the size of plateAcquisitions. If less than zero, the Set was null.
      • iteratePlateAcquisitions

        public java.util.Iterator<PlateAcquisition> iteratePlateAcquisitions()
        should be used rather than accessing the plateAcquisitions set directly. This method will never return null, but rather will return an instance of EmptyIterator. To test for a null collection, see of sizeOfPlateAcquisitions() is less than zero.
      • unmodifiablePlateAcquisitions

        public java.util.Collection<PlateAcquisition> unmodifiablePlateAcquisitions()
        Returns an unmodifiable collection-view
      • collectPlateAcquisitions

        public <E> java.util.List<E> collectPlateAcquisitions​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.screen.PlateAcquisition while collecting the results. If block == null, then the iterator values themselves are collected. This method uses iteratePlateAcquisitions() internally and so will return a value even if the underlying collection is null.
      • addPlateAcquisition

        public void addPlateAcquisition​(PlateAcquisition target)
        use instead of setPlateAcquisitions . Makes the necessary call on ome.model.screen.PlateAcquisition as well.
      • addPlateAcquisitionSet

        public void addPlateAcquisitionSet​(java.util.Collection<PlateAcquisition> targets)
        use like addPlateAcquisition.
      • removePlateAcquisition

        public void removePlateAcquisition​(PlateAcquisition target)
        removes a single element from this set and makes the inverse call on ome.model.screen.PlateAcquisition
      • removePlateAcquisitionSet

        public void removePlateAcquisitionSet​(java.util.Collection<PlateAcquisition> targets)
        use like removePlateAcquisition
      • clearPlateAcquisitions

        public void clearPlateAcquisitions()
        clears the set.
      • getAnnotationLinks

        protected java.util.Set<PlateAnnotationLink> getAnnotationLinks()
        returns annotationLinks . You should not modify this collection unless you know what you are doing. Use the iterate method instead. one-to-many Set ome.model.screen.Plate.annotationLinks (ome.model.annotations.PlateAnnotationLink)
      • setAnnotationLinks

        protected void setAnnotationLinks​(java.util.Set<PlateAnnotationLink> annotationLinks)
        setter for annotationLinks should be avoided. Does not fulfill normal semantics.
      • sizeOfAnnotationLinks

        public int sizeOfAnnotationLinks()
        returns the size of annotationLinks. If less than zero, the Set was null.
        Specified by:
        sizeOfAnnotationLinks in interface IAnnotated
      • collectAnnotationLinks

        public <E> java.util.List<E> collectAnnotationLinks​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.annotations.PlateAnnotationLink while collecting the results. If block == null, then the iterator values themselves are collected. This method uses iterateAnnotationLinks() internally and so will return a value even if the underlying collection is null.
        Specified by:
        collectAnnotationLinks in interface IAnnotated
      • addPlateAnnotationLink

        public void addPlateAnnotationLink​(PlateAnnotationLink target)
        use instead of setAnnotationLinks . Makes the necessary call on ome.model.annotations.PlateAnnotationLink as well.
      • addPlateAnnotationLinkSet

        public void addPlateAnnotationLinkSet​(java.util.Collection<PlateAnnotationLink> targets)
        use like addPlateAnnotationLink.
      • removePlateAnnotationLink

        public void removePlateAnnotationLink​(PlateAnnotationLink target)
        removes a single element from this set and makes the inverse call on ome.model.annotations.PlateAnnotationLink
      • removePlateAnnotationLinkSet

        public void removePlateAnnotationLinkSet​(java.util.Collection<PlateAnnotationLink> targets)
        use like removePlateAnnotationLink
      • linkAnnotation

        public PlateAnnotationLink linkAnnotation​(Annotation addition)
        Adds a ome.model.annotations.PlateAnnotationLink to annotationLinks . This entails changing our annotationLinks Set, creating a new ome.model.annotations.PlateAnnotationLink and calling linkAnnotation on the ome.model.annotations.Annotation.
        Specified by:
        linkAnnotation in interface IAnnotated
      • addPlateAnnotationLink

        public void addPlateAnnotationLink​(PlateAnnotationLink link,
                                           boolean bothSides)
        Adds a ome.model.annotations.PlateAnnotationLink to annotationLinks, allowing for recursion -- whether or not addPlateAnnotationLink will be called on the addition if it is loaded
      • linkedAnnotationIterator

        public java.util.Iterator<Annotation> linkedAnnotationIterator()
        provides an iterator over the parent values of the annotationLinks. Like with most Collection iterators, modifications to the underlying collection while iterating will result in an ConcurrentModificationException. Use linkedAnnotationList() instead.
        Specified by:
        linkedAnnotationIterator in interface IAnnotated
      • findPlateAnnotationLink

        public java.util.Set<PlateAnnotationLink> findPlateAnnotationLink​(Annotation target)
        find all ome.model.annotations.PlateAnnotationLink which have the argument as their child.
      • linkedAnnotationList

        public java.util.List<Annotation> linkedAnnotationList()
        produces a List-copy of the underlying collection. Unlike, linkedAnnotationIterator(), while using the returned List, modifications can be made to the underlying collection without throwing ConcurrentModificationException.
        Specified by:
        linkedAnnotationList in interface IAnnotated
      • eachLinkedAnnotation

        public <E> java.util.List<E> eachLinkedAnnotation​(CBlock<E> block)
        takes a CBlock and calls the block once for each ome.model.annotations.Annotation while collecting the results. If block == null, then the iterator values themselves are collected.
        Specified by:
        eachLinkedAnnotation in interface IAnnotated
      • unlinkAnnotation

        public void unlinkAnnotation​(Annotation removal)
        unlinks all ome.model.annotations.Annotation instances from this instance.
        Specified by:
        unlinkAnnotation in interface IAnnotated
      • removePlateAnnotationLink

        public void removePlateAnnotationLink​(PlateAnnotationLink link,
                                              boolean bothSides)
        removes the given PlateAnnotationLink from annotationLinks, allowing for recursion -- whether or not the removal will call unlinkPlate again if loaded.
      • setAnnotationLinksCountPerOwner

        protected void setAnnotationLinksCountPerOwner​(java.util.Map<java.lang.Long,​java.lang.Long> map)
      • getAnnotationLinksCountPerOwner

        public java.util.Map<java.lang.Long,​java.lang.Long> getAnnotationLinksCountPerOwner()
        If fetched, returns the count(*) of ome.model.annotations.PlateAnnotationLink that a user has. If unfetched, returns null. No entries in the collection should be null.
      • getName

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getName()
        Simple field ome.model.screen.Plate.name (java.lang.String)
      • setName

        public void setName​(java.lang.String name)
      • getDescription

        @Field(index=TOKENIZED) @Field(index=TOKENIZED,analyzer=@Analyzer(impl=ConfiguredAnalyzer.class),name="combined_fields")
        public java.lang.String getDescription()
        Simple field ome.model.screen.Plate.description (java.lang.String)
      • setDescription

        public void setDescription​(java.lang.String description)
      • getDetails

        public Details getDetails()
        The details of this object correspond to low-level system information. Owner, permissions, Details is always guaranteed to be non-null, unless the user actively nulls it. Every entity also contains a Detail reference, which doesn't refer to a separate table but rather to a collection of fields collected into a Hibernate "component" which is embedded in the object. HQL queries which refer to the Details component cannot directly fetch the entity like this: select o from Object join fetch o.details but rather each field of the Details instance must be explicitly joined: select o from Object join fetch o.details.owner It should also be noted that not all types have all the fields which are present on Details. For example, select e from Experimenter e join fetch e.details.owner will fail. Experimenter has no owner, for obvious reasons. Note: subclasses of this class will return a subclass of the Details type.
        Specified by:
        getDetails in interface IObject
      • setDetails

        protected void setDetails​(Details details)
      • isValid

        public boolean isValid()
        Description copied from interface: IObject
        calls the class-specific validator for this instance and returns the value from Validation.isValid()
        Specified by:
        isValid in interface IObject
      • validate

        public Validation validate()
        Description copied from interface: IObject
        calls the class-specific validator for this instance and returns the Validation object.
        Specified by:
        validate in interface IObject
        Returns:
        Validation collecting parameter.
      • newInstance

        public Plate newInstance()
      • proxy

        public Plate proxy()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • fields

        public java.util.Set<java.lang.String> fields()
        Description copied from interface: IObject
        returns a Set of field names that belong to this class
        Specified by:
        fields in interface IObject
      • retrieve

        public java.lang.Object retrieve​(java.lang.String field)
        Description copied from interface: IObject
        retrieves a value from this instance. Values for field which match a field of this instance will be delegated to the accessors. Otherwise, values will be retrieved from a lazy-loaded map filled by calls to IObject.putAt(String, Object)
        Specified by:
        retrieve in interface IObject
      • putAt

        public void putAt​(java.lang.String field,
                          java.lang.Object value)
        Description copied from interface: IObject
        stores a value in this instance. Values for field which match a field of this instance will be delegated to the accessors. Otherwise, values will be stored in a lazy-loaded map.
        Specified by:
        putAt in interface IObject
        Parameters:
        field - Field name
        value - Any object to be stored.
      • isLoaded

        public boolean isLoaded()
        Description copied from interface: IObject
        transient field (not stored in the DB) which specifies whether this object has been loaded from the DB or is only a wrapper around the ID.
        Specified by:
        isLoaded in interface IObject
      • errorIfUnloaded

        protected void errorIfUnloaded()
      • unload

        public void unload()
        Description copied from interface: IObject
        set the loaded field to false, and set all non-ID fields to null. Subsequent calls to all accessors other than getId/setId will throw an ApiUsageException
        Specified by:
        unload in interface IObject
      • getGraphHolder

        public final GraphHolder getGraphHolder()
        Description copied from interface: IObject
        retrieves the GraphHolder for this entity. If the GraphHolder has not been actively set, a new one will be instatiated.
        Specified by:
        getGraphHolder in interface IObject
        Returns:
        Non-null GraphHolder
      • throwNullCollectionException

        protected void throwNullCollectionException​(java.lang.String propertyName)