GNUstep Database Library 2 (GDL2) is a set of libraries to map Objective-C objects to rows of relational database management systems (RDBMS). It aims to be compatible with Enterprise Objects Framework (EOF) as released with WebObjects 4.5 from Apple Inc and is used in conjuction with GNUstepWeb.
Current Version: 0.12.0
- Released February 20, 2009
GDL2 consists of the following components:
- The fundamental abstraction library which includes many non RDBMS related extensions such as KeyValueCoding extensions and other categories. Most importantly it contains the classes which handle the coordination of object graphs namely EOEditingContext.
- This library implements the underlying mechanism to retrieve and store data in RDBMS. It defines the abstract classes like EOAdaptor which are subclassed to interface with concrete RDBMS implementations.
- This library implements classes used to synchronize UI components such as NSTextFields, NSButtons and NSTableViews with the state of objects which an EOEditingContext contains.
- This is a collection of concrete EOAdaptor projects needed to connect to specific databases. GDL2 currently supplies an Adaptor for PostgreSQL and SQLite.
- GDL2 offers an alpha version of DBModeler to create and maintain .eomodel(d) files.
- This framework is used by DBModeler can be used to write bundles for DBModeler to interface with the application.
- Both Gorm and InterfaceBuilder can be used to create nib files which contain display groups an EOEditingContext. The palette provides those applications with the necessary code to hook up UI components with the model objects.
- The Trading framework, provides an example model, and some routines to create a database from the model, and populate the database with data, while not an example itself it is intended for use by example applications using GDL2 alone, EOInterface or GSWeb, and for higher level tests.
- Using GDL2 in other Projects
- Typically you would want to use EOControl and EOAccess for tools and
EOInterface additionally for applications.
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface
- GDL2 based Palettes / DBModeler Bundles:
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface EOModeler
Currently GDL2 is meant for developers who can help test and contribute to the current code or are willing to test the interface. It is not ready for general purpose production code. Having said that, it should be mentioned that GDL2 is being used in production environments and has been much tested in those contexts.
Expect the current interface to change especially with respect to functions and methods not documented in EOF 4.5. Even the library names themselves may change.
If you identify something that you need, please let us know at or even better get copyright assignment for the FSF and post a patch.