public class Software extends AnnotatedItem implements Registered, Subtypable
Modifier and Type | Field and Description |
---|---|
static String |
ALIGNMENT
The id for the
SoftwareType item representing software
used for aligning sequenced data against a known reference database. |
static String |
FEATURE_EXTRACTION
The id for the
SoftwareType item representing the
softwaretype "feature extraction software". |
static int |
MAX_VERSIONSTRING_LENGTH
The maximum length of the version variable that can be stored in the
database.
|
private static Item |
TYPE
The type of item represented by this class.
|
MAX_DESCRIPTION_LENGTH, MAX_NAME_LENGTH
Constructor and Description |
---|
Software(SoftwareData data)
Creates a new software item.
|
Modifier and Type | Method and Description |
---|---|
Set<Annotatable> |
getAnnotatableParents()
Get all parents objects which are annotatable and the logged in
user has read permission to.
|
static Software |
getById(DbControl dc,
int id)
Get a
Software item when you know the ID. |
(package private) SoftwareData |
getData()
Get the
BasicData object that holds all data for this item. |
static String |
getDefaultSystemId(Item itemType)
Get the system id for the software subtype that should be used on an item
that doesn't have a subtype.
|
Date |
getEntryDate()
Get the date that the item was registered in the database.
|
ItemSubtype |
getItemSubtype()
Get the subtype of the item.
|
static Software |
getNew(DbControl dc)
Create a new
Software item. |
static ItemQuery<Software> |
getQuery()
Get a query configured to retrieve software.
|
Item |
getType()
Get the type of item represented by the object.
|
Set<ItemProxy> |
getUsingItems()
Get all:
RawBioAssay :s created with this software
DerivedBioAssay : created with this software
|
String |
getVersionString()
Get the versionstring of this
Software item. |
boolean |
isUsed()
Check if:
a RawBioAssay was created with this software
a DerivedBioassay was created with this software
|
void |
setItemSubtype(ItemSubtype subtype)
Set the subtype on the item.
|
void |
setVersionString(String versionString)
Set the versionstring for this
Software item. |
getAnnotationSet, getProtocol, isAnnotated, removeAnnotations
getDescription, getName, getRemovedBy, isRemoved, setDescription, setName, setRemoved
getItemKey, getProjectKey, initPermissions, isShared, onBeforeCommit, setItemKey, setProjectKey
getOwner, isOwner, setOwner, takeOwnership
addAnnotatableParents, addUsingItems, addUsingItems, breakCircularReferences, checkBatchAnnotatableUsage, checkPermission, equals, getBasicData, getDbControl, getId, getPermissions, getPluginPermissions, getSessionControl, getVersion, hashCode, hasPermission, isDetached, isInDatabase, onAfterCommit, onAfterInsert, onRollback, setDbControl, setProjectDefaults, toString, validate
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getId, getVersion
checkPermission, getPermissions, hasPermission
getOwner, isOwner, setOwner, takeOwnership
private static final Item TYPE
Item.SOFTWARE
,
getType()
public static final String FEATURE_EXTRACTION
SoftwareType
item representing the
softwaretype "feature extraction software".public static final String ALIGNMENT
SoftwareType
item representing software
used for aligning sequenced data against a known reference database.public static final int MAX_VERSIONSTRING_LENGTH
setVersionString(String)
method to avoid
exceptions.Software(SoftwareData data)
data
- the datapublic static String getDefaultSystemId(Item itemType)
Subtypable
items with a
null ItemSubtype
and all other non-subtypable items which can be
linked to a software.itemType
- The item typepublic static Software getNew(DbControl dc) throws BaseException
Software
item.dc
- The DbControl
which will be used for
permission checking and database access.Software
itemBaseException
- This exception is thrown if there is another
errorpublic static Software getById(DbControl dc, int id) throws ItemNotFoundException, PermissionDeniedException, BaseException
Software
item when you know the ID.dc
- The DbControl
which will be used for
permission checking and database access.id
- The ID of the item to loadSoftware
itemItemNotFoundException
- If an item with the specified ID is not foundPermissionDeniedException
- If the logged in user doesn't
have Permission.READ
permission to the itemBaseException
- If there is another errorpublic static ItemQuery<Software> getQuery() throws BaseException
ItemQuery
objectBaseException
- If getting the query fails.SoftwareData getData()
BasicItem
BasicData
object that holds all data for this item.getData
in class AnnotatedItem
public Item getType()
Identifiable
Item
enumeration.getType
in interface Identifiable
public Date getEntryDate()
Registered
getEntryDate
in interface Registered
public Set<Annotatable> getAnnotatableParents()
Annotatable
Subtypable
item that has a subtype
with the ItemSubtype.getPushAnnotations()
flag set.getAnnotatableParents
in interface Annotatable
public ItemSubtype getItemSubtype()
Subtypable
getItemSubtype
in interface Subtypable
SubtypableRelatedItems
public void setItemSubtype(ItemSubtype subtype)
Subtypable
setItemSubtype
in interface Subtypable
subtype
- A subtype or nullItemSubtype.setOnItem(Subtypable)
public boolean isUsed() throws BaseException
isUsed
in class BasicItem
BaseException
- If not able to tell if item is used or not.BasicItem.getUsingItems()
public Set<ItemProxy> getUsingItems()
RawBioAssay
:s created with this software
DerivedBioAssay
: created with this software
getUsingItems
in class BasicItem
BasicItem.addUsingItems(Set, Item, org.hibernate.Query)
public String getVersionString()
Software
item.public void setVersionString(String versionString) throws StringTooLongException, PermissionDeniedException
Software
item. The value
must not be longer than the value specified by
the MAX_VERSIONSTRING_LENGTH
constant.versionString
- The new version for this item, or null if not knownStringTooLongException
- If the version is longer then MAX_VERSIONSTRING_LENGTH
PermissionDeniedException
- If the logged in user don't have write permission on this item