ICommonConfiguration Interface

Summary

Common configuration methods, applicable for embedded, client and server use of db4o.

In Client/Server use it is good practice to configure the client and the server in exactly the same way.
graph BT Type["ICommonConfiguration"] class Type type-node Implementing0["CommonConfigurationImpl"]-.->Type click Implementing0 "/db4o-gpl-doc/output/api/Db4objects.Db4o.Internal.Config/CommonConfigurationImpl"

Syntax

public interface ICommonConfiguration

Remarks

Common configuration methods, applicable for embedded, client and server use of db4o.

In Client/Server use it is good practice to configure the client and the server in exactly the same way.

Properties

Name Value Summary
ActivationDepth int
sets the activation depth to the specified value. gets the configured activation depth.
AllowVersionUpdates bool
turns automatic database file format version updates on.
AutomaticShutDown bool
turns automatic shutdown of the engine on and off.
BTreeNodeSize int
configures the size of BTree nodes in indexes.
Callbacks bool
turns callback methods on and off.
CallConstructors bool
advises db4o to try instantiating objects with/without calling constructors.
DetectSchemaChanges bool
tuning feature: configures whether db4o checks all persistent classes upon system startup, for added or removed fields.
Diagnostic IDiagnosticConfiguration
returns the configuration interface for diagnostics.
Environment IEnvironmentConfiguration
ExceptionsOnNotStorable bool
configures whether Exceptions are to be thrown, if objects can not be stored.
InternStrings bool
configures db4o to call Intern() on strings upon retrieval.
MaxStackDepth int
MessageLevel int
sets the detail level of db4o messages.
OptimizeNativeQueries bool
If set to true, db4o will try to optimize native queries dynamically at query execution time, otherwise it will run native queries in unoptimized mode as SODA evaluations.
OutStream TextWriter
Assigns a System.IO.TextWriter where db4o is to print its event messages.

Messages are useful for debugging purposes and for learning to understand, how db4o works. The message level can be raised with Db4objects.Db4o.Config.IConfiguration.MessageLevel(System.Int32) to produce more detailed messages.

Use
outStream(System.out)
to print messages to the console.

In client-server environment this setting should be used on the same side where Db4objects.Db4o.Config.IConfiguration.MessageLevel(System.Int32) is used.

Queries IQueryConfiguration
returns the Query configuration interface.
StringEncoding IStringEncoding
configures the string encoding to be used.
TestConstructors bool
tuning feature: configures whether db4o should try to instantiate one instance of each persistent class on system startup.
UpdateDepth int
specifies the global updateDepth.
WeakReferenceCollectionInterval int
configures the timer for WeakReference collection.
WeakReferences bool
turns weak reference management on or off.

Methods

Name Value Summary
Add(IConfigurationItem) void
adds ConfigurationItems to be applied when an ObjectContainer or ObjectServer is opened.
AddAlias(IAlias) void
adds a new Alias for a class, namespace or package.
MarkTransient(string) void
allows to mark fields as transient with custom annotations/attributes.
NameProvider(INameProvider) void
Registers a Db4objects.Db4o.Config.INameProvider that assigns a custom name to the database to be used in System.Object.ToString .
ObjectClass(Object) IObjectClass
returns an Db4objects.Db4o.Config.IObjectClass object to configure the specified class.

The clazz parameter can be any of the following:
- a fully qualified classname as a String.
- a Class object.
- any other object to be used as a template.

ReflectWith(IReflector) void
configures the use of a specially designed reflection implementation.
RegisterTypeHandler(ITypeHandlerPredicate, ITypeHandler4) void
Allows registering special TypeHandlers for customized marshalling and customized comparisons.
RemoveAlias(IAlias) void
Removes an alias previously added with Db4objects.Db4o.Config.ICommonConfiguration.AddAlias(Db4objects.Db4o.Config.IAlias) .