/** * Fire content changed listeners. */ protected void fireContentChangedListeners() { fireContentChangedListeners( true ); }
@Override public void setChanged() { changedFlag.setChanged(); fireContentChangedListeners( true ); }
@Override public void clearChanged() { clearChangedDatabases(); changedNotes = false; for ( int i = 0; i < nrNotes(); i++ ) { getNote( i ).setChanged( false ); } changedFlag.clearChanged(); fireContentChangedListeners( false ); }
@Test public void testAddRemoveFireContentChangedListener() throws Exception { assertTrue( meta.getContentChangedListeners().isEmpty() ); ContentChangedListener listener = mock( ContentChangedListener.class ); meta.addContentChangedListener( listener ); assertFalse( meta.getContentChangedListeners().isEmpty() ); meta.fireContentChangedListeners(); verify( listener, times( 1 ) ).contentChanged( anyObject() ); verify( listener, never() ).contentSafe( anyObject() ); meta.fireContentChangedListeners( true ); verify( listener, times( 2 ) ).contentChanged( anyObject() ); verify( listener, never() ).contentSafe( anyObject() ); meta.fireContentChangedListeners( false ); verify( listener, times( 2 ) ).contentChanged( anyObject() ); verify( listener, times( 1 ) ).contentSafe( anyObject() ); meta.removeContentChangedListener( listener ); assertTrue( meta.getContentChangedListeners().isEmpty() ); }