Commit Graph

725 Commits

Author SHA1 Message Date
Michael Bayne 979a1fd17b Promoted a number of classes out of DepotRepository because they are used all
across the package. Moved marshaller creation and management into the
PersistenceContext because marshallers should be shared across a persistence
context.

Also moved the actual "get a connection and do the query" code into the
persistence context which is sort of a nice separation. The repository and
friends now just put together Query and Modifier objects and pass them to the
context for execution. The context will eventually handle interaction with the
cache as well (exposing manual manipulation mechanisms as needed to the
DepotRepository).
2006-10-11 20:07:05 +00:00
Michael Bayne 7dd3eeaa7e The Java compiler uses the platform's default encoding when reading source
files which explains why Ray's "there are no languages but English" system
resulted in complaints and my "named after the African word for community"
system did not. Fortunately we can just tell the Java compiler what to expect.
2006-10-11 18:36:53 +00:00
Michael Bayne d9c7a0ca58 Go through the fields in declaration order when doing the migration otherwise
we might try to add a field after a field that we haven't yet added.
2006-10-11 02:46:41 +00:00
Ray Greenwell 4ccbc4fd2e Changed these to make me (and the compiler) happy.
I'm pretty sure source files should be ISO-8859-1.
If you're more comfortable with entity tags appearing in a  /* */ style
comment, then maybe that's what we should use for the header text.
(The Java Coding Guidlines say you should use a /* */ comment at the top
of the file.)
2006-09-30 02:34:36 +00:00
Michael Bayne a71dabebbd Copyright date and header fiddling. 2006-09-29 18:51:30 +00:00
Michael Bayne a90a32498e 2006-09-29 18:40:04 +00:00
Michael Bayne a01240e95a Multi-column primary key support from Zell. 2006-09-29 18:38:33 +00:00
Michael Bayne e903948eb1 Always update then insert in case for whatever reason the zeroth schema version
is not one (like for ItemRecord).
2006-09-29 01:28:53 +00:00
Michael Bayne 18491c5565 Added auto-migration for adding new columns. 2006-09-29 01:21:53 +00:00
Michael Bayne b9b199b725 Update our Modifier's key on an insert (and store) so that it can (eventually)
properly cache the results of our insert based on the newly assigned primary
key. Also avoid freakout if an attempt is made to store() a non-primary-key
using object.
2006-09-26 19:51:58 +00:00
Michael Bayne dbe7d69162 Unbork handling of objects with no primary key. Added a comment indicating
where we will need to cache the results of a modifier (like an insert or an
update). Added hasPrimaryKey() to DepotMarshaller which we will soon use
externally.
2006-09-26 19:41:40 +00:00
Michael Bayne dafeeec087 Allow the scope of globally scoped annotations to be managed explicitly instead
of making them shared across a JVM.
2006-09-22 18:59:48 +00:00
Michael Bayne a69c139e3d External table primary key generation from Zell, with some rearranging. 2006-09-22 18:06:43 +00:00
Michael Bayne 17e63530c4 Support @Length on byte[] fields. 2006-09-21 01:31:04 +00:00
Michael Bayne 8620ace13d Added support for byte arrays and full table loads. 2006-09-21 00:31:21 +00:00
Michael Bayne 638a52ff2a (Hackily) handle duplicate key exceptions. 2006-09-20 00:34:50 +00:00
Michael Bayne dd9ffec684 Don't force an id generation strategy. The default is to assume the code will
provide one. Separate out logging for depot so that fine grained logging can be
enabled if needed without turning on such logging for all of samskivert.
2006-09-20 00:15:34 +00:00
Michael Bayne e4628ed6e3 Collection queries will be invoked directly, though things will likely evolve
once we implement caching.
2006-09-19 23:56:49 +00:00
Michael Bayne add43aba13 Automagic table creation. The migration stuff is not yet implemented and
various fancy things like embedded objects and constraints and kitchen sinks
are not yet implemented, but the basic bits are functional (including IDENTITY
column primary key handling).
2006-09-19 22:45:33 +00:00
Michael Bayne 4c89cdea33 Finished most of the basic implementation. Now on to magical table creation. 2006-09-19 20:29:58 +00:00
Michael Bayne 7727c5cfde Untested support for partial object updates. 2006-09-18 23:11:13 +00:00
Michael Bayne 5639410725 Further progress on the ORM stuff. Miraculously, upon running this nearly
thousand lines of super funny looking generics and reflection filled code the
first time, it just worked. Yay for static typing or something.
2006-09-15 01:48:29 +00:00
Ray Greenwell bfa092b7d9 StringBuilder instead of StringBuffer. 2006-09-14 23:33:16 +00:00
Michael Bayne e51e4c1e8c The beginnings of a new persistence framework which leverages the annotation
goodness of the new EJB3 persistence framework but is not "managed" (ie. is not
real ORM).
2006-09-14 21:10:33 +00:00
Michael Bayne 4a408fd3c9 Initial revision of samskivert project containing basic directory
structure.
2000-10-23 03:34:28 +00:00