Interface PluggableBackendCfgClient

    • Method Detail

      • getCipherKeyLength

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

        Specifies the key length in bits for the preferred cipher.

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

        void setCipherKeyLength​(Integer value)
                         throws PropertyException
        Sets the "cipher-key-length" property.

        Specifies the key length in bits for the preferred cipher.

        Parameters:
        value - The value of the "cipher-key-length" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setCipherTransformation​(String value)
                              throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "cipher-transformation" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setCompactEncoding​(Boolean value)
                         throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "compact-encoding" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setConfidentialityEnabled​(Boolean value)
                                throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "confidentiality-enabled" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setEntriesCompressed​(Boolean value)
                           throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "entries-compressed" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.
      • setImportOffheapMemorySize

        void setImportOffheapMemorySize​(Long value)
                                 throws PropertyException
        Sets the "import-offheap-memory-size" property.

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

        Parameters:
        value - The value of the "import-offheap-memory-size" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setIndexEntryLimit​(Integer value)
                         throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "index-entry-limit" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setIndexFilterAnalyzerEnabled​(Boolean value)
                                    throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "index-filter-analyzer-enabled" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setIndexFilterAnalyzerMaxFilters​(Integer value)
                                       throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "index-filter-analyzer-max-filters" property.
        Throws:
        PropertyException - If the new value is invalid.
      • 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.

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

        void setPreloadTimeLimit​(Long value)
                          throws PropertyException
        Sets 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.

        Parameters:
        value - The value of the "preload-time-limit" property.
        Throws:
        PropertyException - If the new value is invalid.
      • listBackendIndexes

        String[] listBackendIndexes()
                             throws ConcurrentModificationException,
                                    org.forgerock.opendj.ldap.LdapException
        Lists the Backend Indexes.
        Returns:
        Returns an array containing the names of the Backend Indexes.
        Throws:
        ConcurrentModificationException - If this Pluggable Backend has been removed from the server by another client.
        org.forgerock.opendj.ldap.LdapException - If any other error occurs.
      • listBackendVLVIndexes

        String[] listBackendVLVIndexes()
                                throws ConcurrentModificationException,
                                       org.forgerock.opendj.ldap.LdapException
        Lists the Backend VLV Indexes.
        Returns:
        Returns an array containing the names of the Backend VLV Indexes.
        Throws:
        ConcurrentModificationException - If this Pluggable Backend has been removed from the server by another client.
        org.forgerock.opendj.ldap.LdapException - If any other error occurs.
      • createBackendVLVIndex

        <C extends BackendVLVIndexCfgClient> C createBackendVLVIndex​(ManagedObjectDefinition<C,​? extends BackendVLVIndexCfg> d,
                                                                     String name,
                                                                     Collection<PropertyException> exceptions)
                                                              throws IllegalManagedObjectNameException
        Creates a new Backend VLV Index. The new Backend VLV Index will initially not contain any property values (including mandatory properties). Once the Backend VLV Index has been configured it can be added to the server using the ConfigurationClient.commit() method.
        Type Parameters:
        C - The type of the Backend VLV Index being created.
        Parameters:
        d - The definition of the Backend VLV Index to be created.
        name - The name of the new Backend VLV Index.
        exceptions - An optional collection in which to place any PropertyExceptions that occurred whilst attempting to determine the default values of the Backend VLV Index. This argument can be null.
        Returns:
        Returns a new Backend VLV Index configuration instance.
        Throws:
        IllegalManagedObjectNameException - If the name of the new Backend VLV Index is invalid.