User: dsundstrom
Date: 01/12/01 17:41:46
Modified: src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge
JDBCCMP1xFieldBridge.java JDBCCMP2xFieldBridge.java
JDBCCMRFieldBridge.java JDBCEntityBridge.java
Log:
Finished removal of lame factorization.
Moved CMPStoreManager.PersistenceContext to JDBCContext.
Revision Changes Path
1.9 +24 -15
jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMP1xFieldBridge.java
Index: JDBCCMP1xFieldBridge.java
===================================================================
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMP1xFieldBridge.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- JDBCCMP1xFieldBridge.java 2001/11/26 03:12:26 1.8
+++ JDBCCMP1xFieldBridge.java 2001/12/02 01:41:46 1.9
@@ -16,7 +16,7 @@
import org.jboss.deployment.DeploymentException;
import org.jboss.ejb.EntityEnterpriseContext;
-import org.jboss.ejb.plugins.cmp.CMPStoreManager;
+import org.jboss.ejb.plugins.cmp.jdbc.JDBCContext;
import org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager;
import org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCCMPFieldMetaData;
@@ -35,19 +35,24 @@
* One for each entity bean cmp field.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Dain Sundstrom</a>
- * @version $Revision: 1.8 $
+ * @version $Revision: 1.9 $
*/
public class JDBCCMP1xFieldBridge extends JDBCAbstractCMPFieldBridge {
- protected Field field;
+ private Field field;
- public JDBCCMP1xFieldBridge(JDBCStoreManager manager, JDBCCMPFieldMetaData
metadata) throws DeploymentException {
+ public JDBCCMP1xFieldBridge(
+ JDBCStoreManager manager,
+ JDBCCMPFieldMetaData metadata) throws DeploymentException {
+
super(manager, metadata);
try {
- field = manager.getMetaData().getEntityClass().getField(getFieldName());
+ field = manager.getMetaData().getEntityClass().getField(
+ getFieldName());
} catch(NoSuchFieldException e) {
// Non recoverable internal exception
- throw new DeploymentException("No field named '" + getFieldName() + "'
found in entity class.");
+ throw new DeploymentException("No field named '" + getFieldName() +
+ "' found in entity class.");
}
}
@@ -56,7 +61,8 @@
return field.get(ctx.getInstance());
} catch(Exception e) {
// Non recoverable internal exception
- throw new EJBException("Internal error getting instance field " +
getFieldName() + ": " + e);
+ throw new EJBException("Internal error getting instance field " +
+ getFieldName() + ": " + e);
}
}
@@ -65,7 +71,8 @@
field.set(ctx.getInstance(), value);
} catch(Exception e) {
// Non recoverable internal exception
- throw new EJBException("Internal error setting instance field " +
getFieldName() + ": " + e);
+ throw new EJBException("Internal error setting instance field " +
+ getFieldName() + ": " + e);
}
}
@@ -84,7 +91,8 @@
/**
* Mark this field as clean.
- * Saves the current state in context, so it can be compared when isDirty is
called.
+ * Saves the current state in context, so it can be compared when
+ * isDirty is called.
*/
public void setClean(EntityEnterpriseContext ctx) {
FieldState fieldState = getFieldState(ctx);
@@ -98,7 +106,8 @@
public boolean isReadTimedOut(EntityEnterpriseContext ctx) {
if(isReadOnly()) {
- long readInterval = System.currentTimeMillis() -
getFieldState(ctx).lastRead;
+ long readInterval = System.currentTimeMillis() -
+ getFieldState(ctx).lastRead;
return readInterval > metadata.getReadTimeOut();
}
@@ -108,17 +117,17 @@
public void resetPersistenceContext(EntityEnterpriseContext ctx) {
if(isReadTimedOut(ctx)) {
- Map fieldStates =
((CMPStoreManager.PersistenceContext)ctx.getPersistenceContext()).fieldState;
- fieldStates.put(this, new FieldState());
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ jdbcCtx.put(this, new FieldState());
}
}
private FieldState getFieldState(EntityEnterpriseContext ctx) {
- Map fieldStates =
((CMPStoreManager.PersistenceContext)ctx.getPersistenceContext()).fieldState;
- FieldState fieldState = (FieldState)fieldStates.get(this);
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ FieldState fieldState = (FieldState)jdbcCtx.get(this);
if(fieldState == null) {
fieldState = new FieldState();
- fieldStates.put(this, fieldState);
+ jdbcCtx.put(this, fieldState);
}
return fieldState;
}
1.9 +14 -18
jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMP2xFieldBridge.java
Index: JDBCCMP2xFieldBridge.java
===================================================================
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMP2xFieldBridge.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- JDBCCMP2xFieldBridge.java 2001/11/26 03:12:26 1.8
+++ JDBCCMP2xFieldBridge.java 2001/12/02 01:41:46 1.9
@@ -14,7 +14,7 @@
import org.jboss.deployment.DeploymentException;
import org.jboss.ejb.EntityEnterpriseContext;
-import org.jboss.ejb.plugins.cmp.CMPStoreManager;
+import org.jboss.ejb.plugins.cmp.jdbc.JDBCContext;
import org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager;
import org.jboss.ejb.plugins.cmp.jdbc.JDBCType;
import org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCCMPFieldMetaData;
@@ -32,9 +32,10 @@
* One for each entity bean cmp field.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Dain Sundstrom</a>
- * @version $Revision: 1.8 $
+ * @version $Revision: 1.9 $
*/
public class JDBCCMP2xFieldBridge extends JDBCAbstractCMPFieldBridge {
+
public JDBCCMP2xFieldBridge(
JDBCStoreManager manager,
JDBCCMPFieldMetaData metadata) throws DeploymentException {
@@ -78,9 +79,9 @@
fieldState.value = value;
}
- /**
- * Has the value of this field changes since the last time clean was called.
- */
+ /**
+ * Has the value of this field changes since the last time clean was called.
+ */
public boolean isDirty(EntityEnterpriseContext ctx) {
// read only and primary key fields are never dirty
if(isReadOnly() || isPrimaryKeyMember()) {
@@ -91,9 +92,9 @@
}
/**
- * Mark this field as clean. Saves the current state in context, so it
- * can be compared when isDirty is called.
- */
+ * Mark this field as clean. Saves the current state in context, so it
+ * can be compared when isDirty is called.
+ */
public void setClean(EntityEnterpriseContext ctx) {
FieldState fieldState = getFieldState(ctx);
fieldState.isDirty = false;
@@ -106,8 +107,8 @@
public void resetPersistenceContext(EntityEnterpriseContext ctx) {
if(isReadTimedOut(ctx)) {
- Map fieldStates =
((CMPStoreManager.PersistenceContext)ctx.getPersistenceContext()).fieldState;
- fieldStates.put(this, new FieldState());
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ jdbcCtx.put(this, new FieldState());
}
}
@@ -122,17 +123,12 @@
return true;
}
- private CMPStoreManager.PersistenceContext getPersistenceContext(
- EntityEnterpriseContext ctx) {
- return (CMPStoreManager.PersistenceContext)ctx.getPersistenceContext();
- }
-
public FieldState getFieldState(EntityEnterpriseContext ctx) {
- Map fieldStates = getPersistenceContext(ctx).fieldState;
- FieldState fieldState = (FieldState)fieldStates.get(this);
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ FieldState fieldState = (FieldState)jdbcCtx.get(this);
if(fieldState == null) {
fieldState = new FieldState();
- fieldStates.put(this, fieldState);
+ jdbcCtx.put(this, fieldState);
}
return fieldState;
}
1.16 +33 -40
jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMRFieldBridge.java
Index: JDBCCMRFieldBridge.java
===================================================================
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCCMRFieldBridge.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- JDBCCMRFieldBridge.java 2001/11/28 11:32:55 1.15
+++ JDBCCMRFieldBridge.java 2001/12/02 01:41:46 1.16
@@ -26,8 +26,8 @@
import org.jboss.ejb.MethodInvocation;
import org.jboss.ejb.plugins.CMPPersistenceManager;
import org.jboss.ejb.plugins.EntityInstanceCache;
-import org.jboss.ejb.plugins.cmp.CMPStoreManager;
import org.jboss.ejb.plugins.cmp.bridge.CMRFieldBridge;
+import org.jboss.ejb.plugins.cmp.jdbc.JDBCContext;
import org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager;
import org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCCMPFieldMetaData;
import org.jboss.ejb.plugins.cmp.jdbc.metadata.JDBCRelationMetaData;
@@ -47,18 +47,18 @@
* One for each role that entity has.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Dain Sundstrom</a>
- * @version $Revision: 1.15 $
+ * @version $Revision: 1.16 $
*/
public class JDBCCMRFieldBridge implements CMRFieldBridge {
// ------ Invocation messages ------
/** tells the related continer to retrieve the id of the related entity */
- protected static final Method GET_RELATED_ID;
+ private static final Method GET_RELATED_ID;
/** tells the related continer to add an id to its list related entities */
- protected static final Method ADD_RELATION;
+ private static final Method ADD_RELATION;
/** tells the related continer to remove an id from its list related
* entities */
- protected static final Method REMOVE_RELATION;
+ private static final Method REMOVE_RELATION;
// set the message method objects
static {
@@ -90,72 +90,72 @@
/**
* The entity bridge to which this cmr field belongs.
*/
- protected JDBCEntityBridge entity;
+ private JDBCEntityBridge entity;
/**
* The manager of this entity.
*/
- protected JDBCStoreManager manager;
+ private JDBCStoreManager manager;
/**
* Metadata of the relationship role that this field represents.
*/
- protected JDBCRelationshipRoleMetaData metadata;
+ private JDBCRelationshipRoleMetaData metadata;
/**
* Does this cmr field have foreign keys.
*/
- protected boolean hasForeignKey;
+ private boolean hasForeignKey;
/**
* The key fields that this entity maintains in the relation table.
*/
- protected JDBCCMPFieldBridge[] tableKeyFields;
+ private JDBCCMPFieldBridge[] tableKeyFields;
/**
* Foreign key fields of this entity (i.e., related entities pk fields)
*/
- protected JDBCCMPFieldBridge[] foreignKeyFields;
+ private JDBCCMPFieldBridge[] foreignKeyFields;
/**
* The related entity's container.
*/
- protected EntityContainer relatedContainer;
+ private EntityContainer relatedContainer;
/**
* The related entity's entity cache.
*/
- protected EntityCache relatedCache;
+ private EntityCache relatedCache;
/**
* The related entity's jdbc store manager
*/
- protected JDBCStoreManager relatedManager;
+ private JDBCStoreManager relatedManager;
/**
* The related entity's local container invoker.
*/
- protected LocalContainerInvoker relatedInvoker;
+ private LocalContainerInvoker relatedInvoker;
/**
* The related entity.
*/
- protected JDBCEntityBridge relatedEntity;
+ private JDBCEntityBridge relatedEntity;
/**
* The related entity's cmr field for this relationship.
*/
- protected JDBCCMRFieldBridge relatedCMRField;
+ private JDBCCMRFieldBridge relatedCMRField;
/**
* The related entity's local home interface.
*/
- protected Class relatedLocalInterface;
+ private Class relatedLocalInterface;
/**
* da log.
*/
- protected Logger log;
+ private Logger log;
/**
* Creates a cmr field for the entity based on the metadata.
@@ -289,7 +289,7 @@
* Initialize this half of the relation with data from the related
* cmr field. See initRelatedData().
*/
- protected void initRelatedData(JDBCEntityBridge relatedEntity)
+ private void initRelatedData(JDBCEntityBridge relatedEntity)
throws DeploymentException {
this.relatedEntity = relatedEntity;
@@ -557,7 +557,7 @@
* Invokes the getRelatedId on the related CMR field via the container
* invocation interceptor chain.
*/
- protected Object invokeGetRelatedId(Transaction tx, Object myId) {
+ private Object invokeGetRelatedId(Transaction tx, Object myId) {
try {
EntityInstanceCache instanceCache =
(EntityInstanceCache)manager.getContainer().getInstanceCache();
@@ -582,7 +582,7 @@
* Invokes the addRelation on the related CMR field via the container
* invocation interceptor chain.
*/
- protected void invokeAddRelation(
+ private void invokeAddRelation(
Transaction tx, Object myId, Object relatedId) {
try {
@@ -609,7 +609,7 @@
* Invokes the removeRelation on the related CMR field via the container
* invocation interceptor chain.
*/
- protected void invokeRemoveRelation(
+ private void invokeRemoveRelation(
Transaction tx, Object myId, Object relatedId) {
try {
@@ -717,7 +717,7 @@
/**
* loads the collection of related ids
*/
- protected void load(EntityEnterpriseContext myCtx) {
+ private void load(EntityEnterpriseContext myCtx) {
FieldState fieldState = getFieldState(myCtx);
if(fieldState != null) {
return;
@@ -760,7 +760,7 @@
/**
* Sets the foreign key field value.
*/
- protected void setForeignKey(
+ private void setForeignKey(
EntityEnterpriseContext myCtx, Object foreignKey) {
if(!hasForeignKey()) {
@@ -804,39 +804,32 @@
/**
* Gets the field state object from the persistence context.
*/
- protected FieldState getFieldState(EntityEnterpriseContext ctx) {
- Map fieldStates = getPersistenceContext(ctx).fieldState;
- FieldState fieldState = (FieldState)fieldStates.get(this);
- return fieldState;
+ private FieldState getFieldState(EntityEnterpriseContext ctx) {
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ return (FieldState)jdbcCtx.get(this);
}
/**
* Sets the field state object in the persistence context.
*/
- protected void setFieldState(
+ private void setFieldState(
EntityEnterpriseContext ctx, FieldState fieldState) {
- Map fieldStates = getPersistenceContext(ctx).fieldState;
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
// invalidate current field state
- FieldState currentFieldState = (FieldState)fieldStates.get(this);
+ FieldState currentFieldState = (FieldState)jdbcCtx.get(this);
if(currentFieldState != null) {
currentFieldState.invalidate();
}
if(fieldState == null) {
- fieldStates.remove(this);
+ jdbcCtx.remove(this);
} else {
- fieldStates.put(this, fieldState);
+ jdbcCtx.put(this, fieldState);
}
}
- private CMPStoreManager.PersistenceContext getPersistenceContext(
- EntityEnterpriseContext ctx) {
-
- return (CMPStoreManager.PersistenceContext)ctx.getPersistenceContext();
- }
-
private class FieldState {
EntityEnterpriseContext ctx;
private Set[] setHandle = new Set[1];
1.16 +8 -14
jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCEntityBridge.java
Index: JDBCEntityBridge.java
===================================================================
RCS file:
/cvsroot/jboss/jboss/src/main/org/jboss/ejb/plugins/cmp/jdbc/bridge/JDBCEntityBridge.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- JDBCEntityBridge.java 2001/12/01 21:55:05 1.15
+++ JDBCEntityBridge.java 2001/12/02 01:41:46 1.16
@@ -23,8 +23,7 @@
import org.jboss.deployment.DeploymentException;
import org.jboss.ejb.EntityEnterpriseContext;
-import org.jboss.ejb.plugins.cmp.CMPStoreManager;
-
+import org.jboss.ejb.plugins.cmp.jdbc.JDBCContext;
import org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager;
import org.jboss.ejb.plugins.cmp.bridge.EntityBridge;
@@ -52,7 +51,7 @@
* One per cmp entity bean type.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Dain Sundstrom</a>
- * @version $Revision: 1.15 $
+ * @version $Revision: 1.16 $
*/
public class JDBCEntityBridge implements EntityBridge {
protected JDBCEntityMetaData metadata;
@@ -410,12 +409,12 @@
}
}
- ctx.setPersistenceContext(new CMPStoreManager.PersistenceContext());
+ ctx.setPersistenceContext(new JDBCContext());
}
/**
- * This is only called in commit option B
- */
+ * This is only called in commit option B
+ */
public void resetPersistenceContext(EntityEnterpriseContext ctx) {
for(int i=0; i<cmpFields.length; i++) {
cmpFields[i].resetPersistenceContext(ctx);
@@ -548,17 +547,12 @@
}
}
- private CMPStoreManager.PersistenceContext getPersistenceContext(
- EntityEnterpriseContext ctx) {
- return (CMPStoreManager.PersistenceContext)ctx.getPersistenceContext();
- }
-
public EntityState getEntityState(EntityEnterpriseContext ctx) {
- Map state = getPersistenceContext(ctx).fieldState;
- EntityState entityState = (EntityState)state.get(this);
+ JDBCContext jdbcCtx = (JDBCContext)ctx.getPersistenceContext();
+ EntityState entityState = (EntityState)jdbcCtx.get(this);
if(entityState == null) {
entityState = new EntityState();
- state.put(this, entityState);
+ jdbcCtx.put(this, entityState);
}
return entityState;
}
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development