[jboss-svn-commits] JBL Code SVN: r24900 - labs/jbossrules/branches/salaboy_VariablePersistenceStrategy/drools-core/src/main/java/org/drools/marshalling.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Jan 23 14:40:39 EST 2009
Author: salaboy21
Date: 2009-01-23 14:40:39 -0500 (Fri, 23 Jan 2009)
New Revision: 24900
Modified:
labs/jbossrules/branches/salaboy_VariablePersistenceStrategy/drools-core/src/main/java/org/drools/marshalling/OutputMarshaller.java
Log:
overload the method to include or not the variable in the marshalling
Modified: labs/jbossrules/branches/salaboy_VariablePersistenceStrategy/drools-core/src/main/java/org/drools/marshalling/OutputMarshaller.java
===================================================================
--- labs/jbossrules/branches/salaboy_VariablePersistenceStrategy/drools-core/src/main/java/org/drools/marshalling/OutputMarshaller.java 2009-01-23 19:38:43 UTC (rev 24899)
+++ labs/jbossrules/branches/salaboy_VariablePersistenceStrategy/drools-core/src/main/java/org/drools/marshalling/OutputMarshaller.java 2009-01-23 19:40:39 UTC (rev 24900)
@@ -746,28 +746,36 @@
public static void writeProcessInstance(MarshallerWriteContext context,
RuleFlowProcessInstance processInstance) throws IOException {
+ writeProcessInstance(context, processInstance, true);
+ }
+
+ public static void writeProcessInstance(MarshallerWriteContext context,
+ RuleFlowProcessInstance processInstance, boolean includeVariables) throws IOException {
ObjectOutputStream stream = context.stream;
stream.writeLong( processInstance.getId() );
stream.writeUTF( processInstance.getProcessId() );
stream.writeInt( processInstance.getState() );
stream.writeLong( processInstance.getNodeInstanceCounter() );
- VariableScopeInstance variableScopeInstance = (VariableScopeInstance) processInstance.getContextInstance( VariableScope.VARIABLE_SCOPE );
- Map<String, Object> variables = variableScopeInstance.getVariables();
- List<String> keys = new ArrayList<String>( variables.keySet() );
- Collections.sort( keys,
- new Comparator<String>() {
- public int compare(String o1,
- String o2) {
- return o1.compareTo( o2 );
- }
- } );
- stream.writeInt( keys.size() );
- for ( String key : keys ) {
- stream.writeUTF( key );
- stream.writeObject( variables.get( key ) );
+ if(includeVariables){
+ VariableScopeInstance variableScopeInstance = (VariableScopeInstance) processInstance.getContextInstance( VariableScope.VARIABLE_SCOPE );
+ Map<String, Object> variables = variableScopeInstance.getVariables();
+
+
+ List<String> keys = new ArrayList<String>( variables.keySet() );
+ Collections.sort( keys,
+ new Comparator<String>() {
+ public int compare(String o1,
+ String o2) {
+ return o1.compareTo( o2 );
+ }
+ } );
+ stream.writeInt( keys.size() );
+ for ( String key : keys ) {
+ stream.writeUTF( key );
+ stream.writeObject( variables.get( key ) );
+ }
}
-
SwimlaneContextInstance swimlaneContextInstance = (SwimlaneContextInstance) processInstance.getContextInstance( SwimlaneContext.SWIMLANE_SCOPE );
Map<String, String> swimlaneActors = swimlaneContextInstance.getSwimlaneActors();
stream.writeInt( swimlaneActors.size() );
More information about the jboss-svn-commits
mailing list