Projektuję dla projektu i nic nie zostało zaimplementowane - więc wciąż przechodzę przez proces myślowy, aby ustalić, czy Core Data jest opłacalna dla projektu.Integracja XMLRPC/usług sieci Web z danymi podstawowymi
Oto moje zapytanie -
Chcę utworzyć zarządzanego modelu obiektowego przy użyciu danych Core reprezentować pewną stronie serwera obiektów np folder, plik, itd .... Wszystkie obiekty (folder, plik etc ..) są dostępne za pośrednictwem interfejsów API XMLRPC, które zwracają dobrze sformatowany kod XML.
Na przykład, nie może być API o nazwie getFolders że może zwrócić następujące -
<xml>
<folders>
<folder id=1>
<name>Test 123</name>
<files>
<file id=100>
<name>hello.txt</name>
<path>./hello.txt</path>
</file>
...
</files>
</folder>
...
</folders>
Podobnie nie może być API updateFolders który działa na istniejącym sprzęcie folderu i dla uproszczenia powiedzmy, że to po prostu aktualizuje Nazwa folderu. Żądanie to będzie pisać coś jak następuje -
<xml>
<method name="updateFolder">
<folder_id="1">
<params>
<param name="folder_name" value="Test"/>
</params>
</method>
Próbuję wymyślić -
1. How can I represent folder as a managed object i.e., how do I initialize it from the above XML
2. Once initialized, how can I handle an update to it using the updateFolder API shown above
Wydaje się, że takie jak punkt XMLStoreType NSPersistentStore bezpośrednio do rzeczywistych plików XML, które posiadają ostateczne dane. W moim przypadku XML jest po prostu tym, co powróciło z wywołania XMLRPC, a rzeczywiste dane są przechowywane na DB po stronie serwera. Dlatego, ponieważ magazyny nie są bezpośrednimi reprezentacjami obiektów (lub gdzie przechowywane są obiekty), zastanawiałem się, czy powinienem stworzyć niestandardowy NSAtomicStore i obsłużyć ładowanie i zapisać odpowiednio dla inicjalizacji i aktualizacji. Oto link na robienie tego na NSAtomicStore -
Proszę dać mi znać, jeśli to ma sens, czy istnieje lepszy sposób, aby sobie z tym poradzić.
Z góry dziękuję za pomoc!