示例#1
0
 public ClassicCoreSPI(PlatformModule platform, DataSourceModule dataSource, Logger msgLog, CoreAPIAvailabilityGuard availability, ThreadToStatementContextBridge threadToTransactionBridge)
 {
     this._platform     = platform;
     this._dataSource   = dataSource;
     this._msgLog       = msgLog;
     this._availability = availability;
     this._threadToTransactionBridge = threadToTransactionBridge;
 }
示例#2
0
 internal ProcedureGDSFactory(PlatformModule platform, DataSourceModule dataSource, CoreAPIAvailabilityGuard coreAPIAvailabilityGuard, TokenHolders tokenHolders, ThreadToStatementContextBridge bridge)
 {
     this._platform     = platform;
     this._dataSource   = dataSource;
     this._availability = coreAPIAvailabilityGuard;
     this._urlValidator = url => platform.UrlAccessRule.validate(platform.Config, url);
     this._tokenHolders = tokenHolders;
     this._bridge       = bridge;
 }
示例#3
0
 public ProcedureGDBFacadeSPI(DataSourceModule sourceModule, DependencyResolver resolver, CoreAPIAvailabilityGuard availability, ThrowingFunction <URL, URL, URLAccessValidationError> urlValidator, SecurityContext securityContext, ThreadToStatementContextBridge threadToTransactionBridge)
 {
     this._databaseLayout            = sourceModule.NeoStoreDataSource.DatabaseLayout;
     this._sourceModule              = sourceModule;
     this._resolver                  = resolver;
     this._availability              = availability;
     this._urlValidator              = urlValidator;
     this._securityContext           = securityContext;
     this._threadToTransactionBridge = threadToTransactionBridge;
 }
示例#4
0
        public DataSourceModule(string databaseName, PlatformModule platformModule, AbstractEditionModule editionModule, Procedures procedures, GraphDatabaseFacade graphDatabaseFacade)
        {
            platformModule.DiagnosticsManager.prependProvider(platformModule.Config);
            DatabaseEditionContext         editionContext = editionModule.CreateDatabaseContext(databaseName);
            ModularDatabaseCreationContext context        = new ModularDatabaseCreationContext(databaseName, platformModule, editionContext, procedures, graphDatabaseFacade);

            NeoStoreDataSource = new NeoStoreDataSource(context);

            this.CoreAPIAvailabilityGuardConflict = context.CoreAPIAvailabilityGuard;
            this.StoreId   = NeoStoreDataSource.getStoreId;
            this.KernelAPI = NeoStoreDataSource.getKernel;

            ProcedureGDSFactory gdsFactory = new ProcedureGDSFactory(platformModule, this, CoreAPIAvailabilityGuardConflict, context.TokenHolders, editionModule.ThreadToTransactionBridge);

            procedures.RegisterComponent(typeof(GraphDatabaseService), gdsFactory.apply, true);
        }