Package ome.model
Interface IObject
-
- All Superinterfaces:
Filterable
,java.io.Serializable
- All Known Subinterfaces:
IAnnotated
,IAnnotationLink
,IEnum
,IGlobal
,ILink
,IMutable
- All Known Implementing Classes:
AcquisitionMode
,AdminPrivilege
,AffineTransform
,Annotation
,AnnotationAnnotationLink
,Arc
,ArcType
,BasicAnnotation
,Binning
,BooleanAnnotation
,Channel
,ChannelAnnotationLink
,ChannelBinding
,ChecksumAlgorithm
,CodomainMapContext
,CommentAnnotation
,ContrastMethod
,ContrastStretchingContext
,Correction
,Dataset
,DatasetAnnotationLink
,DatasetImageLink
,DBPatch
,Detector
,DetectorAnnotationLink
,DetectorSettings
,DetectorType
,Dichroic
,DichroicAnnotationLink
,DimensionOrder
,DoubleAnnotation
,Ellipse
,Event
,EventLog
,EventType
,Experiment
,Experimenter
,ExperimenterAnnotationLink
,ExperimenterGroup
,ExperimenterGroupAnnotationLink
,ExperimentType
,ExternalInfo
,Family
,Filament
,FilamentType
,FileAnnotation
,Fileset
,FilesetAnnotationLink
,FilesetEntry
,FilesetJobLink
,Filter
,FilterAnnotationLink
,FilterSet
,FilterSetEmissionFilterLink
,FilterSetExcitationFilterLink
,FilterType
,Folder
,FolderAnnotationLink
,FolderImageLink
,FolderRoiLink
,Format
,GenericExcitationSource
,GroupExperimenterMap
,Illumination
,Image
,ImageAnnotationLink
,ImagingEnvironment
,Immersion
,ImportJob
,IndexingJob
,Instrument
,InstrumentAnnotationLink
,IntegrityCheckJob
,Job
,JobOriginalFileLink
,JobStatus
,Label
,Laser
,LaserMedium
,LaserType
,LightEmittingDiode
,LightPath
,LightPathAnnotationLink
,LightPathEmissionFilterLink
,LightPathExcitationFilterLink
,LightSettings
,LightSource
,LightSourceAnnotationLink
,Line
,Link
,ListAnnotation
,LogicalChannel
,LongAnnotation
,MapAnnotation
,Mask
,Medium
,MetadataImportJob
,MicrobeamManipulation
,MicrobeamManipulationType
,Microscope
,MicroscopeType
,Namespace
,NamespaceAnnotationLink
,Node
,NodeAnnotationLink
,NumericAnnotation
,Objective
,ObjectiveAnnotationLink
,ObjectiveSettings
,OriginalFile
,OriginalFileAnnotationLink
,OTF
,ParseJob
,Path
,PermDetails
,PhotometricInterpretation
,PixelDataJob
,Pixels
,PixelsOriginalFileMap
,PixelsType
,PlaneInfo
,PlaneInfoAnnotationLink
,PlaneSlicingContext
,Plate
,PlateAcquisition
,PlateAcquisitionAnnotationLink
,PlateAnnotationLink
,Point
,Polygon
,Polyline
,Project
,ProjectAnnotationLink
,ProjectDatasetLink
,ProjectionAxis
,ProjectionDef
,ProjectionType
,Pulse
,QuantumDef
,Reagent
,ReagentAnnotationLink
,Rectangle
,RenderingDef
,RenderingModel
,ReverseIntensityContext
,Roi
,RoiAnnotationLink
,Screen
,ScreenAnnotationLink
,ScreenPlateLink
,ScriptJob
,Session
,SessionAnnotationLink
,Shape
,ShapeAnnotationLink
,Share
,ShareMember
,StageLabel
,StatsInfo
,TagAnnotation
,TermAnnotation
,TextAnnotation
,Thumbnail
,ThumbnailGenerationJob
,TimestampAnnotation
,TransmittanceRange
,TypeAnnotation
,UploadJob
,Well
,WellAnnotationLink
,WellReagentLink
,WellSample
,XmlAnnotation
public interface IObject extends Filterable, java.io.Serializable
central model interface. All entities that the backend can persist to the DB implement this interface. (Note: value objects likeDetails
get saved to the DB, but only embedded in other entites.- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Set
fields()
returns a Set of field names that belong to this classDetails
getDetails()
Value (i.e.GraphHolder
getGraphHolder()
retrieves theGraphHolder
for this entity.java.lang.Long
getId()
primary key of this object.boolean
isLoaded()
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.boolean
isValid()
calls the class-specific validator for this instance and returns the value fromValidation.isValid()
void
putAt(java.lang.String field, java.lang.Object value)
stores a value in this instance.java.lang.Object
retrieve(java.lang.String field)
retrieves a value from this instance.void
setId(java.lang.Long id)
usually unneeded.void
unload()
set the loaded field to false, and set all non-ID fields to null.Validation
validate()
calls the class-specific validator for this instance and returns theValidation
object.-
Methods inherited from interface ome.util.Filterable
acceptFilter
-
-
-
-
Method Detail
-
getId
java.lang.Long getId()
primary key of this object. Before the session is flushed, this value may be null.- Returns:
- Long primary key. May be null.
-
setId
void setId(java.lang.Long id)
usually unneeded. Ids are managed by the backend.- Parameters:
id
- Long value for this id.
-
getDetails
Details getDetails()
Value (i.e. not entity) which is available on all rows in the database. Low-level "details" such as security, ownership, auditing are managed here. When setting values onDetails
, it is important to realize that most of the values are managed by the backend and may be replaced. For example, a user does not have permission to change the owner of an object, not even when owned by that user. To replace all of the values from an existingDetails
instance, useDetails.copy(Details)
orDetails.shallowCopy(Details)
-
isLoaded
boolean isLoaded()
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.
-
unload
void unload() throws ApiUsageException
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- Throws:
ApiUsageException
-
isValid
boolean isValid()
calls the class-specific validator for this instance and returns the value fromValidation.isValid()
-
validate
Validation validate()
calls the class-specific validator for this instance and returns theValidation
object.- Returns:
- Validation collecting parameter.
-
retrieve
java.lang.Object retrieve(java.lang.String field)
retrieves a value from this instance. Values forfield
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 toputAt(String, Object)
-
putAt
void putAt(java.lang.String field, java.lang.Object value)
stores a value in this instance. Values forfield
which match a field of this instance will be delegated to the accessors. Otherwise, values will be stored in a lazy-loaded map.- Parameters:
field
- Field namevalue
- Any object to be stored.
-
fields
java.util.Set fields()
returns a Set of field names that belong to this class
-
getGraphHolder
GraphHolder getGraphHolder()
retrieves theGraphHolder
for this entity. If the GraphHolder has not been actively set, a new one will be instatiated.- Returns:
- Non-null GraphHolder
-
-