Thomas Goyne
d1175fe364
Switch to throwing exceptions with all of the info needed to build error messages
2015-11-20 10:24:51 -08:00
Thomas Goyne
ab7f3dcaa6
Port most of RLMResults's functionality to realm::Results
2015-11-20 10:24:51 -08:00
Thomas Goyne
a492966949
Move Realm::Config's default constructor out-of-line
...
Removes the need for things including shared_realm.hpp to include schema.hpp.
2015-11-20 10:24:21 -08:00
Ari Lazier
e3c9ec8ee7
fixes to list.cpp/hpp based on object store pr feedback - use lowercase strings for property names
2015-11-18 14:36:46 -08:00
Ari Lazier
85286b8807
block refresh until the last context has finished execution
2015-11-16 11:16:09 -08:00
Ari Lazier
e4732994b7
integrate latest object store changes
2015-11-13 18:20:40 -08:00
Thomas Goyne
883ef12c7f
Add Realm::close() and call it in RealmCache::clear()
...
This is needed for the Swift tests due to that throwing an exception over Swift
code unavoidably results in objects being leaked.
2015-11-10 14:54:15 -08:00
Thomas Goyne
b93e5cedff
Include the path of the file which actually failed to open in exceptions
...
When the user (or our tests...) do dumb things it's sometimes not actually the
realm file itself that failed to open.
2015-11-04 17:03:24 -08:00
Kristian Dupont
db36ca5b9c
Remove Realm suffix
2015-11-03 08:37:54 +01:00
Kristian Dupont
4973827531
Rename RealmDelegate to RealmBindingContext
2015-10-29 10:42:56 +01:00
Thomas Goyne
6dfeaf8080
Move things which are not part of the API to an impl directory/namespace
2015-10-15 11:30:08 -07:00
Thomas Goyne
f6467778e0
Send changes_available() even if autorefresh is enabled
2015-09-10 14:15:57 -07:00
Thomas Goyne
95c80c98e6
Fix error in cleanup after an error during a migration
2015-09-09 11:25:55 -07:00
Thomas Goyne
a0f1dab71b
Add a Schema class, move lookup by name and internal-consistency checks there
2015-09-09 11:25:55 -07:00
Thomas Goyne
b381437a45
Make Realm::compact() more robust
...
Throw if it's called on a read-only Realm and ensure the Realm is left in a
valid state regardless of the starting state.
2015-09-09 11:25:55 -07:00
Thomas Goyne
6133eebf8b
Reduce the scope of a variable
2015-09-09 11:25:55 -07:00
Thomas Goyne
dbac77f69b
Make a bunch of things const
2015-09-09 11:25:54 -07:00
Thomas Goyne
06e0ff8373
Share ExternalCommitHelpers between Realm instances for a single path
2015-09-09 11:25:54 -07:00
Thomas Goyne
ea5c47510b
Refactor schema initialization a bit
...
Change schema verification to operate on a pair of Schema objects rather than a
Schema and a Group to eliminate some redundant work done, defer some of the
work done for migrations to within the migration block to avoid doing it
unnecessarily, and make passing in a custom schema in the Config when creating
a Realm entirely equivalent to calling update_schema() afterwards.
2015-09-09 11:25:54 -07:00
Thomas Goyne
e4f29fe221
Move the interprocess notification functionality to the object store
2015-09-09 11:25:53 -07:00
Thomas Goyne
b129ebe8c1
Shuffle stuff around and clean some things up
2015-09-09 11:25:53 -07:00
Thomas Goyne
eeb2ddd794
Improve array KVO performance a bit
2015-09-09 11:25:53 -07:00
Thomas Goyne
0a41c85d0a
Improve performance of realm_requires_update() and make more things const
2015-09-09 11:25:53 -07:00
Thomas Goyne
efdfa08524
Port some of the KVO support functionality to the object store
2015-09-09 11:25:53 -07:00
Thomas Goyne
65e1eb5d08
Add the ability to bypass the Realm cache entirely
2015-09-09 11:25:53 -07:00
Thomas Goyne
3f226cf342
Rework change notifications
...
Switch to an abstract class rather than std::function in preparation for having
more kinds of notifications with different arguments for KVO.
2015-09-09 11:25:53 -07:00
Thomas Goyne
045c7b2066
Add Realm::get_schema_version()
2015-09-09 11:25:52 -07:00
Thomas Goyne
e4377bb42a
Change realm::Schema to a vector rather than a map
...
Much faster to copy and destroy with no loss in lookup performance.
2015-09-09 11:25:52 -07:00
Thomas Goyne
55e6cca243
Convert RLMRealmConfiguration to a wrapper around Realm::Config
2015-09-09 11:25:52 -07:00
Thomas Goyne
0ae1bb188e
Don't cache dynamic realms in the ObjectStore cache either
2015-09-09 11:25:52 -07:00
Thomas Goyne
25a6734111
Eliminate some copies
2015-09-09 11:25:52 -07:00
Thomas Goyne
45890f2772
Use NSDMIs for Realm
2015-09-09 11:25:52 -07:00
Thomas Goyne
348f4a7b39
Reduce s_init_mutex's scope
2015-09-09 11:25:51 -07:00
Thomas Goyne
a91839bf7e
Store a copy of the encryption key
2015-09-04 11:51:19 -07:00
Ari Lazier
b0843356dc
clear Realm cache between tests
2015-08-13 09:42:21 -07:00
Ari Lazier
cb8364c255
property copy schema from cached realms
2015-08-13 09:42:21 -07:00
Ari Lazier
8712c8bc2c
fixes for latest object store changes
2015-08-13 09:42:21 -07:00
Ari Lazier
373375fa1b
cleaup schema initialization
2015-07-28 12:17:58 -07:00
Ari Lazier
94c7ea512f
update to newest object store apis
2015-07-28 12:17:57 -07:00
Ari Lazier
eb2b079e2a
pr fixes
2015-07-28 12:17:57 -07:00
Ari Lazier
d8e9d36c88
rebase fixes
2015-07-28 12:17:57 -07:00
Ari Lazier
2a0a5d234f
run migrations and schema update through new Realm apis
2015-07-28 12:17:56 -07:00
Ari Lazier
60700ba121
first pass refactor of RLMRealm to c++
2015-07-28 12:17:56 -07:00