Class ProtocolConfiguration


  • public class ProtocolConfiguration
    extends java.lang.Object
    Parses and encapsulates the specification for 1 protocol of the protocol stack, e.g. UNICAST(timeout=5000)
    Author:
    Bela Ban
    • Constructor Detail

      • ProtocolConfiguration

        public ProtocolConfiguration​(java.lang.String config_str)
                              throws java.lang.Exception
        Creates a new ProtocolConfiguration.
        Parameters:
        config_str - The configuration specification for the protocol, e.g.
        VERIFY_SUSPECT(timeout=1500)
        Throws:
        java.lang.Exception
      • ProtocolConfiguration

        public ProtocolConfiguration​(java.lang.String protocol_name,
                                     java.util.Map<java.lang.String,​java.lang.String> properties)
      • ProtocolConfiguration

        public ProtocolConfiguration​(java.lang.String protocol_name,
                                     java.util.Map<java.lang.String,​java.lang.String> properties,
                                     java.lang.ClassLoader loader)
    • Method Detail

      • addSubtree

        public void addSubtree​(XmlNode node)
      • getSubtrees

        public java.util.List<XmlNode> getSubtrees()
      • getProtocolName

        public java.lang.String getProtocolName()
      • getClassLoader

        public java.lang.ClassLoader getClassLoader()
      • getProperties

        public java.util.Map<java.lang.String,​java.lang.String> getProperties()
      • loadProtocolClass

        public java.lang.Class<? extends Protocol> loadProtocolClass​(java.lang.Class<?> loadingClass)
                                                              throws java.lang.Exception
        Load the class of the Protocol configured by this instance.
        Parameters:
        loadingClass - The Class to fetch the preferred ClassLoader. It can be null.
        Returns:
        The Class of the Protocol.
        Throws:
        java.lang.Exception - If unable to find or load the class.
      • isAssignableProtocol

        public boolean isAssignableProtocol​(java.lang.Class<? extends Protocol> other,
                                            java.lang.Class<?> loadingClass)
                                     throws java.lang.Exception
        Determines if the class other is the same or superclass (or superinterface) as the Protocol configured by this instance.
        Parameters:
        other - The Class to check.
        loadingClass - The Class to fetch the preferred ClassLoader. It can be null.
        Returns:
        true if other is the same or superclass/interface as the Protocol configured by this instance.
        Throws:
        java.lang.Exception - If unable to find or load the class.
      • substituteVariables

        public void substituteVariables()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • propertiesToString

        public java.lang.String propertiesToString()
      • getProtocolString

        public java.lang.String getProtocolString​(boolean new_format)
      • getProtocolString

        public java.lang.String getProtocolString()
      • getProtocolStringNewXml

        public java.lang.String getProtocolStringNewXml()
      • getParameterString

        protected static java.lang.String getParameterString​(java.lang.String name,
                                                             java.lang.String value)
      • getParameterStringXml

        protected static java.lang.String getParameterStringXml​(java.lang.String name,
                                                                java.lang.String val)
      • parsePropertiesString

        protected void parsePropertiesString​(java.util.Map<java.lang.String,​java.lang.String> properties)
                                      throws java.lang.Exception
        Throws:
        java.lang.Exception