Commit Graph

2233 Commits

Author SHA1 Message Date
A. Abram White eb2b5e6551 Method visibility fix.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432447 13f79535-47bb-0310-9956-ffa450edef68
2006-08-18 00:21:04 +00:00
A. Abram White 69b83ac3ff When a query projects and groups on a relation field, make sure to group on
the same columns we select.  Added Select.groupBy(ClassMapping, ...) API.
Implemented by temporarily putting target Select into "group mode" -- in which 
all select() calls are instead routed to groupBy() calls -- and invoking the 
same JDBCStoreManager.select() logic we use for the 
Select.select(ClassMapping...) call.  Having the Select "fake out" its callers
by translating select() calls into groupBy() calls isn't necessarily pretty, 
but it allows us to re-use all our existing select logic (not just in 
JDBCStoreManager, but in all the class, field, discriminator, version, etc 
mapping strategies) rather than creating duplicate logic in parallel groupBy() 
methods in all these components.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432444 13f79535-47bb-0310-9956-ffa450edef68
2006-08-18 00:17:30 +00:00
A. Abram White 2ccc242679 When a relation mapping uses the expected class of the related type as part of
its join criteria (in addition to the standard foreign key join), make sure
discriminator conditions are appended to the WHERE SQL not only when loading
the relation, but also when traversing it in queries.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@432067 13f79535-47bb-0310-9956-ffa450edef68
2006-08-16 23:27:04 +00:00
Patrick Linskey c8af68ac7d Removed unneeded field.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@431669 13f79535-47bb-0310-9956-ffa450edef68
2006-08-15 18:46:59 +00:00
A. Abram White daf1f35793 Marc correctly pointed out that FileInputStream.read() isn't guaranteed to
read all available data into the given buffer in one call.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@431635 13f79535-47bb-0310-9956-ffa450edef68
2006-08-15 16:16:57 +00:00
A. Abram White 0821efea40 Work around JVMs that don't return a valid value for File.length(). We've
discovered at least one that doesn't.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@431627 13f79535-47bb-0310-9956-ffa450edef68
2006-08-15 15:57:14 +00:00
A. Abram White 26ae2fa31c Anchor token fix.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@431131 13f79535-47bb-0310-9956-ffa450edef68
2006-08-13 01:49:01 +00:00
A. Abram White 132602e3d2 Use configuration's class loader.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430934 13f79535-47bb-0310-9956-ffa450edef68
2006-08-12 01:01:55 +00:00
A. Abram White 174bbd211f Don't use ant classloader to find configuration providers?
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430911 13f79535-47bb-0310-9956-ffa450edef68
2006-08-11 22:53:58 +00:00
A. Abram White aba057d644 Allow our JPA ConfigurationProviderImpl to find a default persistence unit in
persistence.xml when no explicit configuration is given to dev tools.  Do this
in a backwards-compatible way that won't break previous behavior or other facade
behavior (JDO).  This means you should no longer have to pass 
"-p persistence.xml" to tools like the enhancer, nor should you have to specify
a properties argument to the PCEnhancerAgent in the premain for runtime 
enhancement.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430897 13f79535-47bb-0310-9956-ffa450edef68
2006-08-11 21:07:58 +00:00
Stephen Kim 07a13ab908 Clean up detach on serialize and ensure declared constructors are properly
public for externalize


