Создание нового «Базового Данных» AtomicStore, недостающие части - PullRequest
2 голосов
/ 03 марта 2010

Я в процессе реализации подкласса AtomicStore для сохранения данных в БД MySQL.Система уже работает довольно хорошо, кроме реализации fetch-запросов.Выборки должны включать в себя кэшированные узлы, но также запускать «select» на нижележащей базе данных SQL.

В настоящее время я работаю только с подклассами для NSAtomicStore и NSAtomicStoreCacheNode.Таким образом, выполнение выборки приведет только к поиску внутри любых кэшированных узлов.Поскольку выборка эффективно выполняется для экземпляра NSManagedObjectContext, я предполагаю, что этот класс также нуждается в перезаписи.

В любом случае, в моем текущем понимании Core Data я предполагал, что все, что касается «пользовательского хранилища», будет сделано толькоNSAtomicStore (и NSAtomicStoreCacheNode).Поэтому я искал что-то здесь, должен выполнить выборку.

Поскольку реализация SQLite не используется.в исходном коде я немного копался в «GnuStep», здесь «метод извлечения» вводится в NSAtomicStore.Может быть, кто-то может указать мне правильное направление здесь.

Таким образом, возможно, в NSAtomicStore есть некоторые «скрытые» интерфейсы, которые необходимо переопределить, или необходимо создать подкласс NSManagedObjectContext.

1 Ответ

3 голосов
/ 07 марта 2013

Этот вопрос не мог быть решен, когда он был написан в 2010 году, но «недостающее звено» для решения этой проблемы было предоставлено в Mac OS X 10.7 и iOS 5 в виде NSIncrementalStore абстрактный класс. Могут быть реализованы NSIncrementalStore подклассы, которые подключаются к MySQL, другим СУБД, базам данных "NoSQL" или даже веб-службам .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...