-
Notifications
You must be signed in to change notification settings - Fork 7
/
README
147 lines (103 loc) · 4.88 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
Readme
******
The 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. It has been tested
against the following package versions:
- the GNUstep Make Package 2.0.6
- the Base Package 1.16.3
- the GUI/Back Package 1.14.0
- the GORM Package 1.2.6
- the Renaissance SVN Version 27301 (0.10.0 prerelease)
GDL2 consists of the following components:
- EOControl
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.
- EOAccess
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.
- EOInterface
This library implements classes used to synchronize UI components such
as NSTextFields, NSButtons and NSTableViews with the state of objects
which an EOEditingContext contains.
- EOAdaptors
This is a collection of concrete EOAdaptor projects needed to connect
to specific databases. GDL2 currently supplies Adaptors for
the PostgreSQL and SQLite databases.
- PostgreSQL: we aim to support PostgreSQL 8.1 and higher API.
- SQLite: Compatible with SQLite version 3.x
- DBModeler
GDL2 will offers a UI application to create and maintain .eomodel(d)
files. This is the first release of a preliminary version.
- EOModeler
This framework is which is used by DBModeler can used to write bundles
for DBModeler to interface with the application.
- GDL2Palette
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.
- Examples/Trading
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 indented 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.
Tools:
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess
Applications:
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface
GDL2 based Palettes / DBModeler Bundles:
ADDITIONAL_NATIVE_LIBS += EOControl EOAccess EOInterface EOModeler
======================
*** Important Note ***
======================
This release is meant for developers who can help test and contribute
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.
See the TODO file for parts that still need implementains or testing.
If you identify something that you need, please let us know at
<[email protected]> or even better get copyright assignment for
the FSF and post a patch.
Initial reading
===============
The file `NEWS' has the library's feature history.
The file `INSTALL' gives instructions for installing the library.
The file `TODO' lists components which are not fully implemented.
License
=======
The GNUstep libraries are covered under the GNU Lesser Public
License. This means you can use these libraries in any program (even
non-free programs). If you distribute the libraries along with your
program, you must make the improvements you have made to the libraries
available to those you distribute to. You should read the COPYING.LIB
file for more information.
GNUstep tools, test programs, and other files are covered under the
GNU General Public License. This means if you distribute derivative works
of these programs you must distribute them in compliance with the
GPL. You should read the COPYING file for more information.
How can you help?
=================
* Give us feedback! Tell us what you like; tell us what you think
could be better.
Please log bug reports on the GNUstep project page
<http://savannah.gnu.org/support/?group=gnustep> or send bug
reports to <[email protected]>.
Happy hacking!
Additional Notes
================
if you installed PostgreSQL in /usr/local/pgsql (which is the default
if you install from source) you need to do that:
./configure --with-pgsql-include=/usr/local/pgsql/include --with-pgsql-library=/usr/local/pgsql/lib
before building