Last update: 2011-06-23

org.proteios.core
Class Protocol

java.lang.Object
  extended by org.proteios.core.BasicItem<D>
      extended by org.proteios.core.OwnedItem<D>
          extended by org.proteios.core.SharedItem<D>
              extended by org.proteios.core.CommonItem<ProtocolData>
                  extended by org.proteios.core.Protocol
All Implemented Interfaces:
AccessControlled, FileAttachable, Identifiable, Nameable, Ownable, Removable, Shareable

public class Protocol
extends CommonItem<ProtocolData>
implements FileAttachable

This class is used to represent individual protocol items and information about them.

Version:
2.0
Author:
enell

Field Summary
static Item TYPE
          The type of item represented by this class.
 
Fields inherited from interface org.proteios.core.Nameable
MAX_DESCRIPTION_LENGTH, MAX_NAME_LENGTH
 
Method Summary
static Protocol getById(DbControl dc, int id)
          Get a Protocol item when you know the ID.
 File getFile()
          Get the file that is attached to the item.
 ProtocolType getProtocolType()
          Get the associated ProtocolType item.
static ItemQuery<Protocol> getQuery()
          Get a query configured to retrieve protocols.
 Item getType()
          Get the type of item represented by the object.
 boolean isUsed()
          Check if this protocol is used by: a BioMaterialEvent
 void setFile(File file)
          Attach a file to the item.
 void setProtocolType(ProtocolType protocolType)
          Set the protocol type of this Protocol item.
 
Methods inherited from class org.proteios.core.CommonItem
getDescription, getName, isRemoved, setDescription, setName, setRemoved
 
Methods inherited from class org.proteios.core.SharedItem
getItemKey, getProjectKey, isShared, setItemKey, setProjectKey
 
Methods inherited from class org.proteios.core.OwnedItem
getOwner, setOwner
 
Methods inherited from class org.proteios.core.BasicItem
checkPermission, equals, getDbControl, getId, getPermissions, getSessionControl, getVersion, hashCode, hasPermission, isDetached, isInDatabase, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.proteios.core.Identifiable
getId, getVersion
 
Methods inherited from interface org.proteios.core.AccessControlled
checkPermission, hasPermission
 
Methods inherited from interface org.proteios.core.Ownable
getOwner, setOwner
 

Field Detail

TYPE

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

See Also:
Item.PROTOCOL, getType()
Method Detail

getById

public static Protocol getById(DbControl dc,
                               int id)
                        throws ItemNotFoundException,
                               PermissionDeniedException,
                               BaseException
Get a Protocol 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 Protocol item
Throws:
ItemNotFoundException - This exception is thrown if an item with the specified ID is not found
PermissionDeniedException - This exception is thrown if the logged in user doesn't have READ permission to the item
BaseException - This exception is thrown if there is another error

getQuery

public static ItemQuery<Protocol> getQuery()
Get a query configured to retrieve protocols.

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.

Specified by:
getType in interface Identifiable
Returns:
A value indicating the type of item

getFile

public File getFile()
             throws PermissionDeniedException,
                    BaseException
Description copied from interface: FileAttachable
Get the file that is attached to the item.

Specified by:
getFile in interface FileAttachable
Returns:
A File item, or null if no file is attached
Throws:
PermissionDeniedException - If the logged in user doesn't have read permission for the file
BaseException - If there is another error

setFile

public void setFile(File file)
             throws PermissionDeniedException
Description copied from interface: FileAttachable
Attach a file to the item.

Specified by:
setFile in interface FileAttachable
Parameters:
file - The file to attach to the item
Throws:
PermissionDeniedException - If the logged in user doesn't have use permission for the file or write permission for the item

isUsed

public boolean isUsed()
               throws BaseException
Check if this protocol is used by:

Specified by:
isUsed in class BasicItem<ProtocolData>
Returns:
TRUE if this item is used, FALSE otherwise
Throws:
BaseException

getProtocolType

public ProtocolType getProtocolType()
                             throws PermissionDeniedException,
                                    BaseException
Get the associated ProtocolType item. All Protocol items must have a type.

Returns:
The ProtocolType item
Throws:
PermissionDeniedException - If the logged in user doesn't have Permission.READ permission for the protocol type
BaseException - If there is any error

setProtocolType

public void setProtocolType(ProtocolType protocolType)
                     throws PermissionDeniedException,
                            InvalidUseOfNullException
Set the protocol type of this Protocol item. This parameter mustn't be null.

Parameters:
protocolType - The new ProtocolType
Throws:
PermissionDeniedException - If the logged in user doesn't have Permission.WRITE permission to this protocol or Permission.USE permission for the protocol type
InvalidUseOfNullException - If protocoltype is null

Last update: 2011-06-23