Interface mozIStorageVacuumParticipantType

This interface contains the information that the Storage service needs to vacuum a database. This interface is created as a service through the category manager with the category "vacuum-participant". Please see https://developer.mozilla.org/en/mozIStorageVacuumParticipant for more information.

Hierarchy

Properties

databaseConnection: mozIStorageAsyncConnection

Connection to the database file to be vacuumed.

expectedDatabasePageSize: number

The expected page size in bytes for the database. The vacuum manager will try to correct the page size by executing a full vacuum.

Note

If the database is using the WAL journal mode, the page size won't be changed to the requested value. See bug 634374.

Note

Valid page size values are powers of 2 between 512 and 65536. The suggested value is mozIStorageConnection::defaultPageSize.

useIncrementalVacuum: boolean

Whether the main schema should be using auto_vacuum = INCREMENTAL. This will cause auto_vacuum to change to INCREMENTAL if it's not set yet. It is not possible to change mode of any attached databases through this, to do that you must open a separate connection and use asyncVacuum() on it.

Methods

  • Increases the reference count for this interface. The associated instance will not be deleted unless the reference count is returned to zero.

    Returns

    The resulting reference count.

    Returns number

  • Parameters

    • aIID: object
    • Optional aInstancePtr: object

    Returns any

  • A run time mechanism for interface discovery.

    Returns

    NS_OK if the interface is supported by the associated instance, NS_NOINTERFACE if it is not.

    aInstancePtr must not be null.

    Parameters

    • aIID: object

      [in] A requested interface IID

    • aInstancePtr: object

      [out] A pointer to an interface pointer to receive the result.

    Returns void

  • Decreases the reference count for this interface. Generally, if the reference count returns to zero, the associated instance is deleted.

    Returns

    The resulting reference count.

    Returns number

  • Notifies when a vacuum operation begins. Listeners should avoid using the database till onEndVacuum is received.

    Returns

    true to proceed with the vacuum, false if the participant wants to opt-out for now, it will be retried later. Useful when participant is running some other heavy operation that can't be interrupted.

    Note

    When a vacuum operation starts or ends it will also dispatch global "vacuum-begin" and "vacuum-end" notifications through the observer service with the data argument being the database filename.

    Returns boolean

  • Notifies when a vacuum operation ends.

    Parameters

    • aSucceeded: boolean

      reports if the vacuum succeeded or failed.

    Returns void

Generated using TypeDoc