/// <summary></summary> public DummyLocalConnectedClient(int port) { IClientConfiguration config = Db4oClientServer.NewClientConfiguration(); config.Common.StringEncoding = StringEncodings.Utf8(); Client = Db4oClientServer.OpenClient(config, "127.0.0.1", port, User, Password); }
private void SetCommonConfiguration(ICommonConfiguration configuration, bool weakReferences) { ConfigGenerator.GetConfigFromAttributes(configuration, _entitityTypes. Select(kv => kv.Key).ToList()); configuration.ActivationDepth = 0; configuration.StringEncoding = StringEncodings.Unicode(); configuration.WeakReferences = weakReferences; configuration.WeakReferenceCollectionInterval = 1000; }
private static void ChangeStringEncoding() { // #example: Use the utf8 encoding IEmbeddedConfiguration configuration = Db4oEmbedded.NewConfiguration(); configuration.Common.StringEncoding = StringEncodings.Utf8(); // #end example IObjectContainer container = Db4oEmbedded.OpenFile(configuration, DatabaseFile); container.Close(); }
public const int ProductsDefaultActivationDepth = 0; //I want control activation depth manualy /// <summary> /// Returns IServerConfiguration for the Products database. /// You have to define this method in dbo, web.config section /// </summary> /// <returns></returns> public static IServerConfiguration GetProductsConfiguration() { var databaseConfig = Db4oClientServer.NewServerConfiguration(); ConfigGenerator.GetConfigFromAttributes(databaseConfig.Common, new Collection <Type> { typeof(Product), typeof(Category) }); databaseConfig.Common.ActivationDepth = ProductsDefaultActivationDepth; databaseConfig.Common.StringEncoding = StringEncodings.Unicode(); databaseConfig.Common.WeakReferences = false; databaseConfig.File.DisableCommitRecovery(); return(databaseConfig); }
private IEmbeddedConfiguration GetEmbeddedConfiguration() { var clientConfig = Db4oEmbedded.NewConfiguration(); ConfigGenerator.GetConfigFromAttributes(clientConfig.Common, _entitityTypes); clientConfig.Common.ActivationDepth = 0; clientConfig.Common.StringEncoding = StringEncodings.Unicode(); clientConfig.Common.WeakReferences = UseWeakReferencesInProcess; if (UseMemoryStorageInProcess) { clientConfig.File.Storage = new PagingMemoryStorage(); } return(clientConfig); }
// Just copied from the db4o settings used in Flex internal static void doConfig(Db4objects.Db4o.Config.IEmbeddedConfiguration config) { config.Common.StringEncoding = StringEncodings.Utf8(); config.Common.RegisterTypeHandler( new CustomFieldInfoTypeHandlerPredicate(), new CustomFieldInfoTypeHandler()); config.Common.RegisterTypeHandler( new ModelVersionNumberTypeHandlerPredicate(), new ModelVersionNumberTypeHandler()); config.Common.RegisterTypeHandler( new CmObjectSurrogateTypeHandlerPredicate(), CMOSTHandler); config.Common.Callbacks = false; config.Common.WeakReferences = false; config.Common.CallConstructors = false; config.Common.ActivationDepth = 2; config.Common.UpdateDepth = 2; config.Common.DetectSchemaChanges = true; config.Common.TestConstructors = false; config.File.BlockSize = 8; config.Common.BTreeNodeSize = 50; config.Common.StringEncoding = StringEncodings.Utf8(); config.Common.Queries.EvaluationMode(Db4objects.Db4o.Config.QueryEvaluationMode.Snapshot); var type = typeof(CmObjectSurrogate); config.Common.ObjectClass(type).CascadeOnDelete(true); config.Common.ObjectClass(type).UpdateDepth(2); config.Common.ObjectClass(type).MinimumActivationDepth(2); config.Common.ObjectClass(type).MaximumActivationDepth(2); type = typeof(CustomFieldInfo); config.Common.ObjectClass(type).CascadeOnDelete(true); config.Common.ObjectClass(type).UpdateDepth(2); config.Common.ObjectClass(type).MinimumActivationDepth(2); config.Common.ObjectClass(type).MaximumActivationDepth(2); type = typeof(ModelVersionNumber); config.Common.ObjectClass(type).CascadeOnDelete(true); config.Common.ObjectClass(type).UpdateDepth(2); config.Common.ObjectClass(type).MinimumActivationDepth(2); config.Common.ObjectClass(type).MaximumActivationDepth(2); }
protected override void StartRun() { string dbPath = Settings.Default.GetAppDataPath() + "xgobjects.db4o"; bool loadFromSqlite = false; if (!System.IO.File.Exists(dbPath) && System.IO.File.Exists(Settings.Default.GetAppDataPath() + "xgobjects.db")) { loadFromSqlite = true; } IEmbeddedConfiguration config = Db4oEmbedded.NewConfiguration(); config.Common.StringEncoding = StringEncodings.Utf8(); config.Common.Add(new TransparentActivationSupport()); config.Common.Add(new TransparentPersistenceSupport()); /*if (System.IO.File.Exists(dbPath)) * { * DefragmentConfig defragmentConfig = new DefragmentConfig(dbPath); * defragmentConfig.Db4oConfig(config); * Defragment.Defrag(defragmentConfig); * }*/ _db = Db4oEmbedded.OpenFile(config, dbPath); if (loadFromSqlite) { var sqliteConverter = new SqliteConverter(); sqliteConverter.Load(); _db.Store(sqliteConverter.Servers); _db.Store(sqliteConverter.Files); _db.Store(sqliteConverter.Searches); _db.Store(sqliteConverter.ApiKeys); _db.Commit(); } Load(); }
/// <exception cref="System.Exception"></exception> protected override void Configure(IConfiguration config) { config.StringEncoding(StringEncodings.Utf8()); }
/// <summary> /// /// </summary> /// <param name="sendFunc">int func(byte[],int offset, int size). send를 누를 때 buff를 보낼 sendFunction.</param> /// <param name="endian"></param> /// <param name="isStringWithNullEnd"></param> /// <param name="stringEncoding"></param> public void setEnv(SendFunc sendFunc, Endians endian = Endians.Big, bool isStringWithNullEnd = false, StringEncodings stringEncoding = StringEncodings.UTF8) { _endian = endian; _isStringWithNullEnd = isStringWithNullEnd; switch (stringEncoding) { case StringEncodings.Unicode: _strEncoding = Encoding.Unicode; break; case StringEncodings.UTF8: _strEncoding = Encoding.UTF8; break; case StringEncodings.UTF7: _strEncoding = Encoding.UTF7; break; case StringEncodings.UTF32: _strEncoding = Encoding.UTF32; break; case StringEncodings.ASCII: _strEncoding = Encoding.ASCII; break; } _sendFunc = sendFunc; initList(); }
public void AddStringSettings(StringEncodings encoding) { StringSettings.Encoding = encoding; }