Interface PluggableBackendCfg

    • Method Detail

      • addPluggableChangeListener

        void addPluggableChangeListener​(ConfigurationChangeListener<PluggableBackendCfg> listener)
        Register to be notified when this Pluggable Backend is changed.
        Parameters:
        listener - The Pluggable Backend configuration change listener.
      • removePluggableChangeListener

        void removePluggableChangeListener​(ConfigurationChangeListener<PluggableBackendCfg> listener)
        Deregister an existing Pluggable Backend configuration change listener.
        Parameters:
        listener - The Pluggable Backend configuration change listener.
      • getBaseDn

        SortedSet<Dn> getBaseDn()
        Gets the "base-dn" property.

        Specifies the base DN(s) for the data that the backend handles.

        A single backend may be responsible for one or more base DNs. Note that no two backends may have the same base DN although one backend may have a base DN that is below a base DN provided by another backend (similar to the use of sub-suffixes in the Sun Java System Directory Server). If any of the base DNs is subordinate to a base DN for another backend, then all base DNs for that backend must be subordinate to that same base DN.

        Returns:
        Returns an unmodifiable set containing the values of the "base-dn" property.
      • getCipherKeyLength

        int getCipherKeyLength()
        Gets the "cipher-key-length" property.

        Specifies the key length in bits for the preferred cipher.

        Default value: 128

        Returns:
        Returns the value of the "cipher-key-length" property.
      • getCipherTransformation

        String getCipherTransformation()
        Gets the "cipher-transformation" property.

        Specifies the cipher for the directory server. The syntax is "algorithm/mode/padding".

        The full transformation is required: specifying only an algorithm and allowing the cipher provider to supply the default mode and padding is not supported, because there is no guarantee these default values are the same among different implementations. Some cipher algorithms, including RC4 and ARCFOUR, do not have a mode or padding, and hence must be specified using NONE for the mode field and NoPadding for the padding field. For example, RC4/NONE/NoPadding.

        Default value: AES/GCM/NoPadding

        Returns:
        Returns the value of the "cipher-transformation" property.
      • isCompactEncoding

        boolean isCompactEncoding()
        Gets the "compact-encoding" property.

        Indicates whether the backend should use a compact form when encoding entries by compressing the attribute descriptions and object class sets.

        Note that this property applies only to the entries themselves and does not impact the index data. It will also replace the attribute descriptions used in add and modify operations with normalized ones from the schema.

        Default value: true

        Returns:
        Returns the value of the "compact-encoding" property.
      • isConfidentialityEnabled

        boolean isConfidentialityEnabled()
        Gets the "confidentiality-enabled" property.

        Indicates whether the backend should make entries in database files readable only by Directory Server.

        Confidentiality is achieved by enrypting entries before writing them to the underlying storage. Entry encryption will protect data on disk from unauthorised parties reading the files; for complete protection, also set confidentiality for sensitive attributes indexes. The property cannot be set to false if some of the indexes have confidentiality set to true.

        Default value: false

        Returns:
        Returns the value of the "confidentiality-enabled" property.
      • isEntriesCompressed

        boolean isEntriesCompressed()
        Gets the "entries-compressed" property.

        Indicates whether the backend should attempt to compress entries before storing them in the database.

        Note that this property applies only to the entries themselves and does not impact the index data. Further, the effectiveness of the compression is based on the type of data contained in the entry.

        Default value: false

        Returns:
        Returns the value of the "entries-compressed" property.
      • getImportOffheapMemorySize

        Long getImportOffheapMemorySize()
        Gets the "import-offheap-memory-size" property.

        Specifies the amount of off-heap memory dedicated to the online operation (import-ldif, rebuild-index).

        Returns:
        Returns the value of the "import-offheap-memory-size" property.
      • getIndexEntryLimit

        int getIndexEntryLimit()
        Gets the "index-entry-limit" property.

        Specifies the maximum number of entries that is allowed to match a given index key before that particular index key is no longer maintained.

        This property is analogous to the ALL IDs threshold in the Sun Java System Directory Server. Note that this is the default limit for the backend, and it may be overridden on a per-attribute basis. A value of 0 means there is no limit. Changing the index entry limit significantly can result in serious performance degradation. Please read the documentation before changing this setting.

        Default value: 4000

        Returns:
        Returns the value of the "index-entry-limit" property.
      • isIndexFilterAnalyzerEnabled

        boolean isIndexFilterAnalyzerEnabled()
        Gets the "index-filter-analyzer-enabled" property.

        Indicates whether to gather statistical information about the search filters processed by the directory server while evaluating the usage of indexes.

        Analyzing indexes requires gathering search filter usage patterns from user requests, especially for values as specified in the filters and subsequently looking the status of those values into the index files. When a search requests is processed, internal or user generated, a first phase uses indexes to find potential entries to be returned. Depending on the search filter, if the index of one of the specified attributes matches too many entries (exceeds the index entry limit), the search becomes non-indexed. In any case, all entries thus gathered (or the entire DIT) are matched against the filter for actually returning the search result.

        Default value: false

        Returns:
        Returns the value of the "index-filter-analyzer-enabled" property.
      • getIndexFilterAnalyzerMaxFilters

        int getIndexFilterAnalyzerMaxFilters()
        Gets the "index-filter-analyzer-max-filters" property.

        The maximum number of search filter statistics to keep.

        When the maximum number of search filter is reached, the least used one will be deleted.

        Default value: 25

        Returns:
        Returns the value of the "index-filter-analyzer-max-filters" property.
      • getPreloadTimeLimit

        long getPreloadTimeLimit()
        Gets the "preload-time-limit" property.

        Specifies the length of time that the backend is allowed to spend "pre-loading" data when it is initialized.

        The pre-load process is used to pre-populate the database cache, so that it can be more quickly available when the server is processing requests. A duration of zero means there is no pre-load.

        Default value: 0s

        Returns:
        Returns the value of the "preload-time-limit" property.
      • getWritabilityMode

        LocalBackendCfgDefn.WritabilityMode getWritabilityMode()
        Gets the "writability-mode" property.

        Specifies the behavior that the backend should use when processing write operations.

        Default value: enabled

        Specified by:
        getWritabilityMode in interface LocalBackendCfg
        Returns:
        Returns the value of the "writability-mode" property.
      • listBackendIndexes

        String[] listBackendIndexes()
        Lists the Backend Indexes.
        Returns:
        Returns an array containing the names of the Backend Indexes.
      • getBackendIndex

        BackendIndexCfg getBackendIndex​(String name)
                                 throws ConfigException
        Gets the named Backend Index.
        Parameters:
        name - The name of the Backend Index to retrieve.
        Returns:
        Returns the named Backend Index.
        Throws:
        ConfigException - If the Backend Index could not be found or it could not be successfully decoded.
      • removeBackendIndexAddListener

        void removeBackendIndexAddListener​(ConfigurationAddListener<BackendIndexCfg> listener)
        Deregisters an existing Backend Index configuration add listener.
        Parameters:
        listener - The Backend Index configuration add listener.
      • addBackendIndexDeleteListener

        void addBackendIndexDeleteListener​(ConfigurationDeleteListener<BackendIndexCfg> listener)
                                    throws ConfigException
        Registers to be notified when existing Backend Indexes are deleted.
        Parameters:
        listener - The Backend Index configuration delete listener.
        Throws:
        ConfigException - If the delete listener could not be registered.
      • removeBackendIndexDeleteListener

        void removeBackendIndexDeleteListener​(ConfigurationDeleteListener<BackendIndexCfg> listener)
        Deregisters an existing Backend Index configuration delete listener.
        Parameters:
        listener - The Backend Index configuration delete listener.
      • listBackendVlvIndexes

        String[] listBackendVlvIndexes()
        Lists the Backend Vlv Indexes.
        Returns:
        Returns an array containing the names of the Backend Vlv Indexes.
      • getBackendVlvIndex

        BackendVlvIndexCfg getBackendVlvIndex​(String name)
                                       throws ConfigException
        Gets the named Backend Vlv Index.
        Parameters:
        name - The name of the Backend Vlv Index to retrieve.
        Returns:
        Returns the named Backend Vlv Index.
        Throws:
        ConfigException - If the Backend Vlv Index could not be found or it could not be successfully decoded.
      • removeBackendVlvIndexAddListener

        void removeBackendVlvIndexAddListener​(ConfigurationAddListener<BackendVlvIndexCfg> listener)
        Deregisters an existing Backend Vlv Index configuration add listener.
        Parameters:
        listener - The Backend Vlv Index configuration add listener.
      • addBackendVlvIndexDeleteListener

        void addBackendVlvIndexDeleteListener​(ConfigurationDeleteListener<BackendVlvIndexCfg> listener)
                                       throws ConfigException
        Registers to be notified when existing Backend Vlv Indexes are deleted.
        Parameters:
        listener - The Backend Vlv Index configuration delete listener.
        Throws:
        ConfigException - If the delete listener could not be registered.
      • removeBackendVlvIndexDeleteListener

        void removeBackendVlvIndexDeleteListener​(ConfigurationDeleteListener<BackendVlvIndexCfg> listener)
        Deregisters an existing Backend Vlv Index configuration delete listener.
        Parameters:
        listener - The Backend Vlv Index configuration delete listener.