Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

com.hp.hpl.jena.graph.query
Class BufferPipe  view BufferPipe download BufferPipe.java

java.lang.Object
  extended bycom.hp.hpl.jena.graph.query.BufferPipe
All Implemented Interfaces:
Pipe

public class BufferPipe
extends java.lang.Object
implements Pipe

This class is a pipe between query threads, implemented as a bounded buffer.


Nested Class Summary
static class BufferPipe.BoundedBufferPutException
          Exception to throw if a put throws an exception.
static class BufferPipe.BoundedBufferTakeException
          Exception to throw if a take throws an exception.
static class BufferPipe.Finished
           
 
Field Summary
private  EDU.oswego.cs.dl.util.concurrent.BoundedBuffer buffer
           
private static BufferPipe.Finished finished
           
private  boolean open
           
private  java.lang.Object pending
           
 
Constructor Summary
BufferPipe()
           
 
Method Summary
 void close()
          Close the pipe.
 void close(java.lang.Exception e)
          Close the pipe (see close()) and record e as its termination status.
private  java.lang.Object fetch()
          put something into the pipe; take care of BoundedBuffer's checked exceptions
 Domain get()
          Answer the next element if there is one, otherwise throw a NoSuchElementException.
 boolean hasNext()
          Answer true iff there are more elements for get() to get.
 void put(Domain d)
          Put a domain element into the pipe for later extraction.
private  void putAny(java.lang.Object d)
          get something from the pipe; take care of BoundedBuffer's checked exceptions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

open

private boolean open

buffer

private EDU.oswego.cs.dl.util.concurrent.BoundedBuffer buffer

pending

private java.lang.Object pending

finished

private static final BufferPipe.Finished finished
Constructor Detail

BufferPipe

public BufferPipe()
Method Detail

fetch

private java.lang.Object fetch()
put something into the pipe; take care of BoundedBuffer's checked exceptions


putAny

private void putAny(java.lang.Object d)
get something from the pipe; take care of BoundedBuffer's checked exceptions


put

public void put(Domain d)
Description copied from interface: Pipe
Put a domain element into the pipe for later extraction.

Specified by:
put in interface Pipe

close

public void close()
Description copied from interface: Pipe
Close the pipe. hasNext() will deliver false, and get will throw an exception.

Specified by:
close in interface Pipe

close

public void close(java.lang.Exception e)
Description copied from interface: Pipe
Close the pipe (see close()) and record e as its termination status. Any get from the pipe must then fail, throwing an exception.

Specified by:
close in interface Pipe

hasNext

public boolean hasNext()
Description copied from interface: Pipe
Answer true iff there are more elements for get() to get. If the pipe was closed with an exception, throw that exception.

Specified by:
hasNext in interface Pipe

get

public Domain get()
Description copied from interface: Pipe
Answer the next element if there is one, otherwise throw a NoSuchElementException.

Specified by:
get in interface Pipe