[jboss-svn-commits] JBL Code SVN: r19202 - labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Mar 21 22:27:17 EDT 2008
Author: mingjin
Date: 2008-03-21 22:27:16 -0400 (Fri, 21 Mar 2008)
New Revision: 19202
Modified:
labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java
Log:
JBRULES-1095 Rete build performance optimization
Modified: labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java
===================================================================
--- labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java 2008-03-22 01:58:04 UTC (rev 19201)
+++ labs/jbossrules/branches/ming-serialization/drools-core/src/main/java/org/drools/reteoo/CompositeObjectSinkAdapter.java 2008-03-22 02:27:16 UTC (rev 19202)
@@ -429,29 +429,28 @@
}
public ObjectSink[] getSinks() {
- final List list = new ArrayList();
+ ObjectSink[] list = new ObjectSink[size()];
+ int at = 0;
if ( this.otherSinks != null ) {
for ( ObjectSinkNode sink = this.otherSinks.getFirst(); sink != null; sink = sink.getNextObjectSinkNode() ) {
- list.add( sink );
+ list[at++] = sink ;
}
}
if ( this.hashableSinks != null ) {
for ( ObjectSinkNode sink = this.hashableSinks.getFirst(); sink != null; sink = sink.getNextObjectSinkNode() ) {
- list.add( sink );
+ list[at++] = sink ;
}
}
if ( this.hashedSinkMap != null ) {
final Iterator it = this.hashedSinkMap.newIterator();
for ( ObjectEntry entry = (ObjectEntry) it.next(); entry != null; entry = (ObjectEntry) it.next() ) {
- final ObjectSink sink = (ObjectSink) entry.getValue();
- list.add( sink );
+ list[at++] = (ObjectSink) entry.getValue() ;
}
}
-
- return (ObjectSink[]) list.toArray( new ObjectSink[list.size()] );
+ return list;
}
public int size() {
More information about the jboss-svn-commits
mailing list