# Methods

`-addObject:`
  adds an object to this chunk. Does *not* store the result in the database! Call storeChunk for this purpose
`-containsObject:`
`-count`
`-createForDatabase`
  Creates a chunk and stores its initial content in the database.
`-createForDatabase:atRecordNumber:`
  Creates a chunk and stores its initial content in the database.
`-initForDatabase`
  internal method call
`-initForDatabase:atRecordNumber:usingObjects:`
  internal method call
`-isChunkInTransaction`
`-loadChunk`
  Loads the chunk from the database
`-objects`
  get all objects stored in this chunk lresult all objects stored in this chunk
`-readFromDatabase`
  reads the specified chunk from the database
`-readFromDatabase:atRecordNumber:`
  reads the specified chunk from the database
`-recordNumber`
`-remove`
  removes the chunk from the database
`-removeObject:`
  removes the specified objects. Operation is ignored if given object is not to be found in the chunk
`-setChunkInTransaction:`
`-store`
  this method is used to store the content of the chunk into the database
`-update`
  either stores the chunk or deletes it. The latter is done if the chunk contains no more data. This method should only called by transaction steps since it directly writes the content to the database

### addObject:

adds an object to this chunk. Does *not* store the result in the database! Call storeChunk for this purpose

>     - addObject: (id) anObject;

##### Parameter Descriptions

> `anObject`
>   given object must implement NSCoding

method result
  self

### containsObject:

>     - (BOOL) containsObject: (id) anObject;

method result
  YES if the given object is to be found in the chunk

### count

>     - (unsigned) count;

method result
  number of objects in this chunk

### createForDatabase

Creates a chunk and stores its initial content in the database.

See Also:

> createForDatabase:atRecordNumber:

>     + (_FTPersistentSetChunk *) createForDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) a_record_nr;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number at which to store the chunk

method result
  created chunk

### createForDatabase:atRecordNumber:

Creates a chunk and stores its initial content in the database.

See Also:

> createForDatabase

>     + (_FTPersistentSetChunk *) createForDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) a_record_nr;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number at which to store the chunk

### initForDatabase

internal method call

See Also:

> initForDatabase:atRecordNumber:usingObjects:

>     - initForDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) a_record_nr usingObjects: (NSArray *) givenObjects;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number to use
> `givenObjects`
>   used as the initial set of data for this chunk. if nil then an empty set will be created and loadedFromDatabase may only equal NO

method result
  self

### initForDatabase:atRecordNumber:usingObjects:

internal method call

See Also:

> initForDatabase

>     - initForDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) a_record_nr usingObjects: (NSArray *) givenObjects;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number to use
> `givenObjects`
>   used as the initial set of data for this chunk. if nil then an empty set will be created and loadedFromDatabase may only equal NO

### isChunkInTransaction

>     - (BOOL) isChunkInTransaction;

method result
  YES if this chunk is already been placed in a transaction

### loadChunk

Loads the chunk from the database

>     - loadChunk;

method result
  self

### objects

get all objects stored in this chunk lresult all objects stored in this chunk

>     - (NSArray *) objects;

### readFromDatabase

reads the specified chunk from the database

See Also:

> readFromDatabase:atRecordNumber:

>     + (_FTPersistentSetChunk *) readFromDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) record_nr;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number at which to store the chunk

method result
  loaded chunk or nil if not existent

### readFromDatabase:atRecordNumber:

reads the specified chunk from the database

See Also:

> readFromDatabase

>     + (_FTPersistentSetChunk *) readFromDatabase: (BDBDatabase *) aDatabase atRecordNumber: (unsigned) record_nr;

##### Parameter Descriptions

> `aDatabase`
>   database to use
> `a_record_nr`
>   record number at which to store the chunk

### recordNumber

>     - (unsigned) recordNumber;

method result
  number of BDB record used for storing the chunk

### remove

removes the chunk from the database

>     - (void) remove;

### removeObject:

removes the specified objects. Operation is ignored if given object is not to be found in the chunk

>     - removeObject: (id) anObject;

method result
  self

### setChunkInTransaction:

>     - setChunkInTransaction: (BOOL) itIs;

##### Parameter Descriptions

> `itIs`
>   set to YES if the chunk is placed within a transaction

method result
  self

### store

this method is used to store the content of the chunk into the database

>     - store;

method result
  self

### update

either stores the chunk or deletes it. The latter is done if the chunk contains no more data. This method should only called by transaction steps since it directly writes the content to the database

>     - (void) update;

method result
  self

© 2004, 2005, 2006 Free Software Foundation, Inc.
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

      30.03.06 ola     initial version
      23.08.06 ola     license changed
      -------------------------------------------------------------------------

(Last Updated August 27, 2006)