Interface OracleCommonDataSource

    • Method Detail

      • setDataSourceName

        void setDataSourceName​(String dsname)
                        throws SQLException
        Sets the datasource name.
        Parameters:
        dsname - DataSource Name to be set.
        Throws:
        SQLException
      • getDataSourceName

        String getDataSourceName()
        Gets the datasource name for this instance if set. Returns null if not set.
        Returns:
        DaraSource name
      • getDatabaseName

        String getDatabaseName()
        Gets the name of the database set on this DataSource instance.
        Returns:
        database name set on this instance or null if not set.
      • setDatabaseName

        void setDatabaseName​(String dbname)
                      throws SQLException
        Sets the name of a particular database on a server. In Oracle's jargon this is called SID (System Identifier).

        If URL is set, this property will be ignored.

        Parameters:
        dsname - database name to be set.
        Throws:
        SQLException
      • setServerName

        void setServerName​(String sn)
                    throws SQLException
        Sets the name of the Server on which database is running. If URL is set, this property will be ignored.

        Parameters:
        sn - server/host name to be set.
        Throws:
        SQLException
      • getServerName

        String getServerName()
        Gets the name of the server on which database is running.
        Returns:
        server name set on this instance or null if not set.
      • setURL

        void setURL​(String url)
             throws SQLException
        Sets the URL from which connections have to be obtained. If URL is set all other properties like databasename, servername, portNumber, network protocol, tnsentry, and driver Type will be ignored.

        Parameters:
        url - URL to be set.
        Throws:
        SQLException
      • getURL

        String getURL()
               throws SQLException
        Gets the URL for this datasource. Will return the default value "jdbc:oracle:oci8:@" if not set before.

        Throws:
        SQLException
      • setUser

        void setUser​(String userName)
              throws SQLException
        Set the user name with which connections have to be obtained.

        Parameters:
        user - Username to be set.
        Throws:
        SQLException
      • getUser

        String getUser()
        Gets the user name for this datasource. Will return the default value ("scott") if not set before.
      • setPassword

        void setPassword​(String pd)
                  throws SQLException
        Sets the password with which connections have to be obtained. The default value is "tiger".

        Parameters:
        pd - Passowrd to be set.
        Throws:
        SQLException
      • getDescription

        String getDescription()
        Get the Desciption of this data source.
        Returns:
        Description that was set or will return null if not set.
      • setDescription

        void setDescription​(String des)
                     throws SQLException
        Sets the Description for this data source instance.
        Parameters:
        des - Desciption to be set.
        Throws:
        SQLException
      • getNetworkProtocol

        String getNetworkProtocol()
        Gets the network protocol set on the datasource.
        Returns:
        network protocol that was set or null if not.
      • setNetworkProtocol

        void setNetworkProtocol​(String np)
                         throws SQLException
        Sets the network protocol for the connections. Default is "tcp". Can be set to all possible protocols Net8 supports. Only needed for JDBC OCI driver.

        Parameters:
        np - set the network protocol to be used.
        Throws:
        SQLException
      • setPortNumber

        void setPortNumber​(int pn)
                    throws SQLException
        Sets the port number where a server is listening for requests. Not required when URL is set.
        Parameters:
        pn - port number on which server is listening
        Throws:
        SQLException
      • getPortNumber

        int getPortNumber()
        Gets the port number on which server is listening for requests.
        Returns:
        port number if set or null if not set.
      • setConnectionProperties

        void setConnectionProperties​(Properties value)
                              throws SQLException
        Sets the Connection Properties for the datasource

        The argument to this method is a Properties object. This properties object is used to create the connections returned by the receiver. The keys and values are Strings. The keys, values, and their meanings are defined in oracle.jdbc.OracleConnection.

        Parameters:
        value - a Properties object with the desired connection property names and values.
        Throws:
        SQLException
        See Also:
        OracleConnection
      • getConnectionProperties

        Properties getConnectionProperties()
                                    throws SQLException
        Gets the connection properties that are set on this data source object. These exclude any sensitive property with "password" in its name (case-insensitive); for example, "password", "oracle.net.websocketPassword", etc.
        Returns:
        A java.util.Properties object containing all the connection properties set on this data source object, excluding all sensitive properties described above. Null if there are no such connection properties set.
        Throws:
        SQLException - If any exception occurs while getting the connection properties.
      • getConnectionProperty

        String getConnectionProperty​(String propertyName)
                              throws SQLException
        Gets the specified connection property that is set on this data source. Any sensitive property with "password" in its name (case-insensitive, for example, "password", "oracle.net.websocketPassword", etc.) is treated as if that property were not set.
        Parameters:
        propertyName - The name of the specified connection property.
        Returns:
        The String value of the specified connection property. Null if there is no such connection property set, or the specified connection property has "password" in its name.
        Throws:
        SQLException - If any exception occurs while getting the connection property.
      • setMaxStatements

        void setMaxStatements​(int max)
                       throws SQLException
        Specifies the value of the maxStatements property. This is the size of the statement cache used by both implicit and explicit caching. This value does not apply to the statement cache size of connections created by ImplicitStatementCache for which the cache size is set through a java.util.Properties object.
        Parameters:
        max - Requested size of the cache. If the existing cache size is less than max, statements will be purged to reduce the size.
        Throws:
        SQLException - if max < 0
      • getMaxStatements

        int getMaxStatements()
                      throws SQLException
        Returns the current value of the maxStatements property.
        Throws:
        SQLException
      • setImplicitCachingEnabled

        void setImplicitCachingEnabled​(boolean cache)
                                throws SQLException
        Sets the value of the implicitCachingEnabled property, which enables or disables the implicit statement cache. Note that this is independent of the cache size that is set with setMaxStatements().
        Parameters:
        cache - If true, then implicit caching is enabled. If false, then any existing statement is purged and the implicit caching is disabled.
        Throws:
        SQLException
      • getImplicitCachingEnabled

        boolean getImplicitCachingEnabled()
                                   throws SQLException
        getImplicitCachingEnabled Returns the current value of the implicitCachingEnabled property.
        Throws:
        SQLException
      • setExplicitCachingEnabled

        void setExplicitCachingEnabled​(boolean cache)
                                throws SQLException
        Sets the value of the explicitCachingEnabled property, which enables or disables the explicit cache. Note that this is independent of the cache size, which is set with setMaxStatements().
        Parameters:
        cache - If true, then explicit caching is enabled. If false, then any existing statement is purged and the explicit caching is disabled.
        Throws:
        SQLException - if called on a logical connection.
      • getExplicitCachingEnabled

        boolean getExplicitCachingEnabled()
                                   throws SQLException
        Returns the current value of the explicitCachingEnabled property.
        Throws:
        SQLException
      • setRoleName

        void setRoleName​(String roleName)
                  throws SQLException
        Sets the data source role name.
        Parameters:
        roleName - data source role name to be set.
        Throws:
        SQLException
      • getRoleName

        String getRoleName()
        Gets the data source role name.
        Returns:
        data source role name.
      • setSSLContext

        void setSSLContext​(SSLContext sslContext)
                    throws SQLException
        Specifies a SSLContext to use as a factory for SSLEngine objects that carry out the TLS protocol.

        The SSLContext must be initialized before establishing a connection to the data source. The certificates specified by that initialization will be used in place of any connection properties that would otherwise have specified certificates, such as key store and trust store property values.

        Specifying a null value will clear any non-null value that may have been set previously, causing this data source to behave as if this method had never been called at all.

        Parameters:
        sslContext - An SSLContext to use as an SSLEngine factory.
        Throws:
        SQLException - if this data source is incompatible with the specified SSLContext.
        Since:
        20
      • setSingleShardTransactionSupport

        void setSingleShardTransactionSupport​(boolean allow)
                                       throws SQLException
        Sets single shard transaction support in auto commit OFF mode. Default value is false. Only used for the sharding driver.
        Parameters:
        allow -
        Throws:
        SQLException
        Since:
        21
      • setTokenSupplier

        void setTokenSupplier​(java.util.function.Supplier<? extends AccessToken> tokenSupplier)

        Sets a supplier function that generates an access token when creating a connection with this DataSource. The supplier function is invoked each time this DataSource creates a connection. Instances of AccessToken that are output by the supplier must represent a token type that is supported by Oracle Database for client authentication. The supplier must be thread safe.

        It is invalid to configure this DataSource with both a token supplier and with a user name or password. If invocations of setUser(String), setPassword(String), setConnectionProperties(java.util.Properties), or setConnectionProperty(String, String) have configured this DataSource with a user name or password, and an invocation of this method has also configured a token supplier, then a SQLException indicating an invalid configuration is thrown when creating a connection with this datasource.

        Note that AccessToken.createJsonWebTokenCache(Supplier) can be called to create a thread safe Supplier that caches tokens from a user defined Supplier.

        Parameters:
        tokenSupplier - Token supplying function. Not null.
        Throws:
        NullPointerException - If the tokenSupplier is null.
      • setHostnameResolver

        void setHostnameResolver​(OracleHostnameResolver hostnameResolver)
        Sets a custom hostname resolver implementing OracleHostnameResolver used to provide a custom DNS name resolution strategy to locate the database host.
        Parameters:
        hostnameResolver - an OracleHostnameResolver to use when resolving the datasource hostname
        Since:
        23