logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class DatabaseDriverInspector

    Compares what is installed against what a manifest requires.

    Inheritance
    object
    DatabaseDriverInspector
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.StructuredPersistence.Infrastructure.Editor.Drivers
    Assembly: Serenity.UnityStructuredPersistence.Infrastructure.Editor.dll
    Syntax
    public static class DatabaseDriverInspector
    Remarks

    Takes the installed paths and the defined symbols as arguments instead of reading the project, so the comparison is assertable without a filesystem or an editor. Whoever calls it collects those two lists; that collection is the part that cannot be tested cheaply, and keeping it out of here is what leaves the rules testable.

    Detection is by file presence, not by resolving the type. Type resolution would be the stronger check but it cannot run: the provider assemblies only compile once the scripting define is set, and whether to set that define is exactly what this check exists to answer.

    Methods

    Inspect(DatabaseDriverManifest, IEnumerable<string>, IEnumerable<string>)

    Measures one backend's installation against its manifest.

    Declaration
    public static DriverInstallationReport Inspect(DatabaseDriverManifest manifest, IEnumerable<string> installedRelativePaths, IEnumerable<string> definedSymbols)
    Parameters
    Type Name Description
    DatabaseDriverManifest manifest

    What the backend requires.

    IEnumerable<string> installedRelativePaths

    Paths of the files found in the scanned folders, relative to each folder, in any separator style. Only the file names are matched — see the remarks on the class.

    IEnumerable<string> definedSymbols

    Scripting defines set for the build target being inspected.

    Returns
    Type Description
    DriverInstallationReport

    The report.

    InspectAll(IEnumerable<string>, IEnumerable<string>)

    Measures every shipped manifest against the same installation.

    Declaration
    public static IReadOnlyList<DriverInstallationReport> InspectAll(IEnumerable<string> installedRelativePaths, IEnumerable<string> definedSymbols)
    Parameters
    Type Name Description
    IEnumerable<string> installedRelativePaths
    IEnumerable<string> definedSymbols
    Returns
    Type Description
    IReadOnlyList<DriverInstallationReport>
    In this article
    © 2026 Serenity. All Rights Reserved