[jboss-svn-commits] JBL Code SVN: r15063 - in labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners: gateway and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Sep 12 15:21:22 EDT 2007
Author: tcunning
Date: 2007-09-12 15:21:22 -0400 (Wed, 12 Sep 2007)
New Revision: 15063
Modified:
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java
labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/HibernateInterceptor.java
Log:
bug:JBESB-722
Add id, state, oldValues, newValues, property names, and types to the
message properties. The element passed back in the body of the message
is still the entity.
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java 2007-09-12 18:10:02 UTC (rev 15062)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerTagNames.java 2007-09-12 19:21:22 UTC (rev 15063)
@@ -100,6 +100,13 @@
/** Hibernate related */
public static final String HIBERNATE_OBJECT_DATA_TAG = "hibernateObject";
+ public static final String HIBERNATE_INTERCEPTOR_STATE = "hibernateInterceptorState";
+ public static final String HIBERNATE_INTERCEPTOR_ID = "hibernateInterceptorId";
+ public static final String HIBERNATE_INTERCEPTOR_TYPES = "hibernateInterceptorTypes";
+ public static final String HIBERNATE_INTERCEPTOR_NEWVALUES = "hibernateInterceptorNewValues";
+ public static final String HIBERNATE_INTERCEPTOR_OLDVALUES = "hibernateInterceptorOldValues";
+ public static final String HIBERNATE_INTERCEPTOR_PROPERTYNAMES = "hibernateInterceptorPropertyNames";
+
/** SQL related */
public static final String SQL_ROW_DATA_TAG = "sqlRowData";
Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/HibernateInterceptor.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/HibernateInterceptor.java 2007-09-12 18:10:02 UTC (rev 15062)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/HibernateInterceptor.java 2007-09-12 19:21:22 UTC (rev 15063)
@@ -155,6 +155,46 @@
}
/**
+ * Add the message info to the message properties.
+ * @param message message
+ * @param id id
+ * @param newValues newValues
+ * @param oldValues oldValues
+ * @param propertyNames propertyNames4
+ * @param types types
+ */
+ private void addMessageInfo(Message message, Serializable id, Object[] newValues, Object[] oldValues, String[] propertyNames, Type[] types) {
+ if (message != null) {
+ if (id != null) {
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_ID, id);
+ }
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_NEWVALUES, newValues);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_OLDVALUES, oldValues);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_PROPERTYNAMES, propertyNames);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_TYPES, types);
+ }
+ }
+
+ /** ..
+ * Add the message info to the message properties.
+ * @param message message
+ * @param id id
+ * @param state state
+ * @param propertyNames propertyNames
+ * @param types types
+ */
+ private void addMessageInfo(Message message, Serializable id, Object[] state, String[] propertyNames, Type[] types) {
+ if (message != null) {
+ if (id != null) {
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_ID, id);
+ }
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_STATE, state);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_PROPERTYNAMES, propertyNames);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_TYPES, types);
+ }
+ }
+
+ /**
* Delivers the message.
* @param messageObject
*/
@@ -266,6 +306,7 @@
if (heb.getEvent().equals(COLLECTION_REMOVE_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_ID, id);
deliverMessage(message);
}
}
@@ -278,6 +319,7 @@
if (heb.getEvent().equals(COLLECTION_UPDATE_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ message.getProperties().setProperty(ListenerTagNames.HIBERNATE_INTERCEPTOR_ID, id);
deliverMessage(message);
}
}
@@ -290,6 +332,7 @@
if (heb.getEvent().equals(DELETE_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ addMessageInfo(message, id, state, propertyNames, types);
deliverMessage(message);
}
}
@@ -302,6 +345,7 @@
if (heb.getEvent().equals(FLUSH_DIRTY_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ addMessageInfo(message, id, newValues, oldValues, propertyNames, types);
deliverMessage(message);
}
}
@@ -315,6 +359,7 @@
if (heb.getEvent().equals(LOAD_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ addMessageInfo(message, id, state, propertyNames, types);
deliverMessage(message);
}
}
@@ -323,12 +368,13 @@
}
public boolean onSave(Object entity, Serializable id, Object[] state,
- String[] propertyNames, Type[] types) throws CallbackException {
+ String[] propertyNames, Type[] types) throws CallbackException {
System.out.println("onSave");
for (HibernateEventBean heb: m_events) {
if (heb.getEvent().equals(SAVE_EVENT)) {
if (entity.getClass().getName().equals(heb.getClassname())) {
Message message = createMessage(entity);
+ addMessageInfo(message, id, state, propertyNames, types);
deliverMessage(message);
}
}
More information about the jboss-svn-commits
mailing list