
com.viaoa.hub.HubTrigger Maven / Gradle / Ivy
package com.viaoa.hub;
import com.viaoa.object.OAObject;
import com.viaoa.remote.multiplexer.OARemoteThreadDelegate;
import com.viaoa.util.OAFilter;
/**
* This is used to listen to Hub for objects that match filter criteria and then call the onTrigger method.
* @author vvia
*/
public abstract class HubTrigger extends HubFilter {
private static final long serialVersionUID = 1L;
public HubTrigger(Hub hubMaster) {
super(hubMaster, null);
}
public HubTrigger(Hub hubMaster, OAFilter filter, String ... dependentPropertyPaths) {
super(hubMaster, null, filter, dependentPropertyPaths);
}
@Override
protected void addObject(T obj, boolean bIsInitialzing) {
super.addObject(obj, bIsInitialzing);
if (bIsInitialzing) return;
onTrigger(obj);
}
@Override
protected void removeObject(T obj) {
super.removeObject(obj);
}
public abstract void onTrigger(T obj);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy