Commit Graph

32 Commits

Author SHA1 Message Date
Thomas Goyne 473028c153 Add some missing header inclusions 2015-12-03 09:07:37 -08:00
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
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 a0f1dab71b Add a Schema class, move lookup by name and internal-consistency checks there 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 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 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 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 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 b4f856bdd0 Use NSDMIs for Realm::Config and make it moveable 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 373375fa1b cleaup schema initialization 2015-07-28 12:17:58 -07:00
Ari Lazier e9379491d6 fix for swift issues 2015-07-28 12:17:57 -07:00
Ari Lazier 94c7ea512f update to newest object store apis 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