3.0.1: 2011-11-10

net.sf.basedb.core
Class Extract

java.lang.Object
  extended by net.sf.basedb.core.BasicItem<D>
      extended by net.sf.basedb.core.OwnedItem<D>
          extended by net.sf.basedb.core.SharedItem<D>
              extended by net.sf.basedb.core.CommonItem<D>
                  extended by net.sf.basedb.core.AnnotatedItem<D>
                      extended by net.sf.basedb.core.BioMaterial<D>
                          extended by net.sf.basedb.core.MeasuredBioMaterial<ExtractData>
                              extended by net.sf.basedb.core.Extract
All Implemented Interfaces:
AccessControlled, Annotatable, Identifiable, Nameable, Ownable, Registered, Removable, Shareable, Subtypable

public class Extract
extends MeasuredBioMaterial<ExtractData>

This class is used to represent extract items. An extract is created from a Sample or by combining other extracts (pooling). It is also possible to create standalone extracts, with no reference to a sample or to other extracts.

Version:
2.0
Author:
Nicklas
Last modified
$Date: 2011-08-12 09:39:05 +0200 (Fri, 12 Aug 2011) $

Field Summary
static String LABELED
          The id for the ExtractType item representing a labeled extract.
static String LIBRARY
          The id for the ExtractType item representing a library.
static Item TYPE
          The type of item represented by this class.
 
Fields inherited from class net.sf.basedb.core.BioMaterial
MAX_EXTERNAL_ID_LENGTH
 
Fields inherited from interface net.sf.basedb.core.Nameable
MAX_DESCRIPTION_LENGTH, MAX_NAME_LENGTH
 
Constructor Summary
Extract(ExtractData extractData)
           
 
Method Summary
 long countChildren(boolean extractsOnly)
          Count the number of child extracts.
 long countExtracts()
          Counts all extracts that have been created from this extract.
static Extract getById(DbControl dc, int id)
          Get an Extract item when you know the id.
 ItemQuery<Extract> getChildExtracts()
          Creates a query that returns all child (pooled) extracts that has this extracts as one of it's sources.
 ItemSubtype getItemSubtype()
          Get the subtype of the item.
static Extract getNew(DbControl dc)
          Create a new Extract item.
static Extract getNew(DbControl dc, BioPlateEventParticipant master)
          Create a new Extract item as part of a master bioplate event.
 ItemQuery<PhysicalBioAssay> getPhysicalBioAssays()
          Get a query that returns all bioassays created from this extract.
static ItemQuery<Extract> getQuery()
          Get a query that returns extracts.
 Tag getTag()
          Get the tag that has been applied to this extract in order to be able to distinguish it from other extracts on a physical bioassay.
 Item getType()
          Get the type of item represented by the object.
 Set<ItemProxy> getUsingItems()
          Get all: Child extracts created from the extract PhysicalBioAssay:s created from this extract DerivedBioAssay:s referencing the extract RawBioAssay:s referencing the extract
 boolean isUsed()
          Check that: no PhysicalBioAssay:s has been created from this item no Extract:s has been created from this item no DerivedBioAssay is referencing this item no RawBioAssay is referencing this item
 void setTag(Tag tag)
          Set the tag that was applied to this extract in order to be able to distinguish it from other extracts on a physical bioassay.
 
Methods inherited from class net.sf.basedb.core.MeasuredBioMaterial
getAnnotatableParents, getBioWell, getCreationEvent, getEntryDate, getEvents, getOriginalQuantity, getParent, getParentType, getProtocol, getRemainingQuantity, hasSingleParent, isInWell, isLockedInWell, newEvent, newEvent, onBeforeCommit, setBioPlateEventParticipant, setBioWell, setOriginalQuantity, updateRemainingQuantity
 
Methods inherited from class net.sf.basedb.core.BioMaterial
getChildCreationEvents, getExternalId, setExternalId, setItemSubtype
 
Methods inherited from class net.sf.basedb.core.AnnotatedItem
getAnnotationSet, isAnnotated, removeAnnotations, toTransferable
 
Methods inherited from class net.sf.basedb.core.CommonItem
getDescription, getName, isRemoved, setDescription, setName, setRemoved, toTransferable
 
Methods inherited from class net.sf.basedb.core.SharedItem
getItemKey, getProjectKey, initPermissions, isShared, setItemKey, setProjectKey, toTransferable
 
Methods inherited from class net.sf.basedb.core.OwnedItem
getOwner, isOwner, setOwner, takeOwnership, toTransferable
 
