public async Task ProcessAsync(IDatabaseWrapper database, ModelConfiguration model,
                                       CancellationToken cancellationToken = default)
        {
            var dataSource = GetDataSource(database, model.DataSource.Name);

            dataSource.Credential = await GetCredential(model, cancellationToken);
        }
        static DatabaseModifier()
        {
            dbWrapper = new SQLiteWrapper("SQLGenerator.sqlite");
            string query = "PRAGMA foreign_keys = ON";

            dbWrapper.ExecuteCommand(query);
        }
 public SearchRepository(IDatabaseWrapper dbWrapper, IContext context, IContactsRepository contactsRepository, IProposalsRepository proposalsRepository)
 {
     _dbWrapper           = dbWrapper;
     _context             = context;
     _contactsRepository  = contactsRepository;
     _proposalsRepository = proposalsRepository;
 }
示例#4
0
        public IntegrationTestsBase()
        {
            // Read from .env.test file, or just use the regular env if running in a docker container.
            _testConfig = new DefaultConfig();

            _databaseWrapper = new RelationalDatabaseWrapper(_testConfig.DATABASE_URL, new SimpleInMemoryCache(), _testConfig.ROOT_QUERIES_DIR, new StreamLogger(Console.OpenStandardOutput()));
        }
示例#5
0
        public ApiTestsBase()
        {
            _testConfig = new DefaultConfig();

            _databaseWrapper = new RelationalDatabaseWrapper(_testConfig.DATABASE_URL, new SimpleInMemoryCache(), _testConfig.ROOT_QUERIES_DIR, new StreamLogger(Console.OpenStandardOutput()));

            _container = new DefaultContainer(_testConfig, null, _databaseWrapper);
            // Set up mock data in the test database, in order to test flows correctness.
        }
示例#6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DataTypeRepository" /> class.
        /// </summary>
        /// <param name="databaseWrapper">The database wrapper.</param>
        /// <exception cref="ArgumentNullException">Thrown if <paramref name="databaseWrapper" /> is <c>null</c>.</exception>
        public DataTypeRepository(IDatabaseWrapper databaseWrapper)
        {
            if (databaseWrapper == null)
            {
                throw new ArgumentNullException(nameof(databaseWrapper));
            }

            _databaseWrapper = databaseWrapper;
            _definitionId    = new HashSet <Tuple <Guid, int> >();
        }
示例#7
0
        /// <summary>
        /// Initializes a new instance of the <see cref="ContentTypeRepository" /> class.
        /// </summary>
        /// <param name="databaseWrapper">The database wrapper.</param>
        /// <exception cref="ArgumentNullException">Thrown if <paramref name="databaseWrapper" /> is <code>null</code>.</exception>
        public ContentTypeRepository(IDatabaseWrapper databaseWrapper)
        {
            if (databaseWrapper == null)
            {
                throw new ArgumentNullException(nameof(databaseWrapper));
            }

            _databaseWrapper = databaseWrapper;
            _contentTypeId   = new HashSet <Tuple <Guid, int> >();
            _propertyTypeId  = new HashSet <Tuple <Guid, int> >();
        }
        protected ITableWrapper GetTable(IDatabaseWrapper database, string tableName)
        {
            var table = database.Model.Tables.Find(tableName);

            if (table == null)
            {
                throw new ConnectionException($"Could not find table {tableName}.");
            }

            Logger.Info($"Fetched table {tableName}.");

            return(table);
        }
        private IStructuredDataSourceWrapper GetDataSource(IDatabaseWrapper database, string dataSourceName)
        {
            var dataSource = database.Model.DataSources.Find(dataSourceName);

            if (dataSource == null)
            {
                throw new ConnectionException($"Could not find data source {dataSourceName}.");
            }

            _logger.Info($"Fetched data source {dataSourceName}.");

            return(dataSource);
        }
        private void InitializeDatabase(IDatabaseWrapper dbWrapper)
        {
            string subjectName = WindowsIdentity.GetCurrent().Name;
            string port        = HostAddress.Split(':')[2].Split('/')[0];
            string subjName    = WindowsIdentity.GetCurrent().Name.Replace('\\', '_').Replace('-', '_');

            ServiceName = subjName + port;

            sqliteWrapper = dbWrapper;
            sqliteWrapper.CreateDatabase("Connections" + port);
            sqliteWrapper.ConnectToDatabase();
            sqliteWrapper.CreateTable(ServiceName);
        }
