objectbox / objectbox/objectbox-java
Improve relations to play nicer with server APIs (e.g. Retrofit, GSON, Jackson, Moshi, ...)
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 4.6k
- Forks
- 311
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
If you get object data from another source (e.g. server) you can make those data objects also ObjectBox entities. One thing has to be considered: relations on ObjectBox currently rely on ToOne and ToMany types, which 3rd party libraries are not aware of.
A quick work around would probably be to walk through the object graph and replace List objects with ToMany objects.
However, we could also look into supporting plain java.util.Lists in some way. A put would have to detect the type and do some additional syncing to figure out what to do. Or maybe just plainly put all objects in the list?
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Es werden keine Dateien oder Tests genannt. Beginne damit nachzuverfolgen, wie ObjectBox mit ToOne, ToMany, plain java.util.List und put-Operationen umgeht, und vergleiche anschließend die möglichen Ansätze für Objekte aus Retrofit, GSON, Jackson oder Moshi. Als abgeschlossen gilt die Aufgabe, wenn eine definierte und implementierte Möglichkeit vorhanden ist, mit der vom Server abgebildete Objekte und ihre Beziehungen funktionieren, ohne dass Drittanbieterbibliotheken die ObjectBox-Typen verstehen müssen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- database
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 20/100