Update of /cvsroot/xdoclet/xdoclet/modules/jboss/src/xdoclet/modules/jboss/ejb In directory sc8-pr-cvs1:/tmp/cvs-serv12648/src/xdoclet/modules/jboss/ejb
Modified Files: JBossRelationTagsHandler.java Log Message: - added ability to specify <read-ahead> elements within the <ejb-relationship-role> element of an <ejb-relation> - two new tags: @jboss.relation-read-ahead and @jboss.target-relation-read-ahead - similar to how @jboss.relation and @jboss.target-relation work - @jboss.relation-read-ahead specifies the read-ahead for the source and @jboss.target-relation-read-ahead specifies the blind side read-ahead Index: JBossRelationTagsHandler.java =================================================================== RCS file: /cvsroot/xdoclet/xdoclet/modules/jboss/src/xdoclet/modules/jboss/ejb/JBossRelationTagsHandler.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** JBossRelationTagsHandler.java 23 Aug 2002 14:15:07 -0000 1.7 --- JBossRelationTagsHandler.java 13 Dec 2002 20:56:39 -0000 1.8 *************** *** 74,77 **** --- 74,119 ---- } + public void ifLeftHasReadAhead(String template) throws XDocletException + { + if (readAheadStrategy(true) != null) { + generate(template); + } + } + + public void ifRightHasReadAhead(String template) throws XDocletException + { + if (readAheadStrategy(false) != null) { + generate(template); + } + } + + public void ifLeftHasReadAheadPageSize(String template) throws XDocletException + { + if (readAheadPageSize(true) != null) { + generate(template); + } + } + + public void ifRightHasReadAheadPageSize(String template) throws XDocletException + { + if (readAheadPageSize(false) != null) { + generate(template); + } + } + + public void ifLeftHasReadAheadEagerLoadGroup(String template) throws +XDocletException + { + if (readAheadEagerLoadGroup(true) != null) { + generate(template); + } + } + + public void ifRightHasReadAheadEagerLoadGroup(String template) throws +XDocletException + { + if (readAheadEagerLoadGroup(false) != null) { + generate(template); + } + } + /** * Describe what the method does *************** *** 164,167 **** --- 206,239 ---- } + public String leftReadAheadStrategy() throws XDocletException + { + return readAheadStrategy(true); + } + + public String rightReadAheadStrategy() throws XDocletException + { + return readAheadStrategy(false); + } + + public String leftReadAheadPageSize() throws XDocletException + { + return readAheadPageSize(true); + } + + public String rightReadAheadPageSize() throws XDocletException + { + return readAheadPageSize(false); + } + + public String leftReadAheadEagerLoadGroup() throws XDocletException + { + return readAheadEagerLoadGroup(true); + } + + public String rightReadAheadEagerLoadGroup() throws XDocletException + { + return readAheadEagerLoadGroup(false); + } + public void ifIsRelationTableMapping(String template) throws XDocletException { *************** *** 246,249 **** --- 318,381 ---- else return methodB.getDoc().getTagAttributeValue("jboss.target-relation", "fk-constraint"); + } + + private String readAheadStrategy(boolean left) + { + XMethod methodA = null; + XMethod methodB = null; + + if (left) { + methodA = currentRelation.getLeftMethod(); + methodB = currentRelation.getRightMethod(); + } + else { + methodA = currentRelation.getRightMethod(); + methodB = currentRelation.getLeftMethod(); + } + + if (methodA != null) + return +methodA.getDoc().getTagAttributeValue("jboss.relation-read-ahead", "strategy"); + else + return +methodB.getDoc().getTagAttributeValue("jboss.target-relation-read-ahead", "strategy"); + } + + private String readAheadPageSize(boolean left) + { + XMethod methodA = null; + XMethod methodB = null; + + if (left) { + methodA = currentRelation.getLeftMethod(); + methodB = currentRelation.getRightMethod(); + } + else { + methodA = currentRelation.getRightMethod(); + methodB = currentRelation.getLeftMethod(); + } + + if (methodA != null) + return +methodA.getDoc().getTagAttributeValue("jboss.relation-read-ahead", "page-size"); + else + return +methodB.getDoc().getTagAttributeValue("jboss.target-relation-read-ahead", +"page-size"); + } + + private String readAheadEagerLoadGroup(boolean left) + { + XMethod methodA = null; + XMethod methodB = null; + + if (left) { + methodA = currentRelation.getLeftMethod(); + methodB = currentRelation.getRightMethod(); + } + else { + methodA = currentRelation.getRightMethod(); + methodB = currentRelation.getLeftMethod(); + } + + if (methodA != null) + return +methodA.getDoc().getTagAttributeValue("jboss.relation-read-ahead", +"eager-load-group"); + else + return +methodB.getDoc().getTagAttributeValue("jboss.target-relation-read-ahead", +"eager-load-group"); } ------------------------------------------------------- This sf.net email is sponsored by: With Great Power, Comes Great Responsibility Learn to use your power at OSDN's High Performance Computing Channel http://hpc.devchannel.org/ _______________________________________________ Xdoclet-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/xdoclet-devel