11/*
2- * Copyright 2022 ObjectBox Ltd. All rights reserved.
2+ * Copyright 2023 ObjectBox Ltd. All rights reserved.
33 *
44 * Licensed under the Apache License, Version 2.0 (the "License");
55 * you may not use this file except in compliance with the License.
1818
1919package io .objectbox .model ;
2020
21- import java .nio .*;
22- import java .lang .*;
23- import java .util .*;
24- import io .objectbox .flatbuffers .*;
21+ import io .objectbox .flatbuffers .BaseVector ;
22+ import io .objectbox .flatbuffers .BooleanVector ;
23+ import io .objectbox .flatbuffers .ByteVector ;
24+ import io .objectbox .flatbuffers .Constants ;
25+ import io .objectbox .flatbuffers .DoubleVector ;
26+ import io .objectbox .flatbuffers .FlatBufferBuilder ;
27+ import io .objectbox .flatbuffers .FloatVector ;
28+ import io .objectbox .flatbuffers .IntVector ;
29+ import io .objectbox .flatbuffers .LongVector ;
30+ import io .objectbox .flatbuffers .ShortVector ;
31+ import io .objectbox .flatbuffers .StringVector ;
32+ import io .objectbox .flatbuffers .Struct ;
33+ import io .objectbox .flatbuffers .Table ;
34+ import io .objectbox .flatbuffers .UnionVector ;
35+ import java .nio .ByteBuffer ;
36+ import java .nio .ByteOrder ;
2537
2638/**
2739 * Options to open a store with. Set only the values you want; defaults are used otherwise.
3143 */
3244@ SuppressWarnings ("unused" )
3345public final class FlatStoreOptions extends Table {
34- public static void ValidateVersion () { Constants .FLATBUFFERS_2_0_8 (); }
46+ public static void ValidateVersion () { Constants .FLATBUFFERS_23_5_26 (); }
3547 public static FlatStoreOptions getRootAsFlatStoreOptions (ByteBuffer _bb ) { return getRootAsFlatStoreOptions (_bb , new FlatStoreOptions ()); }
3648 public static FlatStoreOptions getRootAsFlatStoreOptions (ByteBuffer _bb , FlatStoreOptions obj ) { _bb .order (ByteOrder .LITTLE_ENDIAN ); return (obj .__assign (_bb .getInt (_bb .position ()) + _bb .position (), _bb )); }
3749 public void __init (int _i , ByteBuffer _bb ) { __reset (_i , _bb ); }
@@ -85,7 +97,7 @@ public final class FlatStoreOptions extends Table {
8597 * OSes, file systems, or hardware.
8698 * Note: ObjectBox builds upon ACID storage, which already has strong consistency mechanisms in place.
8799 */
88- public int validateOnOpen () { int o = __offset (14 ); return o != 0 ? bb .getShort (o + bb_pos ) & 0xFFFF : 0 ; }
100+ public int validateOnOpenPages () { int o = __offset (14 ); return o != 0 ? bb .getShort (o + bb_pos ) & 0xFFFF : 0 ; }
89101 /**
90102 * To fine-tune database validation, you can specify a limit on how much data is looked at.
91103 * This is measured in "pages" with a page typically holding 4K.
@@ -143,14 +155,19 @@ public final class FlatStoreOptions extends Table {
143155 * Max data and DB sizes can be combined; data size must be below the DB size.
144156 */
145157 public long maxDataSizeInKbyte () { int o = __offset (32 ); return o != 0 ? bb .getLong (o + bb_pos ) : 0L ; }
158+ /**
159+ * When a database is opened, ObjectBox can perform additional consistency checks on its database structure.
160+ * This enum is used to enable validation checks on a key/value level.
161+ */
162+ public int validateOnOpenKv () { int o = __offset (34 ); return o != 0 ? bb .getShort (o + bb_pos ) & 0xFFFF : 0 ; }
146163
147164 public static int createFlatStoreOptions (FlatBufferBuilder builder ,
148165 int directoryPathOffset ,
149166 int modelBytesOffset ,
150167 long maxDbSizeInKbyte ,
151168 long fileMode ,
152169 long maxReaders ,
153- int validateOnOpen ,
170+ int validateOnOpenPages ,
154171 long validateOnOpenPageLimit ,
155172 int putPaddingMode ,
156173 boolean skipReadSchema ,
@@ -159,8 +176,9 @@ public static int createFlatStoreOptions(FlatBufferBuilder builder,
159176 boolean readOnly ,
160177 long debugFlags ,
161178 boolean noReaderThreadLocals ,
162- long maxDataSizeInKbyte ) {
163- builder .startTable (15 );
179+ long maxDataSizeInKbyte ,
180+ int validateOnOpenKv ) {
181+ builder .startTable (16 );
164182 FlatStoreOptions .addMaxDataSizeInKbyte (builder , maxDataSizeInKbyte );
165183 FlatStoreOptions .addValidateOnOpenPageLimit (builder , validateOnOpenPageLimit );
166184 FlatStoreOptions .addMaxDbSizeInKbyte (builder , maxDbSizeInKbyte );
@@ -169,8 +187,9 @@ public static int createFlatStoreOptions(FlatBufferBuilder builder,
169187 FlatStoreOptions .addFileMode (builder , fileMode );
170188 FlatStoreOptions .addModelBytes (builder , modelBytesOffset );
171189 FlatStoreOptions .addDirectoryPath (builder , directoryPathOffset );
190+ FlatStoreOptions .addValidateOnOpenKv (builder , validateOnOpenKv );
172191 FlatStoreOptions .addPutPaddingMode (builder , putPaddingMode );
173- FlatStoreOptions .addValidateOnOpen (builder , validateOnOpen );
192+ FlatStoreOptions .addValidateOnOpenPages (builder , validateOnOpenPages );
174193 FlatStoreOptions .addNoReaderThreadLocals (builder , noReaderThreadLocals );
175194 FlatStoreOptions .addReadOnly (builder , readOnly );
176195 FlatStoreOptions .addUsePreviousCommitOnValidationFailure (builder , usePreviousCommitOnValidationFailure );
@@ -179,7 +198,7 @@ public static int createFlatStoreOptions(FlatBufferBuilder builder,
179198 return FlatStoreOptions .endFlatStoreOptions (builder );
180199 }
181200
182- public static void startFlatStoreOptions (FlatBufferBuilder builder ) { builder .startTable (15 ); }
201+ public static void startFlatStoreOptions (FlatBufferBuilder builder ) { builder .startTable (16 ); }
183202 public static void addDirectoryPath (FlatBufferBuilder builder , int directoryPathOffset ) { builder .addOffset (0 , directoryPathOffset , 0 ); }
184203 public static void addModelBytes (FlatBufferBuilder builder , int modelBytesOffset ) { builder .addOffset (1 , modelBytesOffset , 0 ); }
185204 public static int createModelBytesVector (FlatBufferBuilder builder , byte [] data ) { return builder .createByteVector (data ); }
@@ -188,7 +207,7 @@ public static int createFlatStoreOptions(FlatBufferBuilder builder,
188207 public static void addMaxDbSizeInKbyte (FlatBufferBuilder builder , long maxDbSizeInKbyte ) { builder .addLong (2 , maxDbSizeInKbyte , 0L ); }
189208 public static void addFileMode (FlatBufferBuilder builder , long fileMode ) { builder .addInt (3 , (int ) fileMode , (int ) 0L ); }
190209 public static void addMaxReaders (FlatBufferBuilder builder , long maxReaders ) { builder .addInt (4 , (int ) maxReaders , (int ) 0L ); }
191- public static void addValidateOnOpen (FlatBufferBuilder builder , int validateOnOpen ) { builder .addShort (5 , (short ) validateOnOpen , (short ) 0 ); }
210+ public static void addValidateOnOpenPages (FlatBufferBuilder builder , int validateOnOpenPages ) { builder .addShort (5 , (short ) validateOnOpenPages , (short ) 0 ); }
192211 public static void addValidateOnOpenPageLimit (FlatBufferBuilder builder , long validateOnOpenPageLimit ) { builder .addLong (6 , validateOnOpenPageLimit , 0L ); }
193212 public static void addPutPaddingMode (FlatBufferBuilder builder , int putPaddingMode ) { builder .addShort (7 , (short ) putPaddingMode , (short ) 0 ); }
194213 public static void addSkipReadSchema (FlatBufferBuilder builder , boolean skipReadSchema ) { builder .addBoolean (8 , skipReadSchema , false ); }
@@ -198,6 +217,7 @@ public static int createFlatStoreOptions(FlatBufferBuilder builder,
198217 public static void addDebugFlags (FlatBufferBuilder builder , long debugFlags ) { builder .addInt (12 , (int ) debugFlags , (int ) 0L ); }
199218 public static void addNoReaderThreadLocals (FlatBufferBuilder builder , boolean noReaderThreadLocals ) { builder .addBoolean (13 , noReaderThreadLocals , false ); }
200219 public static void addMaxDataSizeInKbyte (FlatBufferBuilder builder , long maxDataSizeInKbyte ) { builder .addLong (14 , maxDataSizeInKbyte , 0L ); }
220+ public static void addValidateOnOpenKv (FlatBufferBuilder builder , int validateOnOpenKv ) { builder .addShort (15 , (short ) validateOnOpenKv , (short ) 0 ); }
201221 public static int endFlatStoreOptions (FlatBufferBuilder builder ) {
202222 int o = builder .endTable ();
203223 return o ;
0 commit comments