Class 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

      All Methods Instance Methods Concrete Methods 
      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
    • Method Detail

      • 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​(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.