Package gov.llnl.lc.chaos
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
-
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 onjava.lang.String[]
getattr(java.lang.String node)
Returns all the attributes of the specified nodejava.lang.String[]
getattr_all()
Returns all of the attributes in the genders databasejava.lang.String
getattrval(java.lang.String attr)
Returns the value of the specified attribute on the current node you are running onjava.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 databasejava.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 databasejava.lang.String[]
getnodes(java.lang.String attr)
Returns all the nodes with the specified attributejava.lang.String[]
getnodes(java.lang.String attr, java.lang.String val)
Returns all the nodes with the specified attribute and valueint
getnumattrs()
Returns number of attributes parsed in the genders databaseint
getnumnodes()
Returns number of nodes parsed in the genders databaseboolean
isattr(java.lang.String attr)
Tests if the specified attribute exists in the genders databaseboolean
isattrval(java.lang.String attr, java.lang.String val)
Tests if the specified value exists in the genders databaseboolean
isnode(java.lang.String node)
Tests if the specified node exists in the genders databasejava.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 attributeboolean
testattr(java.lang.String node, java.lang.String attr)
Tests if the specified node has the specified attributeboolean
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
-
Genders
Creates a Genders object, loading the default genders database- Throws:
GendersException
-
Genders
Creates a Genders object, loading the specified genders database- Throws:
GendersException
-
-
Method Details
-
getnumnodes
Returns number of nodes parsed in the genders database- Throws:
GendersException
- on error
-
getnumattrs
Returns number of attributes parsed in the genders database- Throws:
GendersException
- on error
-
getmaxattrs
Returns maximum number of attributes of any one node parsed in the genders database- Throws:
GendersException
- on error
-
getnodename
Returns the current node you are on, in shortened hostname format.- Throws:
GendersException
- on error
-
getnodes
Returns all the nodes in the genders database- Throws:
GendersException
- on error
-
getnodes
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 GendersExceptionReturns all the nodes with the specified attribute and value- Throws:
GendersException
- on error
-
getattr
Returns all the attributes of the node you are running on- Throws:
GendersException
- on error
-
getattr
Returns all the attributes of the specified node- Throws:
GendersException
- on error
-
getattr_all
Returns all of the attributes in the genders database- Throws:
GendersException
- on error
-
getattrval
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 GendersExceptionReturns 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
Tests if the current node has the specified attribute- Throws:
GendersException
- on error
-
testattr
Tests if the specified node has the specified attribute- Throws:
GendersException
- on error
-
testattrval
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 GendersExceptionTests if the specified node has the specified attribute and value.- Throws:
GendersException
- on error
-
isnode
Tests if the specified node exists in the genders database- Throws:
GendersException
- on error
-
isattr
Tests if the specified attribute exists in the genders database- Throws:
GendersException
- on error
-
isattrval
Tests if the specified value exists in the genders database- Throws:
GendersException
- on error
-
query
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
Test if the current node meets the conditions of the specified query.- Throws:
GendersException
- on error
-
testquery
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.
-