Lucene++ - a full-featured, c++ search engine
API Documentation

Public Member Functions | Static Public Member Functions | Protected Attributes
Lucene::SingleInstanceLockFactory Class Reference

Implements LockFactory for a single in-process instance, meaning all locking will take place through this one instance. Only use this LockFactory when you are certain all IndexReaders and IndexWriters for a given index are running against a single shared in-process Directory instance. This is currently the default locking for RAMDirectory. More...

`#include <SingleInstanceLockFactory.h>`

Inheritance diagram for Lucene::SingleInstanceLockFactory:

## Public Member Functions

| SingleInstanceLockFactory ()
virtual | ~SingleInstanceLockFactory ()
virtual String | getClassName ()
boost::shared_ptr< SingleInstanceLockFactory > | shared_from_this ()
virtual LockPtr | makeLock (const String &lockName)
| Return a new Lock instance identified by lockName. More...
virtual void | clearLock (const String &lockName)
| Attempt to clear (forcefully unlock and remove) the specified lock. Only call this at a time when you are certain this lock is no longer in use. More...
Public Member Functions inherited from Lucene::LockFactory
virtual | ~LockFactory ()
boost::shared_ptr< LockFactory > | shared_from_this ()
virtual void | setLockPrefix (const String &lockPrefix)
| Set the prefix in use for all locks created in this LockFactory. This is normally called once, when a Directory gets this LockFactory instance. However, you can also call this (after this instance is assigned to a Directory) to override the prefix in use. This is helpful if you're running Lucene on machines that have different mount points for the same shared directory. More...
virtual String | getLockPrefix ()
| Get the prefix in use for all locks created in this LockFactory. More...
Public Member Functions inherited from Lucene::LuceneObject
virtual | ~LuceneObject ()
virtual void | initialize ()
| Called directly after instantiation to create objects that depend on this object being fully constructed. More...
virtual LuceneObjectPtr | clone (const LuceneObjectPtr &other=LuceneObjectPtr())
| Return clone of this object. More...
virtual int32_t | hashCode ()
| Return hash code for this object. More...
virtual bool | equals (const LuceneObjectPtr &other)
| Return whether two objects are equal. More...
virtual int32_t | compareTo (const LuceneObjectPtr &other)
| Compare two objects. More...
virtual String | toString ()
| Returns a string representation of the object. More...
Public Member Functions inherited from Lucene::LuceneSync
virtual | ~LuceneSync ()
virtual SynchronizePtr | getSync ()
| Return this object synchronize lock. More...
virtual LuceneSignalPtr | getSignal ()
| Return this object signal. More...
virtual void | lock (int32_t timeout=0)
| Lock this object using an optional timeout. More...
virtual void | unlock ()
| Unlock this object. More...
virtual bool | holdsLock ()
| Returns true if this object is currently locked by current thread. More...
virtual void | wait (int32_t timeout=0)
| Wait for signal using an optional timeout. More...
virtual void | notifyAll ()
| Notify all threads waiting for signal. More...

## Static Public Member Functions

static String | _getClassName ()
Static Public Member Functions inherited from Lucene::LockFactory
static String | _getClassName ()

## Protected Attributes

HashSet< String > | locks
Protected Attributes inherited from Lucene::LockFactory
String | lockPrefix
Protected Attributes inherited from Lucene::LuceneSync
SynchronizePtr | objectLock
LuceneSignalPtr | objectSignal

## Additional Inherited Members

Protected Member Functions inherited from Lucene::LuceneObject
| LuceneObject ()

## Detailed Description

Implements LockFactory for a single in-process instance, meaning all locking will take place through this one instance. Only use this LockFactory when you are certain all IndexReaders and IndexWriters for a given index are running against a single shared in-process Directory instance. This is currently the default locking for RAMDirectory.

See also
  LockFactory

## Constructor & Destructor Documentation

## ◆ SingleInstanceLockFactory()

Lucene::SingleInstanceLockFactory::SingleInstanceLockFactory | ( |  | ) |

## ◆ ~SingleInstanceLockFactory()

virtual Lucene::SingleInstanceLockFactory::~SingleInstanceLockFactory | ( |  | ) |

virtual

## Member Function Documentation

## ◆ _getClassName()

static String Lucene::SingleInstanceLockFactory::_getClassName | ( |  | ) |

inline static

## ◆ clearLock()

virtual void Lucene::SingleInstanceLockFactory::clearLock | ( | const String & | lockName | ) |

virtual

Attempt to clear (forcefully unlock and remove) the specified lock. Only call this at a time when you are certain this lock is no longer in use.

Parameters

  lockName | name of the lock to be cleared.

Implements Lucene::LockFactory.

## ◆ getClassName()

virtual String Lucene::SingleInstanceLockFactory::getClassName | ( |  | ) |

inline virtual

Reimplemented from Lucene::LockFactory.

## ◆ makeLock()

virtual LockPtr Lucene::SingleInstanceLockFactory::makeLock | ( | const String & | lockName | ) |

virtual

Return a new Lock instance identified by lockName.

Parameters

  lockName | name of the lock to be created.

Implements Lucene::LockFactory.

## ◆ shared_from_this()

boost::shared_ptr< SingleInstanceLockFactory > Lucene::SingleInstanceLockFactory::shared_from_this | ( |  | ) |

inline

## Field Documentation

## ◆ locks

HashSet<String> Lucene::SingleInstanceLockFactory::locks

protected

The documentation for this class was generated from the following file:

- SingleInstanceLockFactory.h

clucene.sourceforge.net