X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.simulation%2Fsrc%2Forg%2Fsimantics%2Fsimulation%2Fdata%2FAbstractDatasource.java;h=7b6e791daafbc8489e4c3c75f699b46d472bf0bb;hb=f212fa100ac8c0ce464a826794b3d1737b138b25;hp=4a15cba5214eb4eed4bdeb540a2f925a9b3fa97e;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.simulation/src/org/simantics/simulation/data/AbstractDatasource.java b/bundles/org.simantics.simulation/src/org/simantics/simulation/data/AbstractDatasource.java index 4a15cba52..7b6e791da 100644 --- a/bundles/org.simantics.simulation/src/org/simantics/simulation/data/AbstractDatasource.java +++ b/bundles/org.simantics.simulation/src/org/simantics/simulation/data/AbstractDatasource.java @@ -20,7 +20,7 @@ import org.simantics.utils.datastructures.ListenerList; */ public abstract class AbstractDatasource implements Datasource { - protected ListenerList listeners = new ListenerList(DatasourceListener.class); + protected ListenerList listeners = new ListenerList<>(DatasourceListener.class); protected Lock readLock, writeLock; public AbstractDatasource() { @@ -40,20 +40,20 @@ public abstract class AbstractDatasource implements Datasource { listeners.remove(listener); } - protected void notifyStep() { - for (final DatasourceListener l : listeners.getListeners()) { + protected void notifyStep(Datasource source) { + for (DatasourceListener l : listeners.getListeners()) { if (l.getExecutor() == null) { - l.onStep( AbstractDatasource.this ); + l.onStep( source ); } else { - l.getExecutor().execute(new Runnable() { - public void run() { - l.onStep(AbstractDatasource.this); - } - }); + l.getExecutor().execute(() -> l.onStep(source)); } } } + protected void notifyStep() { + notifyStep(AbstractDatasource.this); + } + @Override public Lock readLock() { return readLock;