Package net.sf.basedb.core
package net.sf.basedb.core
This package contains the core business logic of BASE.
-
ClassDescriptionThis is interface is an extension to the
ProgressReporter
interface.This is an abstract class for batchers that are connected to a singleDbControl
object.An abstract implementation of theEntityQuery
interface.An abstract implementation of theHqlQuery
interface.An abstract implementation of theQuery
interface.This is a list of the result from a query.An abstract implementation of theSqlQuery
interface.This interface should be implemented by a class representing items which requires the logged in user to have permission to access them.This exception is thrown if you try to log in with an account that has expired.This exception is thrown if you try to log in but are already logged in.This interface is implemented by all items which can be annotated.This interface is implemented by items that can be used to hold annotations that are intended for other items.This is a helper class for items that need to implement theAnnotatable
interface.This class represents an annotation.The annotation source.Batcher implementation for adding, updating and removing multiple annotations to a large number of items in a single transaction while keeping the memory usage as low as possible.A flag indicating what type of change that was made to an annotation as a result of callingAnnotationBatcher.setValues(AnnotationType, List, Unit, boolean)
Holds information about an annotation for the current item.Batcher implementation for inserting into tables.Batcher implementation for updating and deleting from tables.Restricts a query using annotation values between a low and high value.Restricts a query using annotation values that exists in a set of given values.Base class for creating restrictions based on annotations.Options that specify which annotations to consider when searching.An annotation set is the container for all annotations on an item.Restriction for matching project-specific annotations against the currently active project.Restricts a query using annotation values with a simple expression:annotation operator value
.Objects of this class defines an annotation type.Objects of this class defines an annotation type category.An any-to-any link is a named, directed link from one item to another item.Helper class for faster loading of any-to-any links between items.This class represents the BASE application and is the starting point for all client applications.APinger
is an object that is used to protect another object from timing out by automatically pinging it.Startup optins when starting the BASE application.This class represents the making of a new batch of microarray slides of a particular design.An array design is a description of the design of a microarray slide.This class represents a physical microarray slide.Gives authentication implementations limited access to the database.This is the base class for exceptions in BASE.BasicBatcher<D extends BatchableData>This is an abstract class for batching functionallity.An abstract base class for all items which are child items to aBasicItem
parent item.This is the root superclass of all item classes.Holds information about a batchable property.The basic interface which all batchers must implement.Utility class for batching information.Represents the current intensities of raw data after some transformation has been applied to it.A bioassayset represents the current intensities of the raw data after someTransformation
has been applied to it.This class represents an event in the life of aMeasuredBioMaterial
.The type of the event.Class for holding information about a parent biomaterial that was used in an event that created a child biomaterial or a physical bioassay.This class is represents physical bio-plates.A bioplate event represents something that happened simultaneously to the biomaterial on one or more bioplates.Holds information about a bioplate that is participating in a bioplate event.The type of a bioplate event defines what happened in the event.This class represents the type of a bio-plate.This class represent biosource items.A biowell is located on aBioPlate
and contains aMeasuredBioMaterial
.The lock mode for a well is determined by the plate's bio plate type.ABlockInfo
object is used to represent the uniqe identifiers of anArrayDesignBlock
.This class represent a parameter type that is a boolean.Holds information about a single transaction.An abstract base class for all items which are child items to aShareable
parent item.This class represents a registered client application.This class is used to represent a setting for specific client application.Represents a reporter property that can be cloned to a per-experiment table in the dynamic database.An interface that indicates that a query may be used together with cloned reporter information.This class keeps coloring information for items which can be colored when values are displayed in a client application.Use this class to access the configuration settings for BASE.This exception is thrown by theConfig
class if there is a problem with finding or loading the configuration settings.This exception is thrown when trying to use aDbControl
object that has been closed.This is the base tagging interface for items that needs special attention by theDbControl
object whenDbControl.commit()
is called.Exceptions of this type are thrown when there is an error from the database.A data cube is the main unit for an experiment to store analysed data.Select data from Dynamic#RawParents table.Represents the column coordinate in a data cube.Represents a set of extra value in a data cube.This represents a filter in a datacube.This represents the layer coordinate in a data cube.This class is used to represent types of files that are used to hold data instead of importing the data into into the database.An implementation of theQuery
interface that returns data objects.DataResultIterator<I extends BasicData>Return the results of aDataQuery
as an iterator.This exception is thrown when parsing a string into a date failed.This class represent a parameter type that is a date.Utility methods that will make it easier to handle date values.ADbControl
object is the main object used for communicating with the database.Main purpose is to write a warning to the log file in case some user code that created a DbControl instance never called the close() method before the DbControl became uncreachable.Whenever we modify the parent items to a derived bioassay, we must make sure that the physical bioassays for all child items are synchronized with the same changes.This exception is thrown when trying to use an item that has been detached from theDbControl
that manages it.This exception can be thrown when a user is trying to login from a device that has not been verified.This is used to represent directory items.Exception that is thrown when a value is not found among a set of allowed values, for example, when setting an annotation value.This interface is implemented by items that can use a lot of disk space.This class is used to represent the disk usage ofDiskConsumable
items.Get disk usage statistics for the BASE server.This class represent a parameter type that is a double.Transactional action that can drop a table from the dynamic database after a successful commit and/or rollback.Represents a query for extra values in the dynamic database.Represents a join between two virtual tables in a dynamic query:leftTable JOIN rightTable ON columns
.Represents a query for position information against the dynamic database.This class collectsAutoJoiner
:s forDynamicPositionQuery
queries.Joiner for extra values.Joiner for reportersAuto joiner for reporter lists.Represents a query against the dynamic database.Represents a query for raw data in a "dynamic" way.Auto joiner for raw bioassays.Auto joiner for reporters.Auto joiner for reporter lists.Represents a query for reporter data in a "dynamic" way.Auto joiner for master reporter table.Auto joiner for reporter lists.Creates a restriction that compares a dynamic column with a constant value:tableAlias.column = value
orqueryRootAlias.column = value
An iterator view of the result of anAbstractSqlQuery
.Represents a query for spot information in the dynamic database.This class collectsAutoJoiner
:s forDynamicSpotQuery
queries.Joiner for extra values.Joiner for raw data.Joiner for reportersJoiner for reporter lists.An experiment is the starting point of the analysis in BASE.This class is used for reading XML files with information about extended properties.Holds information about an extended property for a class.This class is used to interface with Hibernate for extended properties.This class implements the HibernateGetter
andSetter
interfaces.Used to create links from extended property values.This class is used to represent extract items.Represents extra values attached to aBioAssaySet
.Defines which coordinates in the data cube the extra values are attached to.Represents the value of an extra value in a dynamic query:alias.value
.Represents a join to an extra value in a dynamic query:leftTable JOIN extraValueTable ON ...
Defines extra values that can be calculated by plugins or some other application and inserted as part of aBioAssaySet
.Implements an API for simple and fast loading of annotation values optimized for situations when a single annotation is needed for many (=thousands) of items.Holds information about a single annotation value.Iterator implementation that splits the query into multiple calls depending on the max number of parameters that can be used in a query.This is a utility class for Features.Batcher class for Features or AffyFeatures.Represents the coordinate of a feature on an array design.This enumeration defines constants that are used to specify which method to use for identifying features on an array design.This class is used to represent individual file items and information about them.AFileAttachable
item is an item that can have aFile
attached to it.This class represent a parameter type that is a file.This class represents a file server that is used to store external files.A file set is the container for files that have been attach to an item to hold data instead of importing it to the database.This class represents a file that is member of a file set.This interface is implemented by items that can use files instead of the database for storing data.Utility class working withFileStoreEnabled
items.Batcher class for filtered bioassaysets.This class represent a parameter type that is a float.This class represents a formula.The average method used for the values of this formula.The parser used to parse the formula.The type of formula indicats in which situations it can be used.This class is used to represent a global default setting.This class is used to represent groups.A runtime filter implementation that limits a query to only return groups where the logged in user is a member unless the logged in user has generic read permission.This class is used to specify permissions to share an item to groups.This class is used to represent individual hardware items and information about them.Restricts a query by the presence of absence of an annotation.This class is used to represent a help text for a client application.This class collects most of the functionality we need for using Hibernate.Helper class for defining filters at runtime.This class collectsAutoJoiner
:s forHqlQuery
queries.Joiner for annotations.Joiner for reporter lists.AnIdentifiable
item is an item which has anid
atype
and aversion
.This enumeration defines constants that are used to specify which items to include in a query.This class contains static methods used to install items into an empty database.This class represent a parameter type that is an integer.Utility methods that will make it easier to implement data validation for integer attributes.Holds information about the formulas used to calculate intensities from a raw data spot.Gives information in what way spot intensities has been transformed before they were stored in the database.A simple implementation of a job queue that executes jobs in order of priority and longest waiting time.Our own keyring containing the permissions we need to execute the jobs.Exceptions of this type are thrown when invalid data is encountered.Exceptions of this type are thrown when user tries to log in, but the password is incorrect.This exception is thrown when BASE is trying to parse a path which is invalid.Exceptions of this type are thrown when aValidationAction
has detected that a file related to the main file is invalid.This exception is thrown when an object field or a parameter that mustn't be null is set to null.This class defines constants for various items in BASE.Helper class to make it easier to set up the defined permissions.This exception is thrown when trying to save an object and another object with the same ID already exists.This item is a helper class for client applications when they need to store information about the current context for plugins that needs to find out the current context of the running client application.Parameter options forItemContext.setSubCategory(AnnotationTypeCategory, AddFilter)
Holds a pair of filter.Enumeration used to specify the sort direction.This exception is thrown when trying delete an item that is used (reference to) by some other item or items.This class is used to get information about which users and groups aShareable
item has been shared to.This class represents a list of items.Handles items that should be added as members to the list, but since they were created in the same transaction doesn't have any ID until later in the commit phase.Options for synchronizing an existing item list with a current settings in anItemContext
.This exception is thrown when trying to save an item to the database that has been updated (or deleted) by another process in the meantime.This exception is thrown when trying to load an item from the database that does not exist.ItemParameterType<T extends BasicItem>This class represent a parameter type that is an object derived fromBasicData
.An implementation of theQuery
interface that returns item objects.ItemResultIterator<I extends BasicItem>Return the results of anItemQuery
as an iterator.ItemResultList<I extends BasicItem>Return the results of anItemQuery
as a list.Item subtypes can be used to classify items into sub-categories.This class represents a specificDataFileType
that is associated with an item subtype.This class represents the execution of a job.A rough estimate of the execution time of a job.Implements the ProgressReporter interface and stores the percentage completed for the current job.Our own keyring containing the permissions signal handlers may need to update job status, eq.The status of a job.The type of job.This class represents a job agent, which is a program running in another virtual machine on the same or a different server.This class contains a job agent's settings for a specific plugin.This is the base class for keys.Objects of this class holds information about a user's access permissions, group and role membership.This class is used to represent a kit of reagents and other stuff used in the lab process.Tagging interface for items that can be put in anItemList
.This enumeration defines constants that are used to specify different file storage locations.Gives information about the current transaction and gives log implementations limited access to the database.Exceptions of this type are thrown when the BASE server uses an external authentication plug-in and it is not clear if the login or password is causing the failure.Utility class for LOG4J logging.This class represent a parameter type that is a long.Batcher class for inserting parent mapping information in the dynamic database.An expression representing the mean value of property of a raw data spot.This class is the base class for measured biomaterial items.Transaction handler for updating the remaining quantity of a biomaterial based on the sum of the used quantity in this transaction.This class represents a message.A runtime filter implementation that limits a query to only return messages for the currently logged in user unless the logged in user has generic read permission.Metadata<C>Utility methods for retreiving metadata about items.Property path implementation that converts a BasicData object to a BasicItem.Property path implementation that converts a BasicItem to a BasicData object.Property path implementation which wraps a collection inside an unmodifiable collection.Property path implementation that combines a list of property paths to create a long chain.Property path implementation which gets a value from a component.Property path implementation clones a Date.Property path implementation which gets a value from an entity.Property path implementation that evicts the selected item from the Hibernate first-level cache.Property path implementation which gets the id from an entity.Property path implementation which wraps a map inside an unmodifiable map.Property path implementation that does nothing.Contract for getting the value of a specific property for an item.Property path implementation that converts a ReporterScore to a ReporterListScoreData object.Used for adding log entries to the database if that is enabled.Hold information a raw bioassay.Hold the mappings defined in the mapping file.Class for migrating a database to PostgreSQL.This class is used to represent mime types.This is a helper class that is very useful when you have a collection ofShareable
items and want to modify some permissions on all of them without affecting the rest of the permissions.ANameable
item is an item that has aname
anddescription
.Utility methods that will make it easier to implement theNameable
interface, including data validation.This class represents news items.This exception is thrown if you try to perform a function that requires a user to be logged in without beeing logged in.This exception is thrown when an item's field or a parameter that only accepts numeric values within a certain range are passed a value outside that range.AnOwnable
item is an item which has aUser
as its owner.Utility methods that will make it easier to implement theOwnable
interface, including data validation.This exception is thrown by classes that uses the parameter system,ParameterType
andParameterValueData
.Get information about a plugin configuration or parameter.This is the base class for all parameter types.An implementation of theParameterValues
interface that lets a plugin write the job's configuration.This class represent a parameter type that is a password (or any other type of masked string).An enum that describes what type the path isThis class represent a parameter type that is a path to either a directory or a file.This enumeration defined constants for permissions.This exception is thrown when trying to load or manipulate an item in the database and you don't have the required permission.A permission template with permissions to users, groups and projects.A physical bioassay is a representation of the process of performing an experiment one or moreExtract
:s.This class is represents physical plates.This class represents an event in the life of aPlate
.This class is used together with thePlateType
class to define event types for plates.This class defines a plate geometry, which is the number of rows and columns of wells on aPlate
.This class represents a mapping from one plate geometry to another.This class represents plate types, which is a name, description, geometry and a list of event types.This class is used to represent an experimental platform in BASE.This class represents a specificDataFileType
that is part of a platform.Represents variants of aPlatform
.This class is used to configure a plugin.Configures a plugin or job.A plugin definition represents the executable plugin.Executes a job.Contains information about a single parameter that the plugin needs for a request.PluginRequest<P extends Plugin>Configures or executes a plugin.Get the response from a configuration step or execution of a plugin.This is a special session control implementation that is used for executing plugins that prevents them from logging in or out.Batcher class for per-position data in the dynamic database.Batcher class for per-position extra values.This class is used for reading XML files with information about predefined queries.This is a generic class for handling named presets consisting of multiple key/value pairs.Represents a single preset.Certain methods in BASE can report their progress back to the calling client application if they are giving an object that implements this interface.This class is used to represent projects.A runtime filter implementation that limits a query to only return projects where the logged in user is a member or owner unless the logged in user has generic read permission.This class is used to get information about which projects aShareable
item has been shared to.This class is used to specify permissions to share an item to projects.Internal class for keeping the "override_id" column in the "Annotations" table synchronized when annotations are creted and deleted.Holds some information about the annotation that has been created.Used to store filter settings in the current context.This class is used to represent individual protocol items and information about them.This class is used to represent a quantity for specifying units to annotations.Utility class for executing SQL and Hibernate queries.Interface to be implemented by classes that knows how to cancel a query.Cancels the query running in a Hibernate session.Cancels a query running in a stateless Hibernate session.Cancels a statement by callingStatement.cancel()
.A callable implementation the callsPreparedStatement.executeQuery()
CallsQuery.scroll(ScrollMode)
and returns the result as aScrollIterator
.A callable implementation the callsPreparedStatement.executeUpdate()
Represents a filter that is applied to a query just before it is executed in order to limit the result.This is a factory class forQueryRuntimeFilter
implementations.A required filter forAnnotatable
items.Chains one or more filters into a single filter.An optional filter that can be used byBasicItem
:s to replace theQueryRuntimeFilterFactory.BasicFilter
.A required filter for all items, which checks if the logged in user has been "granted" thePermission.DENIED
permission for a specific item type.A required filter forRemovable
items.An optional default filter forShareable
items.This class manages the enabling/disabling ofQueryRuntimeFilter
:s.This class is used to represent disk quota settings for users and groups.A runtime filter implementation that limits a query to only return the quota assigned to the logged in user unless the logged in user has generic read permission.This exception is thrown to signal that the user's quota has been exceeded and that anDiskConsumable
item cannot be saved.This class represents the different types a quota can have.A rawbioassay represents the raw data generated from a singleDerivedBioAssay
.An expression representing the property of a raw bioassay.Batcher class for raw data.Holds information about an extended property for raw data.An expression representing the property of a raw data spot.This class holds information about a raw data type.This class is used for reading the XML configuration file with information about raw data types.Comparator implementation that sorts raw data types according to their name.Utiltity class for getting and setting non-public properties of raw data objects.Represents a join from one virtual table in the dynamic database to a table in the regular database or between two tables in the regular database.This class defines constants that are used to specify a table in the regular (non-dynamic) database while doing analysis with dynamic queries.Items that implements this interface has their registration date stored in the database.ARemovable
item is an item that can be flagged as removed.This is an utilitiy class for reporters.Batcher class for reporters.Batcher implementation that is used to handle cloned reporter information in the dynamic database.Specifies which source table to use for finding out which reporters that are part of the current experiment.A reporter clone template is a definition of which reporter properties/annotations that should be cloned to a per-experiment table in the dynamic database.Represents a join to a reporter list in a dynamic query:leftTable JOIN ReporterListScores ON ...
An expression representing the property of a reporter.Get information about the reporters and their score in a reporter list.This is a temporary solution to query against the reporter list's score.This is a temporary solution for returning reporter list scores as an iterator.This class holds reporter type information.Get information about the parameters the plugin needs for a particular request.This class is used to represent roles.A runtime filter implementation that limits a query to only return roles where the logged in user is a member unless the logged in user has generic read permission.This class is used to represent a role key.Represents the use of a raw bioassay in an experiment.This class is used to represent sample items.This is an iterator view of the result from a query using the HibernateScrollableResults
object.A special session control implementation used for services.Flushes the given session before the transaction is committed.Our own keyring containing the only permission:Permission.ACT_AS_ANOTHER_USER
.Utility class for the "services" extension point.A session represents the time between login and logout for a single user.A runtime filter implementation that limits a query to only return sessions for the currently logged in user unless the logged in user has generic read permission.This class handles user sessions.Internal class to hold information about the logged in user.Represents a main context for which a "current" subcontext can be assigned.Internal class to hold information about a settingClass for storing temporary device information for a user that has been authenticated but before a device has been verified.This is the base class for all setting items.Utility methods that will make it easier to implement theShareable
interface, including data validation.This is a simple implementation of theAbsoluteProgressReporter
interface, which simply remembers that last values.This is a simple implementation of theProgressReporter
interface, which simply remembers that last values.This class is used to represent individual software items and information about them.SpecialQuery<C>A special HQL query implementation that can return almost any kind of object.Batcher class for per-spot intensity values for bioassaysets.Batcher class for per-spot extra values.This class represent a parameter type that is a string.This exception is thrown when an item's field or a parameter which must be shorter than a specified length exceeds that length.Utility methods that will make it easier to implement data validation for string attributes.A subtypable item is an item that can have a subtype.Annotation that can be used bySubtypable
items to tell about related items.Annotation (java) that can be used bySubtypable
items to enable/disable support for pushing annotations (BASE) to parent items.Holds information about a synchronization filter used by an item list.ASystemItem
is an item which has an additional systemwide unique id in the form of string.This class is used to map the system id of allSystemData
items to the numerical internal id in the current installation.This class represents a tag.This class represent a parameter type that is a timestamp.This interface is a tagging interface for items that wants to be notified before a transaction is committed or after it has been completed or rollbacked.Enumeration constants used to tell the item what is going on in the core.Interface that define hooks for callbacks during transaction commit and rollback.A transformation represents an analysis step for anExperiment
.This class contains functionality to manage items that have been marked for deletion.Helper class for holding information about a single item, other items using it and other information that is relevant for resolving circular references.This class defines constants for supported value types in BASE.This class is used to represent a specific unit that can be used with annotations.This exception is thrown when trying to use an item that has not been saved to the database in places where this is required.Thrown when an import plug-in is forced to use a file that is not of the correct format.This class contains static methods used to update items already in the database.Action that drops a column in a table.Action that need to make some change to the database schem after the main transaction inUpdate.adjustExistingItems(ProgressReporter, int, String, String)
has finished.Utility interface for collecting information about data file requirements when used on a certain platform/variant or item subtype.This class is used to represent a user in BASE.A runtime filter implementation that limits a query to only return users which are members of at least one group where the logged in user is also a member unless the logged in user has generic read permission.This class is used to represent a setting valid for a specific user using a specific client application.This class is used to represent a setting valid for a specific user using any client application.A user device represents a verified device a user may use for accessing BASE.A runtime filter implementation that limits a query to only return devices for the currently logged in user unless the logged in user has generic read permission.This class is used to specify permissions to share an item to users.This interface is a tagging interface for items that needs case 2 validation.Utility class to handle the conversion between data objects and item objects.Get information about the BASE version.This class is used to define columns in the virtual tables in the dynamic part of the database that are storing analysed data.A virtual database represents the set of tables in the dynamic database used by a single experiment to store it's analysed data.This enumeration defines constants that are used to specify different virtual tables in the dynamic part of the database used for analysis.A well is located on aPlate
and contains aReporterData
.