Package jcifs

Class Config


  • public class Config
    extends java.lang.Object
    This class uses a static Properties to act as a cental repository for all jCIFS configuration properties. It cannot be instantiated. Similar to System properties the namespace is global therefore property names should be unique. Before use, the load method should be called with the name of a Properties file (or null indicating no file) to initialize the Config. The System properties will then populate the Config as well potentially overwriting properties from the file. Thus properties provided on the commandline with the -Dproperty.name=value VM parameter will override properties from the configuration file.

    There are several ways to set jCIFS properties. See the overview page of the API documentation for details.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.Object get​(java.lang.String key)
      Retrieve a property as an Object.
      static boolean getBoolean​(java.lang.String key, boolean def)
      Retrieve a boolean value.
      static java.net.InetAddress getInetAddress​(java.lang.String key, java.net.InetAddress def)
      Retrieve an InetAddress.
      static java.net.InetAddress[] getInetAddressArray​(java.lang.String key, java.lang.String delim, java.net.InetAddress[] def)
      Retrieve an array of InetAddress created from a property value containting a delim separated list of hostnames and/or ipaddresses.
      static int getInt​(java.lang.String key)
      Retrieve an int.
      static int getInt​(java.lang.String key, int def)
      Retrieve an int.
      static java.net.InetAddress getLocalHost()  
      static long getLong​(java.lang.String key, long def)
      Retrieve a long.
      static java.lang.String getProperty​(java.lang.String key)
      Retrieve a String.
      static java.lang.String getProperty​(java.lang.String key, java.lang.String def)
      Retrieve a String.
      static void list​(java.io.PrintStream out)
      List the properties in the Code.
      static void load​(java.io.InputStream in)
      Load the Config with properties from the stream in from a Properties file.
      static void registerSmbURLHandler()
      This static method registers the SMB URL protocol handler which is required to use SMB URLs with the java.net.URL class.
      static void setProperties​(java.util.Properties prp)
      Set the default properties of the static Properties used by Config.
      static java.lang.Object setProperty​(java.lang.String key, java.lang.String value)
      Add a property.
      static void store​(java.io.OutputStream out, java.lang.String header)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • socketCount

        public static int socketCount
      • DEFAULT_OEM_ENCODING

        public static java.lang.String DEFAULT_OEM_ENCODING
    • Method Detail

      • registerSmbURLHandler

        public static void registerSmbURLHandler()
        This static method registers the SMB URL protocol handler which is required to use SMB URLs with the java.net.URL class. If this method is not called before attempting to create an SMB URL with the URL class the following exception will occur:
         Exception MalformedURLException: unknown protocol: smb
             at java.net.URL.(URL.java:480)
             at java.net.URL.(URL.java:376)
             at java.net.URL.(URL.java:330)
             at jcifs.smb.SmbFile.(SmbFile.java:355)
             ...
         
      • setProperties

        public static void setProperties​(java.util.Properties prp)
        Set the default properties of the static Properties used by Config. This permits a different Properties object/file to be used as the source of properties for use by the jCIFS library. The Properties must be set before jCIFS classes are accessed as most jCIFS classes load properties statically once. Using this method will also override properties loaded using the -Djcifs.properties= commandline parameter.
      • load

        public static void load​(java.io.InputStream in)
                         throws java.io.IOException
        Load the Config with properties from the stream in from a Properties file.
        Throws:
        java.io.IOException
      • store

        public static void store​(java.io.OutputStream out,
                                 java.lang.String header)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • list

        public static void list​(java.io.PrintStream out)
                         throws java.io.IOException
        List the properties in the Code.
        Throws:
        java.io.IOException
      • setProperty

        public static java.lang.Object setProperty​(java.lang.String key,
                                                   java.lang.String value)
        Add a property.
      • get

        public static java.lang.Object get​(java.lang.String key)
        Retrieve a property as an Object.
      • getProperty

        public static java.lang.String getProperty​(java.lang.String key,
                                                   java.lang.String def)
        Retrieve a String. If the key cannot be found, the provided def default parameter will be returned.
      • getProperty

        public static java.lang.String getProperty​(java.lang.String key)
        Retrieve a String. If the property is not found, null is returned.
      • getInt

        public static int getInt​(java.lang.String key,
                                 int def)
        Retrieve an int. If the key does not exist or cannot be converted to an int, the provided default argument will be returned.
      • getInt

        public static int getInt​(java.lang.String key)
        Retrieve an int. If the property is not found, -1 is returned.
      • getLong

        public static long getLong​(java.lang.String key,
                                   long def)
        Retrieve a long. If the key does not exist or cannot be converted to a long, the provided default argument will be returned.
      • getInetAddress

        public static java.net.InetAddress getInetAddress​(java.lang.String key,
                                                          java.net.InetAddress def)
        Retrieve an InetAddress. If the address is not an IP address and cannot be resolved null will be returned.
      • getLocalHost

        public static java.net.InetAddress getLocalHost()
      • getBoolean

        public static boolean getBoolean​(java.lang.String key,
                                         boolean def)
        Retrieve a boolean value. If the property is not found, the value of def is returned.
      • getInetAddressArray

        public static java.net.InetAddress[] getInetAddressArray​(java.lang.String key,
                                                                 java.lang.String delim,
                                                                 java.net.InetAddress[] def)
        Retrieve an array of InetAddress created from a property value containting a delim separated list of hostnames and/or ipaddresses.