Module org.jooq

Class MockConfiguration

    • Method Detail

      • data

        public Object data​(Object key,
                           Object value)
        Description copied from interface: Configuration
        Set some custom data to this Configuration.

        Use custom data if you want to pass data to your custom QueryPart or ExecuteListener objects to be made available at render, bind, execution, fetch time.

        Be sure that your custom data implements Serializable if you want to serialise this Configuration or objects referencing this Configuration, e.g. your Record types.

        See ExecuteListener for more details.

        Specified by:
        data in interface Configuration
        Parameters:
        key - A key to identify the custom data
        value - The custom data
        Returns:
        The previously set custom data or null if no data was previously set for the given key
        See Also:
        ExecuteListener
      • clock

        public Clock clock()
        Description copied from interface: Configuration
        Get this configuration's Clock, which is used for optimistic locking, transaction time, and other time-depending features.
        Specified by:
        clock in interface Configuration
      • systemConnectionProvider

        public ConnectionProvider systemConnectionProvider()
        Description copied from interface: Configuration
        Get this configuration's underlying system connection provider, which provides connections for system tasks.

        System tasks may include the generation of auxiliary data types or stored procedures, which users may want to generate using a different data source or transaction. By default, this connection provider is the same as Configuration.connectionProvider().

        Specified by:
        systemConnectionProvider in interface Configuration
      • recordListenerProviders

        public RecordListenerProvider[] recordListenerProviders()
        Description copied from interface: Configuration
        Get the configured RecordListenerProviders from this configuration.

        This method allows for retrieving the configured RecordListenerProvider from this configuration. The providers will provide jOOQ with RecordListener instances. These instances receive record manipulation notification events every time jOOQ executes queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may

        • share this Configuration's lifecycle (i.e. that of a JDBC Connection, or that of a transaction)
        • share the lifecycle of an RecordContext (i.e. that of a single record manipulation)
        • follow an entirely different lifecycle.
        Specified by:
        recordListenerProviders in interface Configuration
        Returns:
        The configured set of record listeners.
        See Also:
        RecordListenerProvider, RecordListener, RecordContext
      • executeListenerProviders

        public ExecuteListenerProvider[] executeListenerProviders()
        Description copied from interface: Configuration
        Get the configured ExecuteListenerProviders from this configuration.

        This method allows for retrieving the configured ExecuteListenerProvider from this configuration. The providers will provide jOOQ with ExecuteListener instances. These instances receive execution lifecycle notification events every time jOOQ executes queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may

        • share this Configuration's lifecycle (i.e. that of a JDBC Connection, or that of a transaction)
        • share the lifecycle of an ExecuteContext (i.e. that of a single query execution)
        • follow an entirely different lifecycle.

        Note, depending on your Settings.isExecuteLogging(), some additional listeners may be prepended to this list, internally. Those listeners will never be exposed through this method, though.

        Specified by:
        executeListenerProviders in interface Configuration
        Returns:
        The configured set of execute listeners.
        See Also:
        ExecuteListenerProvider, ExecuteListener, ExecuteContext
      • migrationListenerProviders

        public MigrationListenerProvider[] migrationListenerProviders()
        Description copied from interface: Configuration
        Get the configured MigrationListenerProviders from this configuration.

        This method allows for retrieving the configured MigrationListenerProvider from this configuration. The providers will provide jOOQ with MigrationListener instances. These instances receive migration lifecycle notification events every time jOOQ executes migrations. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may

        • share this Configuration's lifecycle (i.e. that of a JDBC Connection, or that of a transaction)
        • share the lifecycle of an MigrationContext (i.e. that of a single query execution)
        • follow an entirely different lifecycle.
        Specified by:
        migrationListenerProviders in interface Configuration
        Returns:
        The configured set of migration listeners.
        See Also:
        MigrationListenerProvider, MigrationListener, MigrationContext
      • visitListenerProviders

        public VisitListenerProvider[] visitListenerProviders()
        Description copied from interface: Configuration
        Get the configured VisitListenerProvider instances from this configuration.

        This method allows for retrieving the configured VisitListenerProvider instances from this configuration. The providers will provide jOOQ with VisitListener instances. These instances receive query rendering lifecycle notification events every time jOOQ renders queries. jOOQ makes no assumptions about the internal state of these listeners, i.e. listener instances may

        • share this Configuration's lifecycle (i.e. that of a JDBC Connection, or that of a transaction)
        • share the lifecycle of an ExecuteContext (i.e. that of a single query execution)
        • follow an entirely different lifecycle.
        Specified by:
        visitListenerProviders in interface Configuration
        Returns:
        The configured set of visit listeners.
        See Also:
        VisitListenerProvider, VisitListener, VisitContext
      • set

        public Configuration set​(Clock newClock)
        Description copied from interface: Configuration
        Change this configuration to hold a new Clock.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newClock - The new clock to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(ConnectionProvider newConnectionProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new connection provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newConnectionProvider - The new connection provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(MetaProvider newMetaProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new meta provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newMetaProvider - The new meta provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(VersionProvider newVersionProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new version provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newVersionProvider - The new version provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(Connection newConnection)
        Description copied from interface: Configuration
        Change this configuration to hold a new connection wrapped in a DefaultConnectionProvider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newConnection - The new connection to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(DataSource newDataSource)
        Description copied from interface: Configuration
        Change this configuration to hold a new data source wrapped in a DataSourceConnectionProvider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newDataSource - The new data source to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(Executor newExecutor)
        Description copied from interface: Configuration
        Change this configuration to hold a new executor.

        This will wrap the argument Executor in a DefaultExecutorProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newExecutor - The new executor to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(ExecutorProvider newExecutorProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new executor provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newExecutorProvider - The new executor provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(TransactionProvider newTransactionProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new transaction provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newTransactionProvider - The new transaction provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordMapper<?,​?> newRecordMapper)
        Description copied from interface: Configuration
        Change this configuration to hold a new record mapper.

        This will wrap the argument RecordMapper in a DefaultRecordMapperProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordMapper - The new record mapper to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordMapperProvider newRecordMapperProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new record mapper provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordMapperProvider - The new record mapper provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordUnmapper<?,​?> newRecordUnmapper)
        Description copied from interface: Configuration
        Change this configuration to hold a new record unmapper.

        This will wrap the argument RecordUnmapper in a DefaultRecordUnmapperProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordUnmapper - The new record unmapper to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordUnmapperProvider newRecordUnmapperProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new record unmapper provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordUnmapperProvider - The new record unmapper provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordListener... newRecordListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new record listeners.

        This will wrap the argument RecordListener in a DefaultRecordListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordListeners - The new record listener to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(RecordListenerProvider... newRecordListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold a new record listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newRecordListenerProviders - The new record listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(ExecuteListener... newExecuteListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new execute listeners.

        This will wrap the argument ExecuteListener in a DefaultExecuteListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newExecuteListeners - The new execute listeners to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(ExecuteListenerProvider... newExecuteListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold a new execute listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newExecuteListenerProviders - The new execute listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(MigrationListener... newMigrationListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new migration listeners.

        This will wrap the argument MigrationListener in a DefaultMigrationListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newMigrationListeners - The new migration listeners to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(MigrationListenerProvider... newMigrationListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold a new migration listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newMigrationListenerProviders - The new migration listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(VisitListener... newVisitListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new visit listeners.

        This will wrap the argument VisitListener in a DefaultVisitListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newVisitListeners - The new visit listeners to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(VisitListenerProvider... newVisitListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold a new visit listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newVisitListenerProviders - The new visit listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(TransactionListener... newTransactionListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new transaction listeners.

        This will wrap the argument TransactionListener in a DefaultTransactionListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newTransactionListeners - The new transaction listeners to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(TransactionListenerProvider... newTransactionListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold a new transaction listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newTransactionListenerProviders - The new transaction listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(DiagnosticsListener... newDiagnosticsListeners)
        Description copied from interface: Configuration
        Change this configuration to hold a new diagnostics listeners.

        This will wrap the argument DiagnosticsListener in a DefaultDiagnosticsListenerProvider for convenience.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newDiagnosticsListeners - The new diagnostics listeners to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
        Description copied from interface: Configuration
        Change this configuration to hold new diagnostics listener providers.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newDiagnosticsListenerProviders - The new diagnostics listener providers to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(Unwrapper newUnwrapper)
        Description copied from interface: Configuration
        Change this configuration to hold a new unwrapper.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newUnwrapper - The new unwrapper to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(UnwrapperProvider newUnwrapperProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new unwrapper provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newUnwrapperProvider - The new unwrapper provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(ConverterProvider newConverterProvider)
        Description copied from interface: Configuration
        Change this configuration to hold a new converter provider.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newConverterProvider - The new converter provider to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(SQLDialect newDialect)
        Description copied from interface: Configuration
        Change this configuration to hold a new dialect.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newDialect - The new dialect to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • set

        public Configuration set​(Settings newSettings)
        Description copied from interface: Configuration
        Change this configuration to hold a new settings.

        This method is not thread-safe and should not be used in globally available Configuration objects.

        Specified by:
        set in interface Configuration
        Parameters:
        newSettings - The new settings to be contained in the changed configuration.
        Returns:
        The changed configuration.
      • derive

        public Configuration derive()
        Description copied from interface: Configuration
        Create a derived configuration from this one, without changing any properties.
        Specified by:
        derive in interface Configuration
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(Clock newClock)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new Clock.
        Specified by:
        derive in interface Configuration
        Parameters:
        newClock - The new clock to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(Connection newConnection)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new connection wrapped in a DefaultConnectionProvider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newConnection - The new connection to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(ConnectionProvider newConnectionProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new connection provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newConnectionProvider - The new connection provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(MetaProvider newMetaProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new meta provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newMetaProvider - The new meta provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(VersionProvider newVersionProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new version provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newVersionProvider - The new version provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(Executor newExecutor)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new executor.

        This will wrap the argument Executor in a DefaultExecutorProvider for convenience.

        Specified by:
        derive in interface Configuration
        Parameters:
        newExecutor - The new executor to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(ExecutorProvider newExecutorProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new executor provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newExecutorProvider - The new executor provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(TransactionProvider newTransactionProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new transaction provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newTransactionProvider - The new transaction provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(RecordMapperProvider newRecordMapperProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new record mapper provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newRecordMapperProvider - The new record mapper provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(RecordUnmapperProvider newRecordUnmapperProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new record unmapper provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newRecordUnmapperProvider - The new record unmapper provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(RecordListenerProvider... newRecordListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new record listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newRecordListenerProviders - The new record listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(ExecuteListenerProvider... newExecuteListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new execute listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newExecuteListenerProviders - The new execute listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(MigrationListenerProvider... newMigrationListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new migration listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newMigrationListenerProviders - The new migration listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(VisitListenerProvider... newVisitListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new visit listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newVisitListenerProviders - The new visit listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(TransactionListenerProvider... newTransactionListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new transaction listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newTransactionListenerProviders - The new transaction listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(DiagnosticsListener... newDiagnosticsListeners)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new diagnostics listeners.
        Specified by:
        derive in interface Configuration
        Parameters:
        newDiagnosticsListeners - The new diagnostics listeners to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(DiagnosticsListenerProvider... newDiagnosticsListenerProviders)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new diagnostics listener providers.
        Specified by:
        derive in interface Configuration
        Parameters:
        newDiagnosticsListenerProviders - The new diagnostics listener providers to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(Unwrapper newUnwrapper)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new unwrapper.
        Specified by:
        derive in interface Configuration
        Parameters:
        newUnwrapper - The new unwrapper to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(UnwrapperProvider newUnwrapperProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new unwrapper provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newUnwrapperProvider - The new unwrapper provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(ConverterProvider newConverterProvider)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new converter provider.
        Specified by:
        derive in interface Configuration
        Parameters:
        newConverterProvider - The new converter provider to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(SQLDialect newDialect)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with a new dialect.
        Specified by:
        derive in interface Configuration
        Parameters:
        newDialect - The new dialect to be contained in the derived configuration.
        Returns:
        The derived configuration.
      • derive

        public Configuration derive​(Settings newSettings)
        Description copied from interface: Configuration
        Create a derived configuration from this one, with new settings.
        Specified by:
        derive in interface Configuration
        Parameters:
        newSettings - The new settings to be contained in the derived configuration.
        Returns:
        The derived configuration.