Esempio n. 1
0
        public bool TryFind(SharedRealmHandle realmHandle, long?id, out ObjectHandle objectHandle)
        {
            NativeException nativeException;
            IntPtr          result;

            if (id.HasValue)
            {
                result = NativeMethods.object_for_int_primarykey(this, realmHandle, id.Value, out nativeException);
            }
            else
            {
                result = NativeMethods.object_for_null_primarykey(this, realmHandle, out nativeException);
            }

            nativeException.ThrowIfNecessary();
            if (result == IntPtr.Zero)
            {
                objectHandle = null;
                return(false);
            }

            objectHandle = new ObjectHandle(realmHandle, result);
            return(true);
        }
Esempio n. 2
0
        public bool TryFind(SharedRealmHandle realmHandle, string id, out ObjectHandle objectHandle)
        {
            NativeException nativeException;
            IntPtr          result;

            if (id == null)
            {
                result = NativeMethods.get_object_for_null_primarykey(this, realmHandle, out nativeException);
            }
            else
            {
                result = NativeMethods.get_object_for_string_primarykey(this, realmHandle, id, (IntPtr)id.Length, out nativeException);
            }

            nativeException.ThrowIfNecessary();
            if (result == IntPtr.Zero)
            {
                objectHandle = null;
                return(false);
            }

            objectHandle = new ObjectHandle(realmHandle, result);
            return(true);
        }
 public void Clear(SharedRealmHandle realmHandle)
 {
     NativeMethods.clear(this, realmHandle, out var nativeException);
     nativeException.ThrowIfNecessary();
 }
Esempio n. 4
0
 public static extern IntPtr get(LinkListHandle linklistHandle, SharedRealmHandle realmHandle, IntPtr link_ndx, out NativeException ex);
