Пример #1
0
 /// <summary>
 /// Constructor
 /// </summary>
 public SyncSchema(AppOptions options)
 {
     _options     = options;
     _cache       = new SimpleFileCache();
     _srcDatabase = new MsDatabaseInstance(options.Source, _cache);
     _dstDatabase = new PgDatabaseInstance(options.Target, _cache);
 }
Пример #2
0
        private string GetDatabaseProperty(DatabaseOptions databaseOption, IDatabaseInstance database, string propertyName)
        {
            string databaseAttributeValue = null;

            switch (propertyName)
            {
            case DatabaseOptionConsts.HostAttributeName:
                databaseAttributeValue = database.InstanceEndpoint.Hostname;
                break;

            case DatabaseOptionConsts.PortAttributeName:
                databaseAttributeValue = databaseOption.Port;
                break;

            case DatabaseOptionConsts.UserAttributeName:
                databaseAttributeValue = databaseOption.UserName;
                break;

            case DatabaseOptionConsts.PasswordAttributeName:
                // Ignored, the database password secret is created during the creation of the database itself
                break;

            case DatabaseOptionConsts.DatabaseNameAttributeName:
                databaseAttributeValue = databaseOption.DatabaseName;
                break;

            default:
                Console.WriteLine($"[WARNING] The database secret property {propertyName} is not recognized and will be skipped");
                break;
            }

            return(databaseAttributeValue);
        }
 public SubSystemTestingInitializer(
     ILoggerFactory loggerFactory,
     IReadWriteSessionFactoryProvider readWriteSessionFactoryProvider,
     IDatabaseInstance instance)
     : base(loggerFactory.CreateLogger <InitialiserBase>(), new AddSubsysTestData(loggerFactory, readWriteSessionFactoryProvider))
 {
 }
            public void BeforeEach()
            {
                _database = Substitute.For <IDatabaseInstance>();
#pragma warning disable 618
                _ctrl = new DialogueController(_database);
#pragma warning restore 618
                _playback = Substitute.For <IDialoguePlayback>();
            }
        public void BeforeEach()
        {
            _definition    = CreateDefinitionStub(KEY, true);
            _definitionAlt = CreateDefinitionStub(KEY_ALT, true);

            _database = Substitute.For <IDatabaseInstance>();
            _monitor  = new GlobalBoolMonitorInternal(_database, new[] { _definition });
        }
        private void AddSecret(DatabaseOptions databaseOption, IDatabaseInstance database, KeyValuePair <string, string> databaseSecretKeyValuePair)
        {
            var databasePropertyValue = GetDatabaseProperty(databaseOption, database, databaseSecretKeyValuePair.Key);

            if (string.IsNullOrWhiteSpace(databasePropertyValue))
            {
                return;
            }
            var secret = AwsCdkHandler.CreateSecret(databaseSecretKeyValuePair.Value, databasePropertyValue);

            StackResources.Secrets.Add(databaseSecretKeyValuePair.Value, secret);
        }
        public bool OpenDatabase(String databasePath, String password)
        {
            CloseDatabase();
            bool result = false;

            _databasePath         = databasePath;
            ServerVersionFromFile = Utilities.RetrieveServerVersionFromFile(databasePath);
            switch (ServerVersionFromFile)
            {
            case ServerVersionNumber.VERSION_3_0:
                IDatabaseInstance = SqlServerCE3_1Database.CreateInstance(databasePath, password);
                break;

            case ServerVersionNumber.VERSION_3_5:
                IDatabaseInstance = SqlServerCE3_5Database.CreateInstance(databasePath, password);
                break;

            case ServerVersionNumber.VERSION_4_0:
                IDatabaseInstance = SqlServerCE4_0Database.CreateInstance(databasePath, password);
                break;

            default:
                break;
            }

            try
            {
                IDatabaseInstance.OpenConnection();
                if (IDatabaseInstance.ConnectionState == ConnectionState.Open)
                {
                    UpdateInfoSchemaTV();
                    result = true;
                }
                else
                {
                    CloseDatabase();
                }
            }
            catch (Exception exc)
            {
                Debug.WriteLine(exc.Message);
            }
            return(result);
        }
Пример #8
0
 public HomeController(IDatabaseInstance db)
 {
     _db = db;
 }
Пример #9
0
 public MovieService(IConfiguration configuration, IDatabaseInstance databaseInstance)
 {
     this.Db = new SqlConnection(configuration.GetConnectionString("DefaultConnection"));
     this.DatabaseInstance = databaseInstance;
 }
Пример #10
0
 public GlobalBoolMonitorInternal(IDatabaseInstance database, IKeyValueDefinition <bool>[] definitions)
 {
     _database    = database;
     _definitions = definitions;
 }
 public DialogueController(IDatabaseInstance localDatabase)
 {
     LocalDatabase = localDatabase;
 }
        private void GetDmsEndpointsResources(DatabaseOptions databaseOption, out double databasePort, out IDatabaseInstance databaseInstance, out ISecret databasePasswordSecret)
        {
            // Parse database port
            if (!double.TryParse(databaseOption.Port, out databasePort))
            {
                throw new ArgumentException($"The port {databaseOption.Port} of the database {databaseOption.Id} could not be converted to a number");
            }

            // Find database instance
            databaseInstance = LocateDatabase(databaseOption.Id,
                                              $"The database {databaseOption.Id} could not be found",
                                              "The database field \"Id\" cannot be empty");

            // Find database password secret
            if (StackResources.DynamicSecrets?.Any() != true)
            {
                throw new ArgumentException("No dynamic secrets have been created, so the Dms Endpoint cannot be created");
            }

            if (!databaseOption.Secrets.TryGetValue(DatabaseOptionConsts.PasswordAttributeName, out var databasePasswordSecretKey))
            {
                throw new ArgumentException("No secret for the database password has been created, so the Dms Endpoint cannot be created");
            }

            if (!StackResources.DynamicSecrets.TryGetValue(databasePasswordSecretKey, out databasePasswordSecret))
            {
                throw new ArgumentException($"The secret password {databasePasswordSecretKey} for the database {databaseOption.Id} was not found");
            }
        }