Package org.jspace

Class RemoteSpace

java.lang.Object
org.jspace.RemoteSpace
All Implemented Interfaces:
Space

public class RemoteSpace
extends java.lang.Object
implements Space
  • Constructor Summary

    Constructors
    Constructor Description
    RemoteSpace​(java.lang.String uri)  
    RemoteSpace​(java.net.URI uri)  
  • Method Summary

    Modifier and Type Method Description
    void close()  
    java.lang.Object[] get​(TemplateField... fields)
    Retrieves (and remove) a tuple matching the requested template.
    java.util.List<java.lang.Object[]> getAll​(TemplateField... fields)
    Retrieves (and remove) all the tuples matching a template.
    ClientGate getGate()  
    java.lang.Object[] getp​(TemplateField... fields)
    Retrieves (and remove) a tuple matching the requested template.
    java.net.URI getUri()  
    boolean put​(java.lang.Object... fields)
    Adds a tuple in the space.
    java.lang.Object[] query​(TemplateField... fields)
    Reads (without removing) a tuple matching the requested template.
    java.util.List<java.lang.Object[]> queryAll​(TemplateField... fields)
    Reads (without removing) all the tuples matching the requested template.
    java.lang.Object[] queryp​(TemplateField... fields)
    Reads (without removing) a tuple matching the requested template.
    int size()
    Returns the number of tuples that are stored in the space.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • RemoteSpace

      public RemoteSpace​(java.net.URI uri) throws java.net.UnknownHostException, java.io.IOException
      Throws:
      java.net.UnknownHostException
      java.io.IOException
    • RemoteSpace

      public RemoteSpace​(java.lang.String uri) throws java.net.UnknownHostException, java.io.IOException
      Throws:
      java.net.UnknownHostException
      java.io.IOException
  • Method Details

    • size

      public int size()
      Description copied from interface: Space
      Returns the number of tuples that are stored in the space.
      Specified by:
      size in interface Space
    • put

      public boolean put​(java.lang.Object... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Adds a tuple in the space.
      Specified by:
      put in interface Space
      Parameters:
      fields - fields of inserted tuple
      Returns:
      true if the action has been successfully executed false otherwise.
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • get

      public java.lang.Object[] get​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Retrieves (and remove) a tuple matching the requested template. A template is rendered as an array of TemplateField. The returned, say result will satisfy the following properties:
      • result.length==fields.length;
      • for any i, fields[i].match(return[i])==true.
      Current thread is suspended until a tuple matching the requested template is found.
      Specified by:
      get in interface Space
      Parameters:
      fields - an array of template fields representing the requested template
      Returns:
      a tuple matching the requested template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • getp

      public java.lang.Object[] getp​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Retrieves (and remove) a tuple matching the requested template. A template is rendered as an array of TemplateField. The returned, say result will satisfy the following properties:
      • result.length==fields.length;
      • for any i, fields[i].match(return[i])==true.
      If a tuple matching the requested tempalte is not found, null is returned.
      Specified by:
      getp in interface Space
      Parameters:
      fields - an array of template fields representing a template
      Returns:
      a tuple matching the template or null if no tuple matches the template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • getAll

      public java.util.List<java.lang.Object[]> getAll​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Retrieves (and remove) all the tuples matching a template. If no matching tuple is found, the empty list is returned.
      Specified by:
      getAll in interface Space
      Parameters:
      fields - an array of template fields representing a template
      Returns:
      a list containing all the tuples matching the template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • query

      public java.lang.Object[] query​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Reads (without removing) a tuple matching the requested template. A template is rendered as an array of TemplateField. The returned, say result will satisfy the following properties:
      • result.length==fields.length;
      • for any i, fields[i].match(return[i])==true.
      Current thread is suspended until a tuple matching the requested template is found.
      Specified by:
      query in interface Space
      Parameters:
      fields - an array of template fields representing the requested template
      Returns:
      a tuple matching the requested template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • queryp

      public java.lang.Object[] queryp​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Reads (without removing) a tuple matching the requested template. A template is rendered as an array of TemplateField. The returned, say result will satisfy the following properties:
      • result.length==fields.length;
      • for any i, fields[i].match(return[i])==true.
      Value null is returned if no matching tuple is found.
      Specified by:
      queryp in interface Space
      Parameters:
      fields - an array of template fields representing the requested template
      Returns:
      a list containing all the tuples matching the template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • queryAll

      public java.util.List<java.lang.Object[]> queryAll​(TemplateField... fields) throws java.lang.InterruptedException
      Description copied from interface: Space
      Reads (without removing) all the tuples matching the requested template. A template is rendered as an array of TemplateField. The returned, say result will satisfy the following properties:
      • result.length==fields.length;
      • for any i, fields[i].match(return[i])==true.
      Specified by:
      queryAll in interface Space
      Parameters:
      fields - an array of template fields representing the requested template
      Returns:
      a list containing all the tuples matching the template
      Throws:
      java.lang.InterruptedException - if any thread interrupted the current thread before the action is executed.
    • getUri

      public java.net.URI getUri()
    • getGate

      public ClientGate getGate()
    • close

      public void close() throws java.io.IOException
      Throws:
      java.io.IOException