Estoy diseñando un proyecto y no se ha implementado nada, por lo que sigo revisando el proceso para determinar si Core Data es viable para el proyecto.Integrando XMLRPC/Web Services con Core Data
Aquí está mi consulta -
Quiero crear un modelo de objeto gestionado utilizando datos básicos para representar algunos objetos del lado del servidor por ejemplo, carpeta, archivo, etc .... Todos los objetos (carpetas, archivos, etc ..) son accesibles a través de las API XMLRPC que devuelven algún XML bien formado.
Por ejemplo, puede haber una API llamada getFolders que pueden devolver el siguiente -
<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>
Del mismo modo que no puede haber una API updateFolders que opera en un elemento carpeta existente y por simplicidad permite decir que sólo actualiza la nombre de la carpeta. La solicitud de que sería publicar algo como lo siguiente -
<xml>
<method name="updateFolder">
<folder_id="1">
<params>
<param name="folder_name" value="Test"/>
</params>
</method>
que estoy tratando de averiguar -
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
Parece que el punto de XMLStoreType como NSPersistentStore directamente a archivos XML reales que sujetan la datos finales En mi caso, el XML es simplemente lo que devuelve una llamada XMLRPC y los datos reales se almacenan en una base de datos del servidor. Por lo tanto, dado que las tiendas no son representaciones directas de los objetos (o donde se almacenan los objetos), me preguntaba si debería crear un NSAtomicStore personalizado y manejar la carga y guardar para la inicialización y actualización, respectivamente. Aquí hay un enlace sobre cómo hacer esto para un NSAtomicStore -
Por favor, hágamelo saber si esto tiene sentido o si hay una mejor manera de manejar esto.
Gracias de antemano por su ayuda!