git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430303 13f79535-47bb-0310-9956-ffa450edef68
2006-08-10 08:14:18 +00:00
A. Abram White 3e758faf25 Fix invalid property warning logic.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430188 13f79535-47bb-0310-9956-ffa450edef68
2006-08-09 23:39:58 +00:00
A. Abram White fd74642a17 Give better error when run on bad .class file.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430171 13f79535-47bb-0310-9956-ffa450edef68
2006-08-09 22:39:24 +00:00
A. Abram White 5bef32e516 Make Localizer.Message a static class. Fix implicit type of query path
traversal terminating in byte[], char[] fields.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@430146 13f79535-47bb-0310-9956-ffa450edef68
2006-08-09 20:59:45 +00:00
Stephen Kim a120874a44 Include unpinAll/pinAll by class methods
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@429797 13f79535-47bb-0310-9956-ffa450edef68
2006-08-08 20:23:35 +00:00
Patrick Linskey 6234f8d3da Changed logging infrastructure to be aware of localization; changed localization to return log-ready Message instances instead of strings. Changed tons of code to use the new logging and localization calls.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@429535 13f79535-47bb-0310-9956-ffa450edef68
2006-08-08 01:42:34 +00:00
Pinaki Poddar f44dd067d8 unsupported-value-strategy had a wrong {n} in the message.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@429498 13f79535-47bb-0310-9956-ffa450edef68
2006-08-07 22:36:42 +00:00
A. Abram White 1e6d57eb55 git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@429477 13f79535-47bb-0310-9956-ffa450edef68 2006-08-07 21:02:31 +00:00
A. Abram White b499aded0d Anything can be converted to a string in query comparisons.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@429440 13f79535-47bb-0310-9956-ffa450edef68
2006-08-07 19:18:04 +00:00
A. Abram White d293c449b1 Formatting.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428929 13f79535-47bb-0310-9956-ffa450edef68
2006-08-05 00:07:12 +00:00
A. Abram White f7f225f96d Change names of query languages to have "openjpa" prefix rather than
"org.apache.openjpa" to match configuration properties.  Some minor code 
formatting fixes.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428918 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 23:12:30 +00:00
Pinaki Poddar 8e66833915 changed auxiliary enhancer interface
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428897 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 22:02:51 +00:00
Pinaki Poddar 8c2c40dfe1 Added provisions for auxiliary enhancers to omit specific methods to be enhanced
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428886 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 21:14:48 +00:00
A. Abram White f70f99e638 SQL CAST() for comparisons and math functions fixes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428885 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 21:14:29 +00:00
Pinaki Poddar 1a2d048f3d load-fetch-group annotation added
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428883 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 21:12:35 +00:00
A. Abram White ca83f07b45 Fix visibility.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428876 13f79535-47bb-0310-9956-ffa450edef68
2006-08-04 20:41:36 +00:00
A. Abram White 77e7d97379 Fetch group fixes.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428577 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 23:56:32 +00:00
A. Abram White d1df9344fe Fix XML serialization of cascade data.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428565 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 23:36:48 +00:00
A. Abram White bc10dd2efd Remove incorrect lifecycle callback invocation.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428538 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 21:48:37 +00:00
A. Abram White 0167f87b32 Add (presumably forgotten) JDK 1.4 GregorianCalendar. 1.4 has a public mutator
method that wasn't available in previous versions, and we must intercept it.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428533 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 21:30:30 +00:00
A. Abram White eb333839db More work on type promotion and casting in queries. Also, make sure DFG is
in active fetch groups before testing it for post-load callbacks.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428484 13f79535-47bb-0310-9956-ffa450edef68
2006-08-03 19:16:47 +00:00
A. Abram White a6b57c2e9c Fixes to optimization logic for including joined subclass data in initial
SELECT.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428193 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 23:37:02 +00:00
A. Abram White f2a266c4c2 Allow null load-fetch-group. Allow a DFG field to have a different
load-fetch-group.  



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428177 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 22:23:32 +00:00
Pinaki Poddar b3f8f9de48 Added load-fetch-group to FieldMetaData and StateManager loading
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428120 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 19:53:42 +00:00
A. Abram White df43989689 Query type promotion fix.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428102 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 19:21:31 +00:00
A. Abram White 3f82b8aec0 Fix bug in numeric promotion in queries.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428090 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 19:02:53 +00:00
A. Abram White b2e1912dc7 Fix StoreFacadeTypeRegistry to work when multiple stores are available. Fix
problems with creating a persistence FetchPlan, and with getting max depth.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@428069 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 17:51:43 +00:00
A. Abram White 20d5990098 Fix logic for when to select fk column values of a to-one relation.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427815 13f79535-47bb-0310-9956-ffa450edef68
2006-08-02 00:19:41 +00:00
A. Abram White a98213071a Use latest stable releases of commmons dependencies. Add missing localized msg.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427784 13f79535-47bb-0310-9956-ffa450edef68
2006-08-01 23:09:17 +00:00
Pinaki Poddar 021c4b85d5 Added Serialzable interface
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427685 13f79535-47bb-0310-9956-ffa450edef68
2006-08-01 19:31:13 +00:00
Patrick Linskey e889cd2aef cleaned up some imports; fixed a typo; changed test case to reduce output
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427472 13f79535-47bb-0310-9956-ffa450edef68
2006-08-01 07:05:08 +00:00
Patrick Linskey eb96e89f4d Brett Porter's patch to resolve OPENJPA-3
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427444 13f79535-47bb-0310-9956-ffa450edef68
2006-08-01 05:03:08 +00:00
Marc Prud'hommeaux 803e15990d Null check before we put username/password values in the Properties object, since null values are illegal.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427389 13f79535-47bb-0310-9956-ffa450edef68
2006-08-01 00:55:41 +00:00
Patrick Linskey 72398bcea0 changed configuration value factory method to set a default for booleans by default. The normal pattern is to obtain a BooleanValue and then set the default to 'true' when desired; implicitly, this means that 'false' is the default otherwise. This change makes that explicit.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427356 13f79535-47bb-0310-9956-ffa450edef68
2006-07-31 23:13:00 +00:00
A. Abram White a95e7007cf git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427284 13f79535-47bb-0310-9956-ffa450edef68 2006-07-31 21:23:16 +00:00
A. Abram White 2fd7381e53 Throw good error message about META-INF/services if we can't find any
configuration providers or product derivations.  This has the downside of
mandating that there must be at least one valid product derivation and one
valid configuration provider available (theoretically someone using brokers
directly together with a simpl store like the sample XML store wouldn't need 
either), but otherwise the final error message to the user is often meaningless.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427229 13f79535-47bb-0310-9956-ffa450edef68
2006-07-31 19:36:46 +00:00
A. Abram White 696cbee04b Always pass non-null fetch conf to StoreManager.
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427206 13f79535-47bb-0310-9956-ffa450edef68
2006-07-31 18:50:19 +00:00
A. Abram White f279a6790b Added openjpa.MaxFetchDepth configuration property to globally control default
max fetch depth.



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@427191 13f79535-47bb-0310-9956-ffa450edef68
2006-07-31 18:24:44 +00:00
A. Abram White 979d2340e9 Cleanup of fetch group metadata and internal runtime APIs. Now that fetch depth
information is immutable within a fetch instance and cloned on relation 
traversal, it was safe to combine fetch state back into the fetch configuration 
class and remove the fetch state class for cleaner APIs (no more having some
components use fetch state and others fetch configuration). Also changed
recursion depth logic to more accurately mirror intent (per JDO spec), though 
testing is needed. 



git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@426710 13f79535-47bb-0310-9956-ffa450edef68
2006-07-28 23:48:13 +00:00
Pinaki Poddar 3b6518f174 FetchState is traversed for eagerToMany load/select
git-svn-id: https://svn.apache.org/repos/asf/incubator/openjpa/trunk@426702 13f79535-47bb-0310-9956-ffa450edef68
2006-07-28 23:19:43 +00:00