/******************************************************************************
@header BDBCursorConfig
@availability OS X, GNUstep
@copyright (C) 2004, 2005, 2006 Oliver Langer
Author: Oliver Langer
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-------------------------------------------------------------------------
Modification history
02.01.2005 ola initial version
22.08.2006 ola license changed
-------------------------------------------------------------------------
******************************************************************************/
#if !defined(__BDBCURSORCONFIG_H)
#define __BDBCURSORCONFIG_H
#include
#include
/**
* @class BDBCursorConfig
* @abstract Instances of this class are used to configure cursor instances.
* @discussion By default, all flags bundled in the class equal NO.
*/
@interface BDBCursorConfig : BDBObject {
@private
u_int32_t flags;
}
- init;
/**
* @method degree2
* @result YES if the cursor is configured for degree 2 isolation.
*/
- (BOOL) degree2;
/**
* @method getDirtyRead
* @result if read operations performed by the cursor are configured to return
* modified but not yet committed data.
*/
- (BOOL) dirtyRead;
/**
* @method writeCursor
* @result if the Concurrent Data Store environment cursor will be used to update the database.
*/
- (BOOL) writeCursor;
/**
* @method setDegree2
* @abstract Configure the cursor for degree 2 isolation.
* @param useDegree2
* @result self
*/
- setDegree2: (BOOL) useDegree2;
/**
* @method setDirtyRead
* @abstract Configure read operations performed by the cursor to return
* modified but not yet committed data.
* @param useDirtyRead
* @result self
*/
- setDirtyRead: (BOOL) useDirtyRead;
/**
* @method setWriteCursor
* @param useWriteCursor Specify the Concurrent Data Store environment cursor
* will be used to update the database.
* @result self
*/
- setWriteCursor: (BOOL) useWriteCursor;
/**
* @method flags
* @discussion for internal usage only
* @result the resulting flags
*/
- (u_int32_t) flags;
@end
#endif