示例#11
0
        /// <summary>
        /// Dependency injection container for all the system's entities
        /// </summary>
        /// <param name="config">Configuration provider, defaults to DefaultConfig.cs</param>
        /// <param name="cache">Cache wrapper, defaults to SimpleInMemoryCache</param>
        /// <param name="dbWrapper">DB Wrapper, especially useful for tests. Defauls to RelationalDatabaseWrapper</param>
        /// <param name="customersFacade">A facade to customers data. Defaults to CustomersDbManager</param>
        /// <param name="taxesFacade">A facade to taxes data. Defaults to TaxesDbManager</param>
        /// <param name="ordersFacade">A facade to orders data. Defaults to OrdersDbManager</param>
        public DefaultContainer(
            IConfig config                  = null,
            IKeyValueCache cache            = null,
            IDatabaseWrapper dbWrapper      = null,
            ICustomerFacade customersFacade = null,
            ITaxesFacade taxesFacade        = null,
            IOrdersFacade ordersFacade      = null)
        {
            Config = config ?? new DefaultConfig();
            Logger = new StreamLogger(Console.OpenStandardOutput());
            Cache  = cache ?? new SimpleInMemoryCache();

            DbWrapper = dbWrapper ?? new RelationalDatabaseWrapper(Config.DATABASE_URL, Cache, Config.ROOT_QUERIES_DIR, Logger);

            CustomersFacade = customersFacade ?? new CustomersDbManager(DbWrapper);
            TaxesFacade     = taxesFacade ?? new TaxesDbManager(DbWrapper);
            OrdersFacade    = ordersFacade ?? new OrdersDbManager(DbWrapper);
        }
示例#12
0
        /// <summary>
        /// Gets the name of the tags associated to an <see cref="IItem"/>.
        /// </summary>
        /// <param name="p_Item">The item that is being indexed.</param>
        /// <returns>A list of tag names.</returns>
        private object GetItemTagsNames(IItem p_Item)
        {
            s_Logger.TraceEntering("GetItemTagsName");
            Precondition.NotNull(p_Item, () => () => p_Item);
            s_Logger.Debug(p_Item.Uri.DataUri);

            s_Database = p_Item.Database;

            object tagsNames = null;
            IEnumerable <string> tagItemsIds = GetTagItemsIds(p_Item);

            if (tagItemsIds.Any())
            {
                tagsNames = GetTagItemsNames(tagItemsIds, p_Item.Language);
            }

            s_Logger.Debug("Value: " + tagsNames);
            s_Logger.TraceExiting("GetItemTagsName");
            return(tagsNames);
        }
        public ClientService(string hostAddress, IDatabaseWrapper dbWrapper)
        {
            NetTcpBinding raBinding = new NetTcpBinding();

            raBinding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows;
            string raAddress = "net.tcp://localhost:10002/RegistrationAuthorityService";
            //string raAddress = "net.tcp://10.1.212.108:10002/RegistrationAuthorityService";

            NetTcpBinding vaBinding = new NetTcpBinding();

            vaBinding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows;
            string vaAddress = "net.tcp://localhost:10003/ValidationAuthorityService";

            //string vaAddress = "net.tcp://10.1.212.108:10003/ValidationAuthorityService";
            vaProxy          = new VAProxy(vaAddress, vaBinding);
            raProxy          = new RAProxy(raAddress, raBinding);
            clientSessions   = new Dictionary <string, SessionData>();
            this.HostAddress = hostAddress;
            InitializeDatabase(dbWrapper);
            LoadMyCertificate();
        }
