History log of /haiku-fatelf/src/add-ons/kernel/file_systems/packagefs/NameIndex.cpp
Revision Date Author Comments
# 1197afa8 08-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove superfluous checks


# 1cf4d082 08-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

More abstraction in GenericIndexIterator

* Move tree node operations to a subpolicy TreePolicy.
* Add a GenericIndexIteratorTreePolicy templatized over the policy,
implementing the tree policy for the standard indices.


# 2c5c1adc 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove TwoKeyAVLTree from kernel utils again

It's not ready for shared use yet.


# abaf82e5 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

GenericIndexIterator: Fix NameIndex dependency

Next() was still copying the name. Add a GetNodeValue() method to the
policy that fetches the value instead.


# 24c2d0cc 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Refactor NameIndexIterator into template class

Create template class GenericIndexIterator from NameIndexIterator.


# 182e58f7 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

NodeListener::NodeChanged(): Provide old value

* Add interface OldNodeAttributes an instance of which is passed to
NodeListener::NodeChanged() to provide the old attribute values
(currently only modification time and file size).
* Also extend PackageLinksListener::PackageLinkNodeChanged() with a
OldNodeAttributes parameter.
* Add OldNodeAttributes implementations for PackageLinkSymlink (inner
class OldAttributes) and UnpackingNode (OldUnpackageNodeAttributes).


# 670b0d10 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

~NameIndex(): Make more robust

Remove the listener only, if it was registered.


# 8373bcd1 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Name::Index(): Fix initialization order

Add the node listener directly after calling the base class Init().
Otherwise, on error, the we could try to remove the listener although it
wasn't added in the first place.


# 989addc2 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Simplify [Abstract]IndexIterator interface

* Remove Current() and Previous() and add a HasNext() instead.
* Reimplement NameIndexIterator. It directly works with tree nodes
instead of using an iterator, now.


# dcc6ab54 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Fix NameIndexPrimaryKeyCompare

It was actually returning whether the names where not equal.


# 5deb28d6 06-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Cleanup


# 331b89b3 05-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add NameIndex class and create instance in Volume


# 1197afa8062d08807f092213522af8f119f31d8a 08-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove superfluous checks


# 1cf4d082abf8b0fd6e842614e91d8c196a4feee4 08-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

More abstraction in GenericIndexIterator

* Move tree node operations to a subpolicy TreePolicy.
* Add a GenericIndexIteratorTreePolicy templatized over the policy,
implementing the tree policy for the standard indices.


# 2c5c1adc9171e42cffbdba6de1a8daff42b89023 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Remove TwoKeyAVLTree from kernel utils again

It's not ready for shared use yet.


# abaf82e5a92b57d44c622a981ed06e47aa9f2eb1 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

GenericIndexIterator: Fix NameIndex dependency

Next() was still copying the name. Add a GetNodeValue() method to the
policy that fetches the value instead.


# 24c2d0cc091d257f19062fc9fd8564d487cdf6fd 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Refactor NameIndexIterator into template class

Create template class GenericIndexIterator from NameIndexIterator.


# 182e58f709cc0d9e0ae0f905874c13dfe38ce516 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

NodeListener::NodeChanged(): Provide old value

* Add interface OldNodeAttributes an instance of which is passed to
NodeListener::NodeChanged() to provide the old attribute values
(currently only modification time and file size).
* Also extend PackageLinksListener::PackageLinkNodeChanged() with a
OldNodeAttributes parameter.
* Add OldNodeAttributes implementations for PackageLinkSymlink (inner
class OldAttributes) and UnpackingNode (OldUnpackageNodeAttributes).


# 670b0d106a3928990cbca222f396373695a49288 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

~NameIndex(): Make more robust

Remove the listener only, if it was registered.


# 8373bcd1693ce8f9a5072a0a181a2e63bc6993db 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Name::Index(): Fix initialization order

Add the node listener directly after calling the base class Init().
Otherwise, on error, the we could try to remove the listener although it
wasn't added in the first place.


# 989addc20924f6168db9ce1707a5f79aeeb38627 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Simplify [Abstract]IndexIterator interface

* Remove Current() and Previous() and add a HasNext() instead.
* Reimplement NameIndexIterator. It directly works with tree nodes
instead of using an iterator, now.


# dcc6ab54082673e2d8c28c863bc5303a1433b9e0 07-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Fix NameIndexPrimaryKeyCompare

It was actually returning whether the names where not equal.


# 5deb28d6d292b8f3ab45200f712b4a90c847d1f2 06-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Cleanup


# 331b89b3a5568ad9efcd8a10aa587366753bc6a4 05-Jul-2011 Ingo Weinhold <ingo_weinhold@gmx.de>

Add NameIndex class and create instance in Volume