Class SiteInfo


  • public class SiteInfo
    extends java.lang.Object
    • Field Detail

      • dataFormatVersion

        public int dataFormatVersion
      • serialNumber

        public int serialNumber
      • majorProtocolVersion

        public byte majorProtocolVersion
      • minorProtocolVersion

        public byte minorProtocolVersion
      • isPrimary

        public boolean isPrimary
      • multiPrimary

        public boolean multiPrimary
      • isRoot

        public boolean isRoot
      • responseTime

        public long responseTime
      • hashOption

        public byte hashOption
      • hashFilter

        public byte[] hashFilter
    • Constructor Detail

      • SiteInfo

        public SiteInfo()
        Default constructor: object uninitialized except as above.
      • SiteInfo

        public SiteInfo​(int siteVersion,
                        boolean isPrimary,
                        boolean isMultiPrimary,
                        byte hashingOption,
                        java.lang.String siteDescription,
                        java.net.InetAddress listenAddr,
                        int port,
                        int httpPort,
                        java.io.File pubKeyFile,
                        boolean disableUDP)
                 throws java.io.IOException
        Constructor used by configuration routines.
        Throws:
        java.io.IOException
      • SiteInfo

        public SiteInfo​(int siteVersion,
                        boolean isPrimary,
                        boolean isMultiPrimary,
                        byte hashingOption,
                        java.lang.String siteDescription,
                        java.net.InetAddress listenAddr,
                        java.net.InetAddress altAddr,
                        int port,
                        int httpPort,
                        java.io.File pubKeyFile,
                        boolean disableUDP)
                 throws java.io.IOException
        Throws:
        java.io.IOException
      • SiteInfo

        public SiteInfo​(SiteInfo site)
    • Method Detail

      • getAttribute

        public byte[] getAttribute​(byte[] attribute)
        Get the value of the specified attribute for this site (if any).
      • getHandleHash

        public static final int getHandleHash​(byte[] handle,
                                              int hashOption)
                                       throws HandleException
        Return the positive integer generated by hashing the part of this handle indicated by hashOption.
        Throws:
        HandleException
      • determineServerNum

        public final int determineServerNum​(byte[] handle)
                                     throws HandleException
        Shortcut to determineServerNum(handle, hashOption, numServers) using this.hashOption
        Throws:
        HandleException
      • determineServerNum

        public static final int determineServerNum​(byte[] handle,
                                                   int hashOption,
                                                   int numServers)
                                            throws HandleException
        Return the index of the server that this handle hashes to
        Throws:
        HandleException
      • toString

        public java.lang.String toString()
        Return a string of labeled members of this object.
        Overrides:
        toString in class java.lang.Object
      • getId2ServerMap

        public java.util.HashMap<java.lang.Integer,​ServerInfo> getId2ServerMap()
      • main

        public static final void main​(java.lang.String[] argv)
                               throws java.lang.Exception
        Hash the given arguments as handles and display the results.
        Throws:
        java.lang.Exception
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • getAttributeForServer

        public java.lang.String getAttributeForServer​(java.lang.String attribute,
                                                      int which)
      • getDomainForServer

        public java.lang.String getDomainForServer​(int which)
      • hasZeroAddressServersAndDomain

        public boolean hasZeroAddressServersAndDomain()