project BLF > class Persistence Layer

technical class
inherited from Technical Component

Description

This technical component provides the layer that abstracts all database access in the application. This is basically the only place where the database is physically connected. This component hosts all functions and methods that are required to provide enough functionality for the other business components, to update and retrieve information in tables and sequences.

This component does not assume an application database is connected before it is first used. It will connect the necessary database(s) when it's called the first time. The connection information for the databases is coming from the server.xml, which should be located in the propath of the progress session.

Since this component handles all database updates, it also controls the physical transactions.

The PersistenceLayer component is an abstract component that defines the interface. The code for the real implementation can be found in descendent classes ("Persistence (Progress)" and "Persistence (Other)"). A kind of polymorphism is used when the persistence layer is instantiated at run-time.

It is to be avoided that developers are using the persistence layer directly. Normally it is the framework and foundation classes that are using the persistence layer functions.


methods