示例#14
0
        public IReport CreateReport(TypeOfReport typeOfReport, IDatabaseWrapper database)
        {
            IReportDistributor reportDistributor = new ReportDistributor();

            switch (typeOfReport)
            {
            case TypeOfReport.MemberReport:
                return(new Report(
                           new MemberDataGetter(database),
                           new MemberDataValidator(),
                           new MemberDataFormatter(),
                           reportDistributor));

            case TypeOfReport.ProviderReport:
                return(new Report(
                           new ProviderDataGetter(database),
                           new ProviderDataValidator(),
                           new ProviderDataFormatter(),
                           reportDistributor));

            default:
                throw new ApplicationException("Not a member or provider report");
            }
        }
 public void Dispose()
 {
     if (raProxy != null)
     {
         raProxy.Close();
     }
     if (vaProxy != null)
     {
         vaProxy.Close();
     }
     foreach (KeyValuePair <string, SessionData> connectedClient in clientSessions)
     {
         try
         {
             (connectedClient.Value.Proxy as ClientProxy).Close();
         }
         catch { }
     }
     if (sqliteWrapper != null)
     {
         sqliteWrapper.DropDatabase();
         sqliteWrapper = null;
     }
 }
示例#16
0
 public TaxesDbManager(IDatabaseWrapper database)
 {
     this.database = database;
 }
示例#17
0
 public MetaRepository(string connectionString)
 {
     databaseWrapper = new DatabaseWrapper(connectionString);
 }
示例#18
0
 public MetaRepository(IDatabaseWrapper databaseWrapper)
 {
     this.databaseWrapper = databaseWrapper;
 }
示例#19
0
 internal HandleOption(Type type, IDatabaseWrapper dbWrapper, IDBQueries dbQueries = null)
 {
     this.type      = type;
     this.dbQueries = dbQueries ?? new DBQueries(dbWrapper, TABLE_NAME);
 }
示例#20
0
 public ProviderDataGetter(IDatabaseWrapper database)
 {
     _database = database;
 }
 public ContactsRepository(IDatabaseWrapper dbWrapper, IContext context)
 {
     _dbWrapper = dbWrapper;
     _context   = context;
 }
示例#22
0
 private static GeonamesProvider GetObject(IDatabaseWrapper connection)
 {
     return(new GeonamesProvider(connection));
 }
示例#23
0
 public ProposalsRepository(IDatabaseWrapper dbWrapper, IContext context)
 {
     _dbWrapper = dbWrapper;
     _context   = context;
 }
示例#24
0
 public GeonamesProvider(IDatabaseWrapper connection)
 {
     _connection = connection;
 }
示例#25
0
 internal BaseQuery(IDatabaseWrapper dbWrapper)
 {
     this.dbWrapper = dbWrapper;
 }
示例#26
0
 public Manager(IDatabaseWrapper databaseWrapper, IExchangeRatesService openExchangeRatesService)
 {
     _databaseWrapper = databaseWrapper ?? ModelContainer.Instance.Resolve<IDatabaseWrapper>();
     _openExchangeRatesService = openExchangeRatesService ?? ModelContainer.Instance.Resolve<IExchangeRatesService>();
 }
示例#27
0
        public (bool created, string errorMessage) GenerateReport(TypeOfReport typeOfReport, IDatabaseWrapper databaseWrapper, IReportFactory factory, int id)
        {
            if (databaseWrapper is null)
            {
                throw new System.ArgumentNullException(nameof(databaseWrapper));
            }

            if (factory is null)
            {
                throw new System.ArgumentNullException(nameof(factory));
            }

            var report = factory.CreateReport(typeOfReport, databaseWrapper);

            return(report.Generate(id));
        }
示例#28
0
 public MetaRepository(IDatabaseWrapper databaseWrapper)
 {
     this.databaseWrapper = databaseWrapper;
 }
 public MemberDataGetter(IDatabaseWrapper database)
 {
     _database = database;
 }
示例#30
0
 public MetaRepository(string connectionString)
 {
     databaseWrapper = new DatabaseWrapper(connectionString);
 }
示例#31
0
 public DBQueries(IDatabaseWrapper dbWrapper, string tableName)
 {
     this.tableName = tableName;
     baseQuery      = new BaseQuery(dbWrapper);
 }
示例#32
0
 public OrdersDbManager(IDatabaseWrapper database)
 {
     _database = database;
 }
 public Task ProcessAsync(IDatabaseWrapper database, ModelConfiguration model,
                          CancellationToken cancellationToken = default)
 {
     return(Task.CompletedTask);
 }