All pastes #807674 Raw Edit

Etwas

public java v1 · immutable
·published 2007-12-06 22:36 UTC
rendered paste body
	@Test	public void test_ShouldReceiveNotifications() throws RemoteException, NotBoundException {		Registry reg = LocateRegistry.getRegistry(1099);			IDBServer server = (IDBServer) reg.lookup( RmiUtility.getObjectNameForInstance(0));				TestRmiSubscriber subscriber = new TestRmiSubscriber(RmiUtility.getObjectNameForInstance(0));		TestRmiSubscriber subscriber2 = new TestRmiSubscriber(RmiUtility.getObjectNameForInstance(0));				TestUtility.setupRmiNotificationScenario(server);				server.insert("persons", "1", "j. bauer");		server.insert("heroes", "1", "batman");				assertEquals(2, subscriber.getModificationsForTable("*", DatabaseModificationAction.Unknown));		assertEquals(2, subscriber2.getModificationsForTable("*", DatabaseModificationAction.Unknown));		// update's and deletes				server.update("persons", new ColumnValue("id","1"), new ColumnValue("id","jack bauer"));				server.delete("heroes", new ColumnValue("id","batman"));		server.delete("heroes", new ColumnValue("id","1"));						assertEquals(1, subscriber.getModificationsForTable("*", DatabaseModificationAction.Update));		assertEquals(1, subscriber2.getModificationsForTable("*", DatabaseModificationAction.Update));				assertEquals(1, subscriber.getModificationsForTable("*", DatabaseModificationAction.Delete));		assertEquals(1, subscriber2.getModificationsForTable("*", DatabaseModificationAction.Delete));			}// subscriber:	public TestRmiSubscriber(String serverName) throws RemoteException, NotBoundException	{		UnicastRemoteObject.exportObject(this,0);				Registry reg = LocateRegistry.getRegistry(1099);			IDBServer server = (IDBServer) reg.lookup( serverName );		server.getNotificationProvider().optInSubscriber(this);	}	public void receive(IDatabaseModification modification) {		modifications.add(modification);			System.out.println("received modification");	}// ergebnis:/*DBServer boundsubscriber added, count now 1subscriber added, count now 1received modification; distributed 0 timesreceived modification; distributed 0 timesdeleted ./personsdeleted ./heroes*/