Package org.melati.poem

Package class diagram package org.melati.poem
Persistent Object Engine for Melati.

See:
          Description

Interface Summary
AccessToken An AccessToken (aka User).
FieldAttributes An interface which defines attributes of all Fields.
Initialiser A piece of code for initialising a newly created Persistent object in a POEM Table.
IntegrityFix Class representing what to do about references to a Persistent which is about to be deleted.
Persistable An object which can be persisted, ie has a Troid.
Persistent The object representing a single table row; this is the PO in POEM!
PoemDatabaseTables Melati POEM generated, programmer modifyable interface stub giving all the available tables in the PoemDatabase.
PoemTask Something that can be run.
PoemType<T> A data type.
PoemTypeFactory.Parameter A Parameter object which knows whether a PoemType is nullable and its size.
Selectable An object on which selections can be performed.
SQLPoemType A datatype of a Field which is both a PoemType and an SQLType.
SQLType A native SQL Field datatype.
Table A table.
TableListener An object which can be notified when a Table is accessed.
Treeable Methods an object must have to be treated as a Tree.
 

Class Summary
AccessForbiddenToken AccessToken that gives no capabilities.
AtomPoemType<T> Base class for all atomic types.
BaseFieldAttributes Base class of all Fields.
BasePoemType<T> Base class of all fundamental types.
BigDecimalPoemType Java "BigDecimal", dependant upon the database/SQL implementation.
BinaryPoemType A Blob Field type.
BooleanPoemType A Boolean Nullable Field type.
BooleanPossibleRawEnumeration The possible raw values of a BooleanPoemType.
CachedCount A cached instance of an SQL count query.
CachedExists A cached instance of an SQL count > 0 query.
CachedQuery Object to return the results of a query with caching.
CachedSelection A cached instance of an SQL select query.
CachedTailoredQuery A cached instance of a PreparedTailoredQuery.
Capability The quality of being able to perform an action.
CapabilityTable The Table of Capabilitys.
Column Abstract Table column which is extended by the generated classes.
ColumnInfo All the data defining a Column; actually a Persistent from the ColumnInfoTable.
ColumnInfoTable A Table which holds information about all Columns in a Database.
ColumnTypePoemType A metadata type which defines the type of another Column.
CommitLogEvent A record of a committed transaction.
Database An RDBMS database.
DatePoemType A type for Normal dates.
DefinitionSource A possible origin for metadata for a Field, Column or Table.
DeletedPoemType A DeletedField is a flag field in a record which marks the whole record as deleted.
DisplayLevel An attribute of a Column which indicates what level of reporting of a Table it should be included in.
DisplayLevelPoemType A type for DisplayLevels.
DoublePoemType Normal doubles, dependant upon the database/SQL implementation.
ExtraColumn A Column which exists in the dbms but is not defined in the DSD.
Field A Field.
FieldSet A set of Fields accessible in sequence or looked up using an encoding of the table name and column name.
FixedPointAtomPoemType An extension of AtomPoemType which adds precision and scale.
Group An authorisation grouping that a User can belong to.
GroupCapability A record of a Group's ability to perform an action.
GroupCapabilityTable The Table of GroupCapabilitys.
GroupMembership A record of a User's belonging to a Group.
GroupMembershipTable The Table of GroupMemberships.
GroupTable The Table of Groups.
IndexPoemType An object with an Integer index to its value, introduced to the class hierarchy to distinguish between an Integer as a value and an Integer as a key.
IntegerPoemType<T> Plain old integers, the range being contingent on the underlying SQL type.
IntegrityFixPoemType A type for IntegrityFixs.
JdbcPersistent The object representing a single table row; this is the PO in POEM!
JdbcTable A Table.
LongPoemType Normal longs: INT8.
PasswordPoemType A password.
PersistentFactory A factory for persisting pojos and recreating them.
PoemDatabase Though generated by POEM this is the class all generated databases extend.
PoemDatabaseFactory  
PoemDatabaseFactory.PoemShutdownThread Shutdown databases cleanly when JVM exits.
PoemLocale A wrapper for a Locale for use within Melati.
PoemLogEvent A record of any underlying DBMS action.
PoemTable Melati POEM generated, programmer modifiable inheritance hook.
PoemThread A Poem Thread.
PoemTransaction A set of dbms actions, which can be rolled back if necessary.
PoemTypeFactory An object factory which produces PoemType objects given a Database and a code.
PreparedStatementFactory Maintains a cache of PreparedStatements for an SQL statement string.
PreparedTailoredQuery A TailoredQuery which uses a PreparedStatement.
ReferencePoemType A data type that is a reference to a Persistent object.
RestrictedReferencePoemType A pointer to a subset of a Table.
ResultSetEnumeration<T> An Enumeration created by filtering a ResultSet according to an abstract function applied to each element of the ResultSet.
RollbackLogEvent A record of a cancelled transaction.
RootAccessToken An AccessToken (aka User) which can do anything.
Searchability The quality of being searchable: yes, no or primary.
SearchabilityPoemType A data type used within the POEM ColumnInfo metadata.
SessionToken A Session Token.
Setting A setting, analageous to a Property.
SettingTable A Table which is used like a properties file.
SizedAtomPoemType An AtomPoemType with a size.
SQLLogEvent A record of any executed SQL statement.
StandardIntegrityFix A class which defines the three standard integrity fixes of delete, clear and prevent.
StringPoemType Base of all character sequence types.
StructuralModificationLogEvent A record of a structural change to the underlying DBMS.
TableCategory A grouping into which a Table can be assigned, eg Data or System.
TableCategoryTable A Table which holds TableCategorys.
TableFactory Given an Object or class create a set of Tables to represent the graph it is the starting node of, and populate it for an Object.
TableInfo All the data defining a Table; actually a Persistent from the TableInfoTable.
TableInfoTable A Table which holds information about all Tables in the Database.
TableMap  
TableSortedMap  
TailoredQuery This is how you run low-level SQL queries including joins, and get the results back in the form of convenient Melati Fields which can be rendered automatically in templates.
TailoredResultSetEnumeration<T> A ResultSetEnumeration relying on a TailoredQuery for column and access information.
TimestampPoemType A Timestamp.
TroidPoemType Table row ids.
UnindexableLogEvent A warning about an unindexable indexed Column.
User A registered user.
UserTable The Table of registered Users.
ValueInfo Abstract persistent generated from Poem.dsd and extended to cover Setting and ColumnInfo.
ValueInfoTable Melati POEM generated, programmer modifiable stub for a ValueInfoTable object.
 

