All Downloads are FREE. Search and download functionalities are using the official Maven repository.

de.tsl2.nano.vnet.runner.RunnableCover Maven / Gradle / Ivy

Go to download

TSL2 Framework VirtualNetwork (Generic parallelized Network-Mechanism providing implementations for: NeuronalNetwork, Routing, Workflow)

The newest version!
package de.tsl2.nano.vnet.runner;

import java.io.Serializable;
import java.util.Map;

import de.tsl2.nano.core.messaging.IListener;
import de.tsl2.nano.execution.IPRunnable;
import de.tsl2.nano.structure.Cover;
import de.tsl2.nano.vnet.ILocatable;
import de.tsl2.nano.vnet.Notification;

/**
 * covers an {@link IPRunnable} (perhaps to run a script) to be used in vnet.
 * 
 * @param 
 * @param 
 * @author Tom, Thomas Schneider
 * @version $Revision$
 */
class RunnableCover> & Serializable & Comparable, D extends Comparable>
        extends
        Cover implements ILocatable, IListener {

    /** serialVersionUID */
    private static final long serialVersionUID = 1L;

    public RunnableCover(T core, D descriptor) {
        super(core, descriptor);
    }

    @Override
    public void handleEvent(Notification event) {
        //do something like a calculation
        Object result = getContent().run(event.getResponse(), event.getNotification());
        event.addResponse(getPath(), result);
    }

    @Override
    public String getPath() {
        return toString();
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy