IAssociativeDataStorage
Интерфейс для чтения и записи в ассоциативный накопитель с использованием понятия узлов, адресуемых ключами.
Метод | Описание |
---|---|
FindNode | Осуществляет поиск значения по ключу и возвращает реализацию интерфейса IDataStorage, ассоциированного с хранилищем значения. |
CreateNode | Создает новый пустой узел ассоциативного хранилища данных. |
DeleteNode | Уделяет узел ассоциативного хранилища данных, который ассоциирован с заданным ключом. |
Класс | Описание |
---|---|
Интерфейс для чтения и записи в накопитель с произвольной адресацией. |
Интерфейс IAssociativeDataStorage реализуется накопителем, который ассоциирует ключи с узлами. Каждый узел, в свою очередь, связан с собственным накопителем данных IDataStorage, доступ к которому осуществляется с использованием методов интерфейса IAssociativeDataStorage.
Интерфейс не налагает требований по сложности доступа к узлам, семантике, размеру, однородности и уникальности ключей, а также реализациям накопителей, которые ассоциированы с ключами.

Чтение и запись значений, ассоциированных с известными ключами могут быть осуществлены с помощью метода FindNode с приведением интерфейса соответствующих накопителей и получением их потоков данных для чтения и записи. Этой процедуре аналогичны вызовы наследуемых методов ReadOf и WriteOf интерфейса IArbitrarilyAccessedDataStorage, которые позволяют получить потоки чтения или записи за один вызов.
Примером детализации может являться накопитель IContiguousDataStorage смежных данных, адресуемых индексно так, что целочисленный индекс является ключом методов чтения и записи.
Примером реализации данного интерфейса может быть шаблон CAssociativeDataStorage, специализированный для типов IniBasedAssociativeDataStorageImplementation и InMemoryAssociativeDataStorageImplementation.
Реализация накопителя, которая поддерживает интерфейс IAssociativeDataStorage, также поддерживает интерфейсы IAssociativeDataStorageInput и IAssociativeDataStorageOutput, которые доступны через использование метода IDataStorage::RepresentAs, вызываемого над this.
- См. также
IAssociativeDataStorageInput Интерфейс для чтения из ассоциативного накопителя с использованием понятия узлов, адресуемых ключами. IAssociativeDataStorageOutput Интерфейс для записи в ассоциативный накопитель с использованием понятия узлов, адресуемых ключами. AssociativeDataStorageRef Ссылочный адаптер, определенный над интерфейсом IAssociativeDataStorage. AssociativeDataStorageOwn Владеющий адаптер, определенный над интерфейсом IAssociativeDataStorage.