Class Genders

java.lang.Object
gov.llnl.lc.chaos.Genders

public class Genders
extends java.lang.Object
Java JNI extensions wrapper around libgenders C library. Most library functions behave similarly to C api functions with minor exceptions documented below.
  • Constructor Summary

    Constructors
    Constructor Description
    Genders()
    Creates a Genders object, loading the default genders database
    Genders​(java.lang.String filename)
    Creates a Genders object, loading the specified genders database
  • Method Summary

    Modifier and Type Method Description
    void cleanup()
    Cleans up allocated memory.
    java.lang.String[] getattr()
    Returns all the attributes of the node you are running on
    java.lang.String[] getattr​(java.lang.String node)
    Returns all the attributes of the specified node
    java.lang.String[] getattr_all()
    Returns all of the attributes in the genders database
    java.lang.String getattrval​(java.lang.String attr)
    Returns the value of the specified attribute on the current node you are running on
    java.lang.String getattrval​(java.lang.String node, java.lang.String attr)
    Returns the value of the specified attribute on the specified node.
    int getmaxattrs()
    Returns maximum number of attributes of any one node parsed in the genders database
    java.lang.String getnodename()
    Returns the current node you are on, in shortened hostname format.
    java.lang.String[] getnodes()
    Returns all the nodes in the genders database
    java.lang.String[] getnodes​(java.lang.String attr)
    Returns all the nodes with the specified attribute
    java.lang.String[] getnodes​(java.lang.String attr, java.lang.String val)
    Returns all the nodes with the specified attribute and value
    int getnumattrs()
    Returns number of attributes parsed in the genders database
    int getnumnodes()
    Returns number of nodes parsed in the genders database
    boolean isattr​(java.lang.String attr)
    Tests if the specified attribute exists in the genders database
    boolean isattrval​(java.lang.String attr, java.lang.String val)
    Tests if the specified value exists in the genders database
    boolean isnode​(java.lang.String node)
    Tests if the specified node exists in the genders database
    java.lang.String[] query​(java.lang.String query)
    Returns nodes specified via the specified query.
    boolean testattr​(java.lang.String attr)
    Tests if the current node has the specified attribute
    boolean testattr​(java.lang.String node, java.lang.String attr)
    Tests if the specified node has the specified attribute
    boolean testattrval​(java.lang.String attr, java.lang.String val)
    Tests if the current node has the specified attribute and value.
    boolean testattrval​(java.lang.String node, java.lang.String attr, java.lang.String val)
    Tests if the specified node has the specified attribute and value.
    boolean testquery​(java.lang.String query)
    Test if the current node meets the conditions of the specified query.
    boolean testquery​(java.lang.String node, java.lang.String query)
    Test if the specified node meets the conditions of the specified query.

    Methods inherited from class java.lang.Object

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

  • Method Details

    • getnumnodes

      public int getnumnodes() throws GendersException
      Returns number of nodes parsed in the genders database
      Throws:
      GendersException - on error
    • getnumattrs

      public int getnumattrs() throws GendersException
      Returns number of attributes parsed in the genders database
      Throws:
      GendersException - on error
    • getmaxattrs

      public int getmaxattrs() throws GendersException
      Returns maximum number of attributes of any one node parsed in the genders database
      Throws:
      GendersException - on error
    • getnodename

      public java.lang.String getnodename() throws GendersException
      Returns the current node you are on, in shortened hostname format.
      Throws:
      GendersException - on error
    • getnodes

      public java.lang.String[] getnodes() throws GendersException
      Returns all the nodes in the genders database
      Throws:
      GendersException - on error
    • getnodes

      public java.lang.String[] getnodes​(java.lang.String attr) throws GendersException
      Returns all the nodes with the specified attribute
      Throws:
      GendersException - on error
    • getnodes

      public java.lang.String[] getnodes​(java.lang.String attr, java.lang.String val) throws GendersException
      Returns all the nodes with the specified attribute and value
      Throws:
      GendersException - on error
    • getattr

      public java.lang.String[] getattr() throws GendersException
      Returns all the attributes of the node you are running on
      Throws:
      GendersException - on error
    • getattr

      public java.lang.String[] getattr​(java.lang.String node) throws GendersException
      Returns all the attributes of the specified node
      Throws:
      GendersException - on error
    • getattr_all

      public java.lang.String[] getattr_all() throws GendersException
      Returns all of the attributes in the genders database
      Throws:
      GendersException - on error
    • getattrval

      public java.lang.String getattrval​(java.lang.String attr) throws GendersException
      Returns the value of the specified attribute on the current node you are running on
      Throws:
      GendersException - on error
    • getattrval

      public java.lang.String getattrval​(java.lang.String node, java.lang.String attr) throws GendersException
      Returns the value of the specified attribute on the specified node. May be an empty string if the attribute contains no value.
      Throws:
      GendersException - on error
    • testattr

      public boolean testattr​(java.lang.String attr) throws GendersException
      Tests if the current node has the specified attribute
      Throws:
      GendersException - on error
    • testattr

      public boolean testattr​(java.lang.String node, java.lang.String attr) throws GendersException
      Tests if the specified node has the specified attribute
      Throws:
      GendersException - on error
    • testattrval

      public boolean testattrval​(java.lang.String attr, java.lang.String val) throws GendersException
      Tests if the current node has the specified attribute and value.
      Throws:
      GendersException - on error
    • testattrval

      public boolean testattrval​(java.lang.String node, java.lang.String attr, java.lang.String val) throws GendersException
      Tests if the specified node has the specified attribute and value.
      Throws:
      GendersException - on error
    • isnode

      public boolean isnode​(java.lang.String node) throws GendersException
      Tests if the specified node exists in the genders database
      Throws:
      GendersException - on error
    • isattr

      public boolean isattr​(java.lang.String attr) throws GendersException
      Tests if the specified attribute exists in the genders database
      Throws:
      GendersException - on error
    • isattrval

      public boolean isattrval​(java.lang.String attr, java.lang.String val) throws GendersException
      Tests if the specified value exists in the genders database
      Throws:
      GendersException - on error
    • query

      public java.lang.String[] query​(java.lang.String query) throws GendersException
      Returns nodes specified via the specified query. Signify union with '||', intersection with '&&', * difference with '--', and complement with '~'. Operations are performed left to right. Parentheses can be used to change the order of operations.
      Throws:
      GendersException - on error
    • testquery

      public boolean testquery​(java.lang.String query) throws GendersException
      Test if the current node meets the conditions of the specified query.
      Throws:
      GendersException - on error
    • testquery

      public boolean testquery​(java.lang.String node, java.lang.String query) throws GendersException
      Test if the specified node meets the conditions of the specified query.
      Throws:
      GendersException - on error
    • cleanup

      public void cleanup()
      Cleans up allocated memory. Must be called to free memory from underlying calls. After this method is called, all genders methods above cannot be called and will result in errors.