Methods inherited from class net.sf.basedb.core.BasicItem
addUsingItems, addUsingItems, checkPermission, equals, getData, getDbControl, getId, getPermissions, getPluginPermissions, getSessionControl, getVersion, hashCode, hasPermission, isDetached, isInDatabase, onAfterCommit, onAfterInsert, onRollback, setDbControl, setProjectDefaults, toString, toTransferable, validate
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.sf.basedb.core.Identifiable
getId, getVersion
 
Methods inherited from interface net.sf.basedb.core.AccessControlled
checkPermission, getPermissions, hasPermission
 
Methods inherited from interface net.sf.basedb.core.Ownable
getOwner, isOwner, setOwner, takeOwnership
 

Field Detail

TYPE

public static final Item TYPE
The type of item represented by this class.

See Also:
Item.EXTRACT, getType()

LABELED

public static final String LABELED
The id for the ExtractType item representing a labeled extract.

Since:
3.0
See Also:
Constant Field Values

LIBRARY

public static final String LIBRARY
The id for the ExtractType item representing a library.

Since:
3.0
See Also:
Constant Field Values
Constructor Detail

Extract

Extract(ExtractData extractData)
Method Detail

getNew

public static Extract getNew(DbControl dc)
                      throws BaseException
Create a new Extract item.

Parameters:
dc - The DbControl which will be used for permission checking and database access
Returns:
The new Extract item
Throws:
BaseException - If there is an error

getNew

public static Extract getNew(DbControl dc,
                             BioPlateEventParticipant master)
                      throws BaseException
Create a new Extract item as part of a master bioplate event.

Parameters:
dc - The DbControl which will be used for permission checking and database access
master - The master bioplate event participant or null
Returns:
The new Extract item
Throws:
BaseException - If there is an error
Since:
2.17

getById

public static Extract getById(DbControl dc,
                              int id)
                       throws ItemNotFoundException,
                              PermissionDeniedException,
                              BaseException
Get an Extract item when you know the id.

Parameters:
dc - The DbControl which will be used for permission checking and database access.
id - The id of the item to load
Returns:
The Extract item
Throws:
ItemNotFoundException - If an item with the specified id is not found
PermissionDeniedException - If the logged in user doesn't have read permission to the item
BaseException - If there is another error

getQuery

public static ItemQuery<Extract> getQuery()
Get a query that returns extracts.

Returns:
An ItemQuery object.

getType

public Item getType()
Description copied from interface: Identifiable
Get the type of item represented by the object. The returned value is one of the values defined in the Item enumeration.

Returns:
A value indicating the type of item

getItemSubtype

@SubtypableRelatedItems(value={PROTOCOL,HARDWARE,TAG,SAMPLE,EXTRACT})
public ItemSubtype getItemSubtype()
Description copied from interface: Subtypable
Get the subtype of the item.

Specified by:
getItemSubtype in interface Subtypable
Overrides:
getItemSubtype in class MeasuredBioMaterial<ExtractData>
Returns:
A subtype of null if not set
See Also:
SubtypableRelatedItems

isUsed

public boolean isUsed()
               throws BaseException
Check that:

Overrides:
isUsed in class MeasuredBioMaterial<ExtractData>
Returns:
TRUE if this item is used, FALSE otherwise
Throws:
BaseException - If not able to tell if item is used or not.
See Also:
BasicItem.getUsingItems()

getUsingItems

public Set<ItemProxy> getUsingItems()
Get all:

getTag

public Tag getTag()
Get the tag that has been applied to this extract in order to be able to distinguish it from other extracts on a physical bioassay.

Returns:
A tag or null if the extract is not tagged
Since:
3.0

setTag

public void setTag(Tag tag)
Set the tag that was applied to this extract in order to be able to distinguish it from other extracts on a physical bioassay.

Parameters:
tag - The tag, or null if the extract is not tagged
Since:
3.0

getChildExtracts

public ItemQuery<Extract> getChildExtracts()
Creates a query that returns all child (pooled) extracts that has this extracts as one of it's sources.

Returns:
A query
Since:
2.10

countExtracts

public long countExtracts()
                   throws BaseException
Counts all extracts that have been created from this extract. The count includes extracts that the logged in user doesn't have access to.

Returns:
The number of extracts
Throws:
BaseException - If there is some kind of error.
Since:
2.16

countChildren

public long countChildren(boolean extractsOnly)
Count the number of child extracts. Since an extract can only have other extracts as children, this method always return 0 if extractsOnly = false.

Specified by:
countChildren in class BioMaterial<ExtractData>
Parameters:
extractsOnly - If TRUE, the count is for biomaterials of the same type, if FALSE the count is for biomaterials of the child type
Since:
2.16

getPhysicalBioAssays

public ItemQuery<PhysicalBioAssay> getPhysicalBioAssays()
Get a query that returns all bioassays created from this extract.

Returns:
An ItemQuery object

3.0.1: 2011-11-10