Class BioSource

All Implemented Interfaces:
AccessControlled, Annotatable, Identifiable, Listable, Nameable, Ownable, Registered, Removable, Shareable, Subtypable

public class BioSource
extends BioMaterial
implements Registered
This class represent biosource items. A biosource has information about the source of material used in an experiment, such as a cell line or patient. A biosource can be used to create Sample:s.
Version:
2.0
Author:
Nicklas
Last modified
$Date: 2017-05-22 14:35:27 +0200 (må, 22 maj 2017) $
  • Field Details

  • Constructor Details

  • Method Details

    • getNew

      public static BioSource getNew​(DbControl dc) throws BaseException
      Create a new BioSource item.
      Parameters:
      dc - The DbControl which will be used for permission checking and database access
      Returns:
      The new BioSource item
      Throws:
      BaseException - If there is an error
    • getById

      public static BioSource getById​(DbControl dc, int id) throws ItemNotFoundException, PermissionDeniedException, BaseException
      Get an BioSource 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 BioSource 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<BioSource> getQuery()
      Get a query that returns biosource items.
      Returns:
      An ItemQuery object.
    • getData

      BioSourceData getData()
      Description copied from class: BasicItem
      Get the BasicData object that holds all data for this item.
      Overrides:
      getData in class BioMaterial
    • 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.
      Specified by:
      getType in interface Identifiable
      Returns:
      A value indicating the type of item
    • getEntryDate

      public Date getEntryDate()
      Description copied from interface: Registered
      Get the date that the item was registered in the database.
      Specified by:
      getEntryDate in interface Registered
      Returns:
      A date or null if this is not known
    • setEntryDate

      public void setEntryDate​(Date entryDate)
      Description copied from interface: Registered
      Set the date the entry was registered in the database. Implementations should only allow this property to be set before the item is first stored in the database. The intention of this method is to facilitate export/import of data between server.
      Specified by:
      setEntryDate in interface Registered
      Parameters:
      entryDate - A date or null to use today's date
    • isUsed

      public boolean isUsed() throws BaseException
      Check that:
      • no Sample has been created from this biosource
      Overrides:
      isUsed in class BasicItem
      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:
      • Sample:s created from this biosource
      Overrides:
      getUsingItems in class BasicItem
      Returns:
      A set containing proxies for the items, or an empty set if no items are using this item
      Since:
      2.2
      See Also:
      BasicItem.addUsingItems(Set, Item, org.hibernate.query.Query)
    • newSample

      public Sample newSample() throws PermissionDeniedException, BaseException
      Create a new Sample from this biosource.
      Returns:
      The new Sample item
      Throws:
      PermissionDeniedException - If the logged in user doesn't have use permission for this biosource
      BaseException - If there is another error
    • getSamples

      public ItemQuery<Sample> getSamples()
      Get a query that returns all samples created from this biosource.
      Returns:
      An ItemQuery object
    • countSamples

      public long countSamples() throws BaseException
      Counts all samples that have been created from this biosource. The count includes samples that the logged in user doesn't have access to.
      Returns:
      The number of samples
      Throws:
      BaseException - If counting the samples fails.
    • countChildren

      public long countChildren​(boolean pooled)
      Count the number of child samples. Since biosources can't be pooled this method always return 0 if pooled=TRUE
      Specified by:
      countChildren in class BioMaterial
      Parameters:
      pooled - 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