Commit Graph

31 Commits

Author SHA1 Message Date
78d86fd3ff Fix PerformWrite not rolling back transaction on exception 2022-06-30 15:15:09 +09:00
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
a378e78ced Fix RealmLive unnecessarily passing ID around
Appears to have never been needed. When the `retrieveFromID` method was
created in 81b5717ae7, it didn't use the
`id` parameter for anything either.
2022-02-01 21:35:12 +01:00
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
d37c3c463e Move statistics to static class 2022-01-26 13:29:12 +09:00
c7947b3489 Add statistics for Live usage 2022-01-26 12:42:24 +09:00
56b06f34f0 Fix RealmLive not refetching if update thread context was closed at some point 2022-01-26 12:32:34 +09:00
d76822b685 Avoid creating realm contexts or refetching when accessing RealmLive from the update thread 2022-01-26 12:32:34 +09:00
e23b10e6a5 Update remaining cases of clashing variable name in realm.Run(realm.. 2022-01-25 13:04:05 +09:00
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
81b5717ae7 Fix RealmLive failing to retrieve due to lack of refresh 2022-01-21 17:33:03 +09:00
d2655c0825 Fix RealmLive not necessarily being in refreshed state due to potentially using update context 2022-01-21 17:27:30 +09:00
114c9e8c1f Update all usages of CreateContext to use either Run or Write 2022-01-21 17:27:08 +09:00
7baff18764 Add back PerformRead return safety by checking IsManaged status of returned data 2022-01-13 13:14:44 +09:00
8461eaab46 BeatmapSetInfo detach support 2022-01-12 17:00:16 +09:00
a9dbcd92a1 Split out unmanaged implementation of RealmLive into its own class 2021-12-16 15:23:55 +09:00
441b7baa93 Provide a realm factory to usages of ToLive/RealmLive 2021-12-14 14:26:34 +09:00
ef3d0ee0db Merge branch 'master' into realm-integration/skins-rebase 2021-11-30 19:59:59 +09:00
f3f77fa053 Update missed xmldoc/comments 2021-11-30 11:56:53 +09:00
35d68d6ab0 Remove all optimisations from RealmLive 2021-11-30 11:47:29 +09:00
cd0c811ab1 Add the ability to call ToString on a RealmLive to get the underlying object's implementation 2021-11-29 18:28:25 +09:00
348d1d0be9 Don't dispose fetched realm instance when using RealmLive.Value
See https://github.com/realm/realm-dotnet/discussions/2734#discussioncomment-1705038 for reasoning.
2021-11-29 18:28:25 +09:00
1dd5e1ca89 Remove RealmLive context re-fetch optimisation for now 2021-11-29 18:28:25 +09:00
6dcc244e21 Fix RealmLive not working is data is attached to realm post-ToLive call 2021-11-29 17:34:58 +09:00
cb8fa80352 Don't dispose fetched realm instance when using RealmLive.Value
See https://github.com/realm/realm-dotnet/discussions/2734#discussioncomment-1705038 for reasoning.
2021-11-29 14:25:43 +09:00
e40e5096ea Remove RealmLive context re-fetch optimisation for now 2021-11-29 14:25:43 +09:00
5e53f51c99 Merge pull request #15812 from peppy/realm-live-unmanaged-fetch-fix
Avoid attempting to fetch a non-managed `RealmLive` instance from the realm backing
2021-11-26 15:37:58 +09:00
40d1b97af1 Avoid attempting to fetch a non-managed RealmLive instance from the realm backing
For compatibility reasons, we quite often convert completely unmanaged
instances to `ILive`s so they fit the required parameters of a property
or method call. This ensures such cases will not cause any issues when
trying to interact with the underlying data.

Originally I had this allowing write operations, but that seems a bit
unsafe (when performing a write one would assume that the underlying
data is being persisted, whereas in this case it is not). We can change
this if the requirements change in the future, but I think throwing is
the safest bet for now.
2021-11-26 15:06:14 +09:00
13612c0d02 Add equality support to ILive types 2021-11-26 14:56:16 +09:00
93d7cdc509 Don't check whether the source realm was closed or not
Based on what we now know, this is not required, as long as there is
another realm context open on the same thread.
2021-10-13 15:50:06 +09:00
b01d82b3fd Add RealmLive implementation 2021-10-11 15:36:41 +09:00