net.intelie.pipes.PipeInstanceValve Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pipes-api Show documentation
Show all versions of pipes-api Show documentation
Intelie Pipes' API classes and interfaces
package net.intelie.pipes;
import net.intelie.pipes.filters.Filter;
import net.intelie.pipes.time.SchedulerContext;
import net.intelie.pipes.types.Metadata;
public class PipeInstanceValve implements Valve {
private final Filter filter;
private final Pipe pipe;
private final PipeInstance instance;
public PipeInstanceValve(Filter filter, Pipe pipe, PipeInstance instance) {
this.filter = filter;
this.pipe = pipe;
this.instance = instance;
}
@Override
public Filter filter() {
return filter;
}
@Override
public Pipe pipe() {
return pipe;
}
@Override
public PipeInstance instance() {
return instance;
}
@Override
public Metadata metadata() {
return pipe.metadata();
}
@Override
public void flowUnfiltered(Object obj) {
instance.flow(obj);
}
@Override
public void flowManyUnfiltered(Iterable iterable) {
instance.flowMany(iterable);
}
@Override
public void turnOn() {
throw new UnsupportedOperationException("Cannot turn on FullPipe valve without scheduler context");
}
@Override
public void turnOn(SchedulerContext context) {
instance.turnOn(context);
}
@Override
public void advanceTo(long time) {
instance.advanceTo(time);
}
@Override
public boolean dettach() {
return true;
}
@Override
public boolean destroy() {
instance.destroy();
return true;
}
}