# FTGraphManagerImpl

## Abstract

Instances of this class are used to fetch, create etc. graphs

## Methods

`-allGraphIds`
`-createGraphWithId:`
  create a graph using the given id
`-graphWithId:`
  load the graph with the given id
`-initForServer:withGraphIdToGraphDatabase:`
  initializes the receiver handing off its database
`-initWithDatabase`
  initializes the receiver handing off its database
`-lookupGraphWithId:`
  return the graph corresponding to the given id, if existent
`-releaseGraph:`
  Informs the receiver that a graph may be removed from the cache
`-removeGraphWithId:`
  removes the specified graph or does nothing, if the graph does not exist

### allGraphIds

>     - (id <ECIterator>) allGraphIds;

method result
  an iterator of all graph id's this graph manager manages or an empty iterator, if no graph exists

### createGraphWithId:

create a graph using the given id

>     - (id <FTGraph>) createGraphWithId: (id <FTId> ) graphId;

##### Parameter Descriptions

> `graphId`
>   underlying id to use

method result
  created graph

### graphWithId:

load the graph with the given id

>     - (id <FTGraph>) graphWithId: (id <FTId>) graphId;

method result
  the graph with the given id or nil, if it does not exist

### initForServer:withGraphIdToGraphDatabase:

initializes the receiver handing off its database

See Also:

> initWithDatabase

>     - initForServer: (FTServerImpl *) theServer withGraphIdToGraphDatabase: (BDBDatabase *) theDatabase;

##### Parameter Descriptions

> `theServer`
>   the server under which this instance runs
> `theDatabase`
>   reference to the graphidToGraph database

### initWithDatabase

initializes the receiver handing off its database

See Also:

> initForServer:withGraphIdToGraphDatabase:

>     - initForServer: (FTServerImpl *) theServer withGraphIdToGraphDatabase: (BDBDatabase *) theDatabase;

##### Parameter Descriptions

> `theServer`
>   the server under which this instance runs
> `theDatabase`
>   reference to the graphidToGraph database

### lookupGraphWithId:

return the graph corresponding to the given id, if existent

>     - (FTGraphImpl *) lookupGraphWithId: (id <FTId>) graphId;

method result
  graph corresponding to the given id, if existent

### releaseGraph:

Informs the receiver that a graph may be removed from the cache

>     - (void) releaseGraph: (FTGraphImpl *) item;

##### Parameter Descriptions

> `item`
>   item to remove

### removeGraphWithId:

removes the specified graph or does nothing, if the graph does not exist

>     - removeGraphWithId: (id <FTId>) graphId;

##### Parameter Descriptions

> `graphId`
>   id of graph to remove

method result
  self

## Variables

### graphIdToGraphCache

>     ECCache *graphIdToGraphCache;

##### Discussion

Contains all graphs being in memory at present

(Last Updated August 27, 2006)