Exception Summary
AccessibleCreationException Thrown when an unauthorised attempt to create an object is made.
AccessPoemException Thrown when an authorisation problem occurs, that is when a User does not have the required Capability or is not in a Group with the required Capability to access a restricted object.
AlreadyInSessionPoemException Thrown when an attempt to open a new User session from within one is made.
AppBugPoemException Thrown when the error is likely to be caused by an error in the application programmers code, such as mistypeing a class name or mis-configuring a property.
BinaryLengthValidationPoemException Thrown when an overlong value is asserted to be a valid raw BinaryPoemType Field.
Column.LoadException Thrown when any unforeseen problem arises loading a Column.
Column.SettingException Thrown when any unforseen problem arises setting the value of a Column.
ColumnInUsePoemException In the unexpected event that a Column is being defined twice.
ColumnRenamePoemException Column renaming is not supported by Postgresql.
CommitFailedPoemException Thrown when a commit fails.
ConnectionPendingException  
CreationAccessPoemException Thrown when unauthorised creation of a new object is attempted.
DatabaseInitialisationPoemException  
DBConsistencyPoemException Those thrown when the database becomes inconsistent.
DeletePersistentAccessPoemException Thrown when an unauthorised delete of a Persistent is attempted.
DeletionIntegrityPoemException Thrown when an attempt is made to delete a Persistent which is referred to by others and where the IntegrityFix is prevent.
DisplayLevel.NameUnrecognisedException Thrown when a DisplayLevel which doesn't exist is referenced, by misspelling for example.
DoubleCreatePoemException Thrown when an attempt to create a Persistent which already exists is made.
DuplicateColumnNamePoemException Thrown when an attempt to create a Column in a Table which already contains one of that name is made.
DuplicateDeletedColumnPoemException Thrown when an attempt to create a second Column of type DeletedPoemType in a Table is made.
DuplicateTableNamePoemException Thrown when an attempt to add a Table to a Database which already has one of that name.
DuplicateTroidColumnPoemException Thrown when an attempt to add a second Troid column is made.
DuplicateTroidPoemException Thrown when it is discovered that there is more than one record with a given Troid in the Database.
ExecutingSQLPoemException Thrown when there is a problem executing an SQL command.
ExecutingSQLSeriousPoemException Thrown when there is a problem exceuting an SQL command and it really matters.
FieldAccessPoemException Thrown when an unauthorised access of a Field of a Persistent is attempted.
FieldContentsPoemException Thrown when a Field fails its content validation.
IndexUniquenessPoemException Thrown when there is a mismatch over the uniqueness of an index in the Poem metadata and the jdbc metadata.
InitialisationPoemException Thrown when a candidate Persistent fails its validation tests prior to being written to the database.
InvalidOperationOnFloatingPersistentPoemException Thrown when a attempt is made to perform an operation on a Persistent which has yet to be written to the dbms or for some other reason has yet to gain a Troid.
NoAccessTokenPoemException Thrown when it is discovered that a PoemThread is running without an AccessToken.
NoMoreTransactionsException Thrown when the system runs out of its pool of Transactions; which happens if Transactions die with an Error such as OutOfMemoryError.
NonRootSetAccessTokenPoemException Thrown when an attempt is made to change the AccessToken under which a PoemThread is running by a PoemThread with an AccessToken other than RootAccessToken.
NormalPoemException Thrown deliberately by the programmer.
NoSuchColumnPoemException Thrown when a reference to a non-existent Column is made.
NoSuchRowPoemException Thrown when a reference to a non existent row is made.
NoSuchTablePoemException Thrown when a reference to a non existent Table is made.
NotComparablePoemException Thrown when an attempt is made to set a Range for a non comparable PoemType.
NotInSessionPoemException Thrown when it is discovered that a Transaction has somehow been created outside a Session.
NoTroidColumnException Thrown if you forget to define a Troid for a Table.
NullTypeMismatchPoemException Thrown when a null value is discovered in a non-nullable Field.
OutsideRangePoemException Thrown when a value outside of a Field's range is discovered.
ParsingPoemException Thrown when there is a problem with the format of the String representation of a non-String datatype instance.
PersistentAccessPoemException Thrown when an unauthorised access of a Persistent is attempted.
PoemBugPoemException Thrown if an internal assumption about Poem is violated.
PoemException Base class for all Poem exceptions.
PreparedSQLSeriousPoemException Thrown when an SQL PreparedStatement fails.
ReadFieldAccessPoemException Thrown when an unauthorised read of a Field of a Persistent is attempted.
ReadPasswordAccessPoemException Thrown when an unauthorised read of a password Field of a protected Persistent is attempted.
ReadPersistentAccessPoemException Thrown when an unauthorised read of a Persistent is attempted.
ReconnectionPoemException Thrown when a committed Connection still exists.
RollbackFailedPoemException Thrown when an SQL ROLLBACK fails.
RowDisappearedPoemException Thrown when a reference to a Persistent is made after it has been deleted.
Searchability.NameUnrecognisedException Thrown when an invalid Searchability level is specified, by a typing mistake in the DSD for example.
SeriousPoemException Thrown when there is an Exception thrown in a situation where normal operation cannot sustain it.
Setting.SettingTypeMismatchException Thrown when a Setting's type does not match the type required.
Setting.SettingValidationException Thrown when a Setting value fails validation.
SettingTable.UnsetException Thrown when a Setting requested has not been set.
SimplePrepareFailedPoemException Thrown when there is a problem creating a PreparedStatement.
SimpleRetrievalFailedPoemException Thrown when there is a problem loading a Table.
SQLPoemException Thrown when there is an SQLException thrown by the dbms.
SQLSeriousPoemException Thrown when there is an SQLException thrown by the dbms in a situation where it matters.
StandardIntegrityFix.NameUnrecognisedException Thrown when an invalid StandardIntegrityFix is specified, by a typing mistake in the DSD for example.
StringLengthValidationPoemException Thrown when a StringPoemType Field's value is too long.
StructuralModificationFailedPoemException Thrown when an SQLException is thrown by a command to alter or create a table.
TableInUsePoemException Thrown when an attempt is made to redefine a Table when it is being accessed by another PoemThread.
TableMismatchPoemException Thrown during validation of a ReferencePoemType if a Persistent is claimed to be of that type but has the wrong Table set.
TableRenamePoemException Thrown when an attempt is made to set the name of a Table in its the TableInfo when it has already been set.
TooManyThreadsPoemException Thrown when the number of PoemThreads exceeds the limit.
TypeDefinitionMismatchException Thrown during Column unification if there is a contradiction between two of the possible DefinitionSources.
TypeMismatchPoemException Thrown when the type of an object isn't the one expected.
UnexpectedExceptionPoemException Thrown when there is a problem in a situation where it is assumed, for the normal working of the system, that there will not be one.
UnexpectedNoSuchRowException Thrown when a NoSuchRowPoemException is thrown when it is not thought to be possible for it to, if all is working well.
UnexpectedParsingPoemException Thrown when a ParsingPoemException is thrown when it is not thought to be possible for it to, if all is working well.
UnexpectedValidationPoemException Thrown when a ValidationPoemException is thrown when it is not thought to be possible for it to, if all is working well.
UnificationPoemException Thrown when an SQLException is thrown during unification of the Database with the other DefinitionSources.
ValidationPoemException Thrown when a Field's value does not meet its contract.
WriteFieldAccessPoemException Thrown when an unauthorised write of a Field of a Persistent is attempted.
WritePersistentAccessPoemException Thrown when an unauthorised delete of a Persistent is attempted.
 

Package org.melati.poem Description

Persistent Object Engine for Melati.

POEM establishes a lazily instantiated, cached persistence layer over any JDBC compliant SQL database which supports Transactions.

Melati / POEM separation

Completed.



Copyright © 2000-2010 PanEris. All Rights Reserved.