public InternalFactHandle getFactHandle(FactHandle factHandle, KieSession ksession) { Map<Integer, FactHandle> handles = new HashMap<Integer, FactHandle>(); for ( FactHandle fh : ksession.getFactHandles() ) { handles.put( ((InternalFactHandle) fh).getId(), fh ); } return (InternalFactHandle) handles.get( ((InternalFactHandle) factHandle).getId() ); }
public InternalFactHandle getFactHandle(FactHandle factHandle, StatefulKnowledgeSessionImpl session) { Map<Integer, FactHandle> handles = new HashMap<Integer, FactHandle>(); for ( FactHandle fh : session.getFactHandles() ) { handles.put( ((InternalFactHandle) fh).getId(), fh ); } return (InternalFactHandle) handles.get( ((InternalFactHandle) factHandle).getId() ); }
@Test public void testOrderFacts() throws Exception { List<InternalFactHandle> list = new ArrayList<InternalFactHandle>(); List<Integer> ids = Arrays.asList(0, 1, 2, 3, 4, 5, 6, 30, 31, 32, -2147483640, 7, 8, 9, 10, 11, 12, 13,14, 15, 28, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27); for(Integer i : ids) { list.add(new DefaultFactHandle(i.intValue(), i)); } InternalFactHandle first = ProtobufOutputMarshaller.orderFacts(list)[0]; assertEquals(-2147483640, first.getId()); } }
InternalFactHandle handle) throws IOException { stream.writeInt( type ); stream.writeInt( handle.getId() ); stream.writeLong( handle.getRecency() );
FactHandle copyFh = copyRow.getFactHandle(id); if( fh != null ) { assertNotNull( "Flat query result [" + i + "] does not contain facthandle: '" + ((InternalFactHandle) fh).getId() + "'", copyFh); String fhStr = fh.toExternalForm(); fhStr = fhStr.substring(0, fhStr.lastIndexOf(":")); String copyFhStr = copyFh.toExternalForm(); copyFhStr = copyFhStr.substring(0, copyFhStr.lastIndexOf(":")); assertEquals( "Unequal fact handles for fact handle '" + ((InternalFactHandle) fh).getId() + "':", fhStr, copyFhStr );
InternalFactHandle handle) throws IOException { stream.writeInt( type ); stream.writeInt( handle.getId() ); stream.writeLong( handle.getRecency() );