181 Commits

Author SHA1 Message Date
Thomas Goyne
5028c4a582 Fix some warnings when building with GCC 4.9 2015-12-03 09:11:28 -08:00
Thomas Goyne
473028c153 Add some missing header inclusions 2015-12-03 09:07:37 -08:00
Thomas Goyne
853658b3fc Change #import to #include 2015-12-03 09:03:31 -08:00
Ari Lazier
f780342851 Merge pull request #7 from realm/tg-results
Port Results functionality from RLMResults

I will make the remaining fixes in another pr.
2015-11-20 10:26:35 -08:00
Thomas Goyne
a8f1b235d7 Eliminate a query copy in Results::filter() 2015-11-20 10:24:51 -08:00
Thomas Goyne
5683fa1e58 Use make_optional() 2015-11-20 10:24:51 -08:00
Thomas Goyne
1698da2143 Fix typo in comment 2015-11-20 10:24:51 -08:00
Thomas Goyne
d7fe9f9fb8 Expose the object class name from Results 2015-11-20 10:24:51 -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
9dc5165a58 Fix compilation with GCC 4.9 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
73b605d62c Add results.{hpp,cpp} from realm-js 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
028ed2a4c2 Merge pull request #9 from realm/al-accessors
Accessor classes for Object and List
2015-11-20 10:16:02 -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
Scott Kyle
9d373e630a Update data properties to return ArrayBuffers
As a convenience, the setters will take typed Arrays (e.g. Uint8Array) since that is a common representation of data in JS (as they are "views" of ArrayBuffer objects).

The tests have been updated to reflect this new behavior.
2015-11-17 13:32:31 -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
Ari Lazier
638ee4d3b4 integrate latest object store changes 2015-11-13 18:20:27 -08:00
Thomas Goyne
7701ba173d Merge pull request #16 from realm/tg-close
Add Realm::close() and call it in RealmCache::clear()
2015-11-13 11:54:42 -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
e9ca54e169 Merge pull request #12 from realm/tg-core-0.94.4
Update for core 0.94.4
2015-11-05 09:44:08 -08:00
Thomas Goyne
0823a62df6 Merge pull request #13 from realm/tg-is-empty
Add ObjectStore::is_empty()
2015-11-05 09:35:48 -08:00
Thomas Goyne
62f59d9ae8 Merge pull request #15 from realm/tg-file-error-path
Include the path of the file which actually failed to open in exceptions
2015-11-05 09:35:36 -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
JP Simard
e1e9cd8cd7 Add ObjectStore::is_empty() 2015-11-04 15:31:08 -08:00
Thomas Goyne
52e7e6168b Update for core 0.94.4 2015-11-04 15:30:36 -08:00
Kristian Dupont
271432bd1c Merge pull request #11 from realm/kd-rename-delegate-to-bindingcontext
Rename RealmDelegate to BindingContext
2015-11-03 08:38:27 +01:00
Kristian Dupont
db36ca5b9c Remove Realm suffix 2015-11-03 08:37:54 +01:00
Kristian Dupont
70e1967782 Rename realm delegate in transact_log_handler as well 2015-10-29 13:16:36 +01:00
Kristian Dupont
4973827531 Rename RealmDelegate to RealmBindingContext 2015-10-29 10:42:56 +01:00
Ari Lazier
2e2beabc40 change the license before starting the beta 2015-10-27 14:15:21 -07:00
Ari Lazier
faa1297d3b support null for basic propety types 2015-10-27 12:13:57 -07:00
Ari Lazier
dca7e7d791 enable nullable propeties without a macro 2015-10-27 12:13:57 -07:00
Ari Lazier
ccdfaa8ae9 use typed exceptions 2015-10-27 09:39:52 -07:00
Scott Kyle
ff9b73ec2f Non-existent object getters shouldn't throw exceptions 2015-10-27 09:39:52 -07:00
Ari Lazier
ed193d8f5c make list members private 2015-10-26 13:32:29 -07:00
Ari Lazier
c9ef337552 make object members private 2015-10-26 13:24:27 -07:00
Ari Lazier
31819a5ee6 Merge commit '347145b4f1c40409c68af0ad61be15ee5f9d04f2' into al-os 2015-10-26 12:52:20 -07:00
Mark Rowe
347145b4f1 Merge pull request #8 from realm/mar-migrate-required-to-optional
Support migrating required columns to optional, preserving their contents
2015-10-21 14:40:44 -07:00
Mark Rowe
0b45772a0b Add a test showing our behavior when migrating from an optional column to a required column.
Optional values are not automatically migrated to required columns since it is a lossy process.

This test case revealed an issue where the number of objects can be lost if all properties of an
object were optional and are all being migrated to required. This happens because the migration
process removes the optional columns in a first pass, and recreates them as required in a second
pass. Since this results in all columns being removed, we lose track of how many objects were
stored. We avoid this by detecting the case where we are about to remove the last column and
inserting a placeholder column that we'll remove after inserting the new columns.
2015-10-20 17:52:25 -07:00
Mark Rowe
9f1702a10f Support migrating required columns to optional, preserving their contents.
Required columns are migrated to optional by creating a new nullable column,
copying the data from the required column to the optional column, then removing
the original required column.
2015-10-20 17:52:25 -07:00
Thomas Goyne
f5b790cf87 Merge pull request #6 from realm/tg-impl
Move things which are not part of the API to an impl directory/namespace
2015-10-20 09:59:10 -07:00
Ari Lazier
1fa7c018ea clean up per realm resources/threads 2015-10-19 14:25:35 -07:00
Ari Lazier
dace77579b store schema and prototypes on the realm object 2015-10-19 13:39:21 -07: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
Ari Lazier
8a2e24daac move property getters to object store code 2015-10-13 15:25:06 -07:00
Ari Lazier
06260bc3f0 move List class to its own file 2015-10-13 14:44:31 -07:00
Ari Lazier
286c652e42 Merge pull request #55 from realm/al-migrations
Minimal migration tests - use same path for all tests
2015-10-12 17:26:51 -07:00
Ari Lazier
b27b7941f0 pr fixes 2015-10-12 17:18:49 -07:00