## grendel.storage.mdb
Interface nsIMdbEnv

public abstract interface nsIMdbEnv
extends nsIMdbObject

nsIMdbEnv: a context parameter used when calling most abstract db methods. The main purpose of such an object is to permit a database implementation to avoid the use of globals to share information between various parts of the implementation behind the abstract db interface. An environment acts like a session object for a given calling thread, and callers should use at least one different nsIMdbEnv instance for each thread calling the API. While the database implementation might not be threaded, it is highly desirable that the db be thread-safe if calling threads use distinct instances of nsIMdbEnv. Callers can stop at one nsIMdbEnv per thread, or they might decide to make on nsIMdbEnv instance for every nsIMdbPort opened, so that error information is segregated by database instance. Callers create instances of nsIMdbEnv by calling the MakeEnv() method in nsIMdbFactory. tracing: an environment might support some kind of tracing, and this boolean attribute permits such activity to be enabled or disabled. errors: when a call to the abstract db interface returns, a caller might check the number of outstanding errors to see whether the operation did actually succeed. Each nsIMdbEnv should have all its errors cleared by a call to ClearErrors() before making each call to the abstract db API, because outstanding errors might disable further database actions. (This is not done inside the db interface, because the db cannot in general know when a call originates from inside or outside -- only the app knows this.) error hook: callers can install an instance of nsIMdbErrorHook to receive error notifications whenever the error count increases. The hook can be uninstalled by passing a null pointer.

Method Summary
`int` | `ClearErrors()`
`int` | `ClearErrorsAndWarnings()`
`int` | `ClearWarnings()`
`boolean` | `GetAutoClear()`
`int` | `GetDoTrace(boolean outDoTrace)`
`int` | `GetErrorCount(int outCount, boolean outShouldAbort)`
`nsIMdbErrorHook` | `GetErrorHook()`
`int` | `GetWarningCount(int outCount, boolean outShouldAbort)`
`void` | `SetAutoClear(boolean inAutoClear)`
`int` | `SetDoTrace(boolean inDoTrace)`
`void` | `SetErrorHook(nsIMdbErrorHook ioErrorHook)`

Methods inherited from interface grendel.storage.mdb.nsIMdbObject
`CloseMdbObject, GetMdbFactory, IsFrozenMdbObject, IsOpenMdbObject`

Method Detail

### GetErrorCount

    public int GetErrorCount(int outCount,
                             boolean outShouldAbort)

### GetWarningCount

    public int GetWarningCount(int outCount,
                               boolean outShouldAbort)

### GetDoTrace

    public int GetDoTrace(boolean outDoTrace)

### SetDoTrace

    public int SetDoTrace(boolean inDoTrace)

### GetAutoClear

    public boolean GetAutoClear()

### SetAutoClear

    public void SetAutoClear(boolean inAutoClear)

### GetErrorHook

    public nsIMdbErrorHook GetErrorHook()

### SetErrorHook

    public void SetErrorHook(nsIMdbErrorHook ioErrorHook)

### ClearErrors

    public int ClearErrors()

### ClearWarnings

    public int ClearWarnings()

### ClearErrorsAndWarnings

    public int ClearErrorsAndWarnings()