Java Doc for MtoNCollectionPrefetcher.java in  » Database-ORM » db-ojb » org » apache » ojb » broker » accesslayer » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Database ORM » db ojb » org.apache.ojb.broker.accesslayer 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.apache.ojb.broker.accesslayer.BasePrefetcher
      org.apache.ojb.broker.accesslayer.RelationshipPrefetcherImpl
         org.apache.ojb.broker.accesslayer.CollectionPrefetcher
            org.apache.ojb.broker.accesslayer.MtoNCollectionPrefetcher

MtoNCollectionPrefetcher
public class MtoNCollectionPrefetcher extends CollectionPrefetcher (Code)
Relationship Prefetcher for MtoN-Collections.
author:
   Jakob Braeuchi
version:
   $Id: MtoNCollectionPrefetcher.java,v 1.12.2.7 2005/12/21 22:22:58 tomdz Exp $



Constructor Summary
public  MtoNCollectionPrefetcher(PersistenceBrokerImpl aBroker, ObjectReferenceDescriptor anOrd)
    

Method Summary
protected  voidassociateBatched(Collection owners, Collection children, Collection mToNImplementors)
     associate the batched Children with their owner object loop over children

BRJ: There is a potential problem with the type of the pks used to build the Identities. When creating an Identity for the owner, the type of pk is defined by the instvars representing the pk.
protected  Query[]buildMtoNImplementorQueries(Collection owners, Collection children)
    
protected  QuerybuildMtoNImplementorQuery(Collection ids)
    
protected  QuerybuildPrefetchQuery(Collection ids)
    
public  voidprefetchRelationship(Collection owners)
    


Constructor Detail
MtoNCollectionPrefetcher
public MtoNCollectionPrefetcher(PersistenceBrokerImpl aBroker, ObjectReferenceDescriptor anOrd)(Code)

Parameters:
  aBroker - the PersistenceBroker
Parameters:
  anOrd - the CollectionDescriptor




Method Detail
associateBatched
protected void associateBatched(Collection owners, Collection children, Collection mToNImplementors)(Code)
associate the batched Children with their owner object loop over children

BRJ: There is a potential problem with the type of the pks used to build the Identities. When creating an Identity for the owner, the type of pk is defined by the instvars representing the pk. When creating the Identity based on the mToNImplementor the type of the pk is defined by the jdbc-type of field-descriptor of the referenced class. This type mismatch results in Identities not being equal. Integer[] {10,20,30} is not equal Long[] {10,20,30}

This problem is documented in defect OJB296. The conversion of the keys of the mToNImplementor should solve this problem.



buildMtoNImplementorQueries
protected Query[] buildMtoNImplementorQueries(Collection owners, Collection children)(Code)
Build the multiple queries for one relationship because of limitation of IN(...)
Parameters:
  owners - Collection containing all objects of the ONE side



buildMtoNImplementorQuery
protected Query buildMtoNImplementorQuery(Collection ids)(Code)
Build a query to read the mn-implementors
Parameters:
  ids -



buildPrefetchQuery
protected Query buildPrefetchQuery(Collection ids)(Code)
Build the prefetch query for a M-N relationship, The query looks like the following sample :
 crit = new Criteria();
 crit.addIn("PERSON_PROJECT.PROJECT_ID", ids);
 crit.addEqualToField("id","PERSON_PROJECT.PERSON_ID");
 qry = new QueryByMtoNCriteria(Person.class, "PERSON_PROJECT", crit, true);
 

Parameters:
  ids - Collection containing all identities of objects of the M side the prefetch Query



prefetchRelationship
public void prefetchRelationship(Collection owners)(Code)

See Also:   org.apache.ojb.broker.accesslayer.RelationshipPrefetcher.prefetchRelationship(Collection)



Methods inherited from org.apache.ojb.broker.accesslayer.CollectionPrefetcher
protected void associateBatched(Collection owners, Collection children)(Code)(Java Doc)
protected Query[] buildPrefetchQueries(Collection owners, Collection children)(Code)(Java Doc)
protected Query buildPrefetchQuery(Collection ids)(Code)(Java Doc)
protected ManageableCollection createCollection(CollectionDescriptor desc, Class collectionClass)(Code)(Java Doc)
protected CollectionDescriptor getCollectionDescriptor()(Code)(Java Doc)

Methods inherited from org.apache.ojb.broker.accesslayer.RelationshipPrefetcherImpl
protected ObjectReferenceDescriptor getObjectReferenceDescriptor()(Code)(Java Doc)
protected ClassDescriptor getOwnerClassDescriptor()(Code)(Java Doc)
protected boolean isCascadeRetrieve()(Code)(Java Doc)
public void prepareRelationshipSettings()(Code)(Java Doc)
public void restoreRelationshipSettings()(Code)(Java Doc)
protected void setCascadeRetrieve(boolean cascadeRetrieve)(Code)(Java Doc)
protected void setObjectReferenceDescriptor(ObjectReferenceDescriptor objectReferenceDescriptor)(Code)(Java Doc)

Fields inherited from org.apache.ojb.broker.accesslayer.BasePrefetcher
final protected static int IN_LIMIT(Code)(Java Doc)
protected ClassDescriptor itemClassDesc(Code)(Java Doc)
final protected int pkLimit(Code)(Java Doc)

Methods inherited from org.apache.ojb.broker.accesslayer.BasePrefetcher
abstract protected void associateBatched(Collection owners, Collection children)(Code)(Java Doc)
protected Criteria buildPrefetchCriteria(Collection ids, FieldDescriptor[] fields)(Code)(Java Doc)
abstract protected Query[] buildPrefetchQueries(Collection owners, Collection children)(Code)(Java Doc)
protected QueryByCriteria buildPrefetchQuery(Collection ids, FieldDescriptor[] fields)(Code)(Java Doc)
protected QueryByCriteria buildPrefetchQuery(Class clazz, Collection ids, FieldDescriptor[] fields)(Code)(Java Doc)
protected PersistenceBrokerImpl getBroker()(Code)(Java Doc)
protected DescriptorRepository getDescriptorRepository()(Code)(Java Doc)
public ClassDescriptor getItemClassDescriptor()(Code)(Java Doc)
public int getLimit()(Code)(Java Doc)
protected Logger getLogger()(Code)(Java Doc)
public void prefetchRelationship(Collection owners)(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.