Esempio n. 5
0
 public static extern IntPtr add_empty_object(TableHandle tableHandle, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 6
0
 public static extern IntPtr object_for_null_primarykey(TableHandle handle, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 7
0
 public static extern void cancel_transaction(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 8
0
 public static extern IntPtr is_same_instance(SharedRealmHandle lhs, SharedRealmHandle rhs, out NativeException ex);
Esempio n. 9
0
        internal IntPtr Find(SharedRealmHandle realmHandle, string id)
        {
            if (id == null)
            {
                throw new ArgumentNullException(nameof(id));
            }

            NativeException nativeException;
            var result = NativeMethods.object_for_string_primarykey(this, realmHandle, id, (IntPtr)id.Length, out nativeException);
            nativeException.ThrowIfNecessary();
            return result;
        }
Esempio n. 10
0
 public static extern IntPtr resolve_query_reference(SharedRealmHandle sharedRealm, ThreadSafeReferenceHandle referenceHandle, out NativeException ex);
Esempio n. 11
0
 public IntPtr CreateResults(SharedRealmHandle sharedRealmHandle)
 {
     NativeException nativeException;
     var result = NativeMethods.create_results(this, sharedRealmHandle, out nativeException);
     nativeException.ThrowIfNecessary();
     return result;
 }
Esempio n. 12
0
 public IntPtr CreateSortedResults(SharedRealmHandle sharedRealmHandle, SortDescriptorBuilder sortDescriptorBuilder)
 {
     NativeException nativeException;
     var marshaledValues = sortDescriptorBuilder.Flatten();
     var result = NativeMethods.create_sorted_results(this, sharedRealmHandle, marshaledValues.Item2, (IntPtr)marshaledValues.Item2.Length, marshaledValues.Item1, out nativeException);
     nativeException.ThrowIfNecessary();
     return result;
 }
Esempio n. 13
0
 public IntPtr AddEmptyObject(SharedRealmHandle sharedRealm)
 {
     NativeException nativeException;
     var result = NativeMethods.add_empty_object(this, sharedRealm, out nativeException);
     nativeException.ThrowIfNecessary();
     return result;
 }
Esempio n. 14
0
 public void Clear(SharedRealmHandle realmHandle)
 {
     NativeException nativeException;
     NativeMethods.clear(this, realmHandle, out nativeException);
     nativeException.ThrowIfNecessary();
 }
Esempio n. 15
0
 public static extern void clear(ResultsHandle results, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 16
0
 public static extern IntPtr create_object_unique(SharedRealmHandle sharedRealm, TableHandle table, long key, [MarshalAs(UnmanagedType.I1)] bool has_value,
                                                  [MarshalAs(UnmanagedType.I1)] bool is_nullable,
                                                  [MarshalAs(UnmanagedType.I1)] bool update,
                                                  [MarshalAs(UnmanagedType.I1)] out bool is_new, out NativeException ex);
Esempio n. 17
0
        internal IntPtr Find(SharedRealmHandle realmHandle, long? id)
        {
            NativeException nativeException;
            IntPtr result;
            if (id.HasValue)
            {
                result = NativeMethods.object_for_int_primarykey(this, realmHandle, id.Value, out nativeException);
            }
            else
            {
                result = NativeMethods.object_for_null_primarykey(this, realmHandle, out nativeException);
            }

            nativeException.ThrowIfNecessary();
            return result;
        }
Esempio n. 18
0
 public IntPtr FindDirect(SharedRealmHandle sharedRealm, IntPtr? beginAtIndex = null)
 {
     NativeException nativeException;
     var result = NativeMethods.findDirect(this, beginAtIndex ?? IntPtr.Zero, sharedRealm, out nativeException);
     nativeException.ThrowIfNecessary();
     return result;
 }
Esempio n. 19
0
 public static extern IntPtr add_empty_object(TableHandle tableHandle, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 20
0
 public static extern void bind_to_managed_realm_handle(SharedRealmHandle sharedRealm, IntPtr managedRealmHandle, out NativeException ex);
Esempio n. 21
0
 public static extern IntPtr create_results(TableHandle handle, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 22
0
 public static extern IntPtr refresh(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 23
0
 public static extern IntPtr create_sorted_results(TableHandle handle, SharedRealmHandle sharedRealm,
         [MarshalAs(UnmanagedType.LPArray), In]SortDescriptorBuilder.Clause.Marshalable[] sortClauses, IntPtr clauseCount,
         [MarshalAs(UnmanagedType.LPArray), In]IntPtr[] flattenedColumnIndices,
         out NativeException ex);
Esempio n. 24
0
 public static extern IntPtr findDirect(QueryHandle queryHandle, IntPtr beginAtIndex, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 25
0
 public static extern IntPtr object_for_string_primarykey(TableHandle handle, SharedRealmHandle realmHandle,
     [MarshalAs(UnmanagedType.LPWStr)] string value, IntPtr valueLen, out NativeException ex);
Esempio n. 26
0
 public static extern IntPtr create_sorted_results(TableHandle handle, SharedRealmHandle sharedRealm,
                                                   [MarshalAs(UnmanagedType.LPArray), In] SortDescriptorBuilder.Clause.Marshalable[] sortClauses, IntPtr clauseCount,
                                                   [MarshalAs(UnmanagedType.LPArray), In] IntPtr[] flattenedColumnIndices,
                                                   out NativeException ex);
Esempio n. 27
0
 public static extern IntPtr object_for_null_primarykey(TableHandle handle, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 28
0
 public static extern IntPtr findDirect(QueryHandle queryHandle, IntPtr beginAtIndex, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 29
0
        internal override Realm CreateRealm(RealmSchema schema)
        {
            var srHandle = new SharedRealmHandle();

            var configuration = new Native.Configuration
            {
                Path = DatabasePath,
                read_only = IsReadOnly,
                delete_if_migration_needed = ShouldDeleteIfMigrationNeeded,
                schema_version = SchemaVersion
            };

            Migration migration = null;
            if (MigrationCallback != null)
            {
                migration = new Migration(this, schema);
                migration.PopulateConfiguration(ref configuration);
            }

            var srPtr = IntPtr.Zero;
            try
            {
                srPtr = srHandle.Open(configuration, schema, EncryptionKey);
            }
            catch (ManagedExceptionDuringMigrationException)
            {
                throw new AggregateException("Exception occurred in a Realm migration callback. See inner exception for more details.", migration?.MigrationException);
            }

            srHandle.SetHandle(srPtr);
            return new Realm(srHandle, this, schema);
        }
Esempio n. 30
0
 public static extern void clear(ResultsHandle results, SharedRealmHandle realmHandle, out NativeException ex);
Esempio n. 31
0
 public static extern void get_schema(SharedRealmHandle sharedRealm, IntPtr callback, out NativeException ex);
Esempio n. 32
0
 public static extern IntPtr create_object(SharedRealmHandle sharedRealm, TableHandle table, out NativeException ex);
Esempio n. 33
0
 public static extern IntPtr get_managed_state_handle(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 34
0
 public static extern IntPtr create_object_unique(SharedRealmHandle sharedRealm, TableHandle table,
                                                  [MarshalAs(UnmanagedType.LPWStr)] string value, IntPtr valueLen,
                                                  [MarshalAs(UnmanagedType.I1)] bool update,
                                                  [MarshalAs(UnmanagedType.I1)] out bool is_new, out NativeException ex);
Esempio n. 35
0
 public static extern IntPtr create_results(QueryHandle queryPtr, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 36
0
 public static extern void set_managed_state_handle(SharedRealmHandle sharedRealm, IntPtr managedStateHandle, out NativeException ex);
Esempio n. 37
0
 public bool IsSameInstance(SharedRealmHandle other)
 {
     NativeException nativeException;
     var result = NativeMethods.is_same_instance(this, other, out nativeException);
     nativeException.ThrowIfNecessary();
     return MarshalHelpers.IntPtrToBool(result);
 }
Esempio n. 38
0
 public static extern bool compact(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 39
0
 public static extern void bind_to_managed_realm_handle(SharedRealmHandle sharedRealm, IntPtr managedRealmHandle, out NativeException ex);
Esempio n. 40
0
 public static extern void write_copy(SharedRealmHandle sharedRealm, [MarshalAs(UnmanagedType.LPWStr)] string path, IntPtr path_len, byte[] encryptionKey, out NativeException ex);
Esempio n. 41
0
 public static extern void close_realm(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 42
0
 public static extern void close_realm(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 43
0
 public static extern void cancel_transaction(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 44
0
 public static extern IntPtr is_in_transaction(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 45
0
 public static extern IntPtr is_in_transaction(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 46
0
 public static extern IntPtr get_table(SharedRealmHandle sharedRealm, [MarshalAs(UnmanagedType.LPWStr)] string tableName, IntPtr tableNameLength, out NativeException ex);
Esempio n. 47
0
 public static extern IntPtr refresh(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 48
0
 public static extern UInt64 get_schema_version(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 49
0
 public static extern IntPtr get_table(SharedRealmHandle sharedRealm, [MarshalAs(UnmanagedType.LPWStr)]string tableName, IntPtr tableNameLength, out NativeException ex);
Esempio n. 50
0
 public static extern IntPtr create_results(QueryHandle queryPtr, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 51
0
 public static extern IntPtr is_same_instance(SharedRealmHandle lhs, SharedRealmHandle rhs, out NativeException ex);
Esempio n. 52
0
 public static extern IntPtr create_results(TableHandle handle, SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 53
0
 public static extern UInt64 get_schema_version(SharedRealmHandle sharedRealm, out NativeException ex);
Esempio n. 54
0
 public static extern IntPtr object_for_string_primarykey(TableHandle handle, SharedRealmHandle realmHandle,
                                                          [MarshalAs(UnmanagedType.LPWStr)] string value, IntPtr valueLen, out NativeException ex);
Esempio n. 55
0
 public static extern void remove_observed_object(SharedRealmHandle sharedRealm, IntPtr managedRealmObjectHandle, out NativeException ex);
Esempio n. 56
0
 public static extern IntPtr freeze(ListHandle handle, SharedRealmHandle frozen_realm, out NativeException ex);
Esempio n. 57
0
 public static extern bool compact(SharedRealmHandle sharedRealm, out NativeException ex);