Ejemplo n.º 1
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            IFactoriesManager factoriesManager = new FactoriesManager();
            IDatabaseManager  databaseManager  = new DatabasesManager();

            ConfigureCustomServices(factoriesManager, databaseManager);

            services.AddSingleton(typeof(IFactoriesManager), factoriesManager);
            services.AddSingleton(typeof(IDatabaseManager), databaseManager);

            services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(
                options =>
            {
                options.RequireHttpsMetadata      = false;
                options.TokenValidationParameters = new TokenValidationParameters()
                {
                    ValidateIssuer    = true,
                    ValidIssuer       = AuthOptions.ISSUER,
                    ValidateAudience  = true,
                    ValidAudience     = AuthOptions.AUDIENCE,
                    ValidateLifetime  = true,
                    LifetimeValidator = AuthOptions.GetLifeTimeValidationDel(),

                    IssuerSigningKey         = AuthOptions.GetSymmetricSecurityKey(),
                    ValidateIssuerSigningKey = true
                };
            });

            services.AddMvc(options => options.EnableEndpointRouting = false)
            .SetCompatibilityVersion(CompatibilityVersion.Version_3_0);

            services.AddControllers();
        }
Ejemplo n.º 2
0
        public void OpenDatabasesManager()
        {
            DatabasesManager dm = new DatabasesManager(mainWindow);

            Log.Information("Open db manager");
            dm.Run();
            dm.Destroy();
        }
Ejemplo n.º 3
0
        public void OpenDatabasesManager(IDataBaseManager manager)
        {
            DatabasesManager dm = new DatabasesManager(manager);

            dm.TransientFor = mainWindow as Gtk.Window;
            dm.Run();
            dm.Destroy();
        }
Ejemplo n.º 4
0
        public string GetDatabaseName(string fileName)
        {
            int    i      = 0;
            string name   = System.IO.Path.GetFileNameWithoutExtension(fileName);
            string dbname = name;

            while (DatabasesManager.Contains(dbname))
            {
                dbname = name + i;
            }
            return(dbname);
        }
Ejemplo n.º 5
0
        public static void LoadDatabases()
        {
            var databasesFile = DatabasesFileName;

            if (File.Exists(databasesFile))
            {
                var document = new XmlDocument();
                document.Load(databasesFile);
                foreach (XmlNode node in document.DocumentElement.ChildNodes)
                {
                    var providerName = node.Name;
                    var name         = (node.Attributes["Name"] != null) ? node.Attributes["Name"].Value : null;
                    var provider     = DbProvider.GetProvider(providerName);
                    if (provider != null && name != null)
                    {
                        string connectionString = node.InnerText;
                        if (!DatabasesManager.Contains(name))
                        {
                            var database = provider.CreateDatabase(name, connectionString);
                            DatabasesManager.Add(database);
                        }
                    }
                }
                DatabasesManager.IsCollectionDirty = false;
            }
            if (DatabasesManager.Databases.Count == 0)
            {
                var worldDbFile = new FileInfo(Path.Combine(GetDataDirectory(), "World.db"));
                if (ApplicationDeployment.IsNetworkDeployed)
                {
                    if (!worldDbFile.Exists)
                    {
                        var deployWorldDb = new FileInfo(Path.Combine(Application.StartupPath, "World.db"));
                        if (deployWorldDb.Exists)
                        {
                            deployWorldDb.CopyTo(worldDbFile.FullName);
                        }
                    }
                }
                if (worldDbFile.Exists)
                {
                    var sqliteProvider          = DbProvider.GetProvider("SQLite");
                    var connectionStringBuilder = sqliteProvider.CreateConnectionStringBuilder();
                    connectionStringBuilder["Data Source"]     = worldDbFile.FullName;
                    connectionStringBuilder["Fail If Missing"] = true;
                    var worldDb = sqliteProvider.CreateDatabase("World", connectionStringBuilder.ToString());
                    DatabasesManager.Add(worldDb);
                }
            }
        }
Ejemplo n.º 6
0
        public void ConfigureServices(IServiceCollection services)
        {
            IFactoriesManager factoriesManager = new FactoriesManager();
            IDatabaseManager  databaseManager  = new DatabasesManager();

            ConfigureCustomServices(factoriesManager, databaseManager);

            services.AddSingleton(typeof(IFactoriesManager), factoriesManager);
            services.AddSingleton(typeof(IDatabaseManager), databaseManager);

            services.AddMvc(options =>
            {
                options.EnableEndpointRouting = false;
            });

            services.SetAuthentication();
            services.SetMvc();
        }
Ejemplo n.º 7
0
        public void ConfigureServices(IServiceCollection services)
        {
            services.SetAuthentication();
            services.SetMvc();

            IFactoriesManager factoriesManager = new FactoriesManager();
            IDatabaseManager  databaseManager  = new DatabasesManager();

            ConfigureCustomServices(factoriesManager, databaseManager);

            services.AddSingleton(typeof(IFactoriesManager), factoriesManager);
            services.AddSingleton(typeof(IDatabaseManager), databaseManager);

            DefferedTasksManager.Initialize(factoriesManager);
            DefferedTasksManager.Start();

            ReadOtherApisConfigFile("./configs/other_api.json").GetAwaiter().GetResult();
        }
Ejemplo n.º 8
0
        private void removeDatabaseMenuItem_Click(object sender, EventArgs e)
        {
            DatabaseNode node = treeView.SelectedNode as DatabaseNode;

            if (node != null)
            {
                while (node.Database.IsConnected)
                {
                    node.Database.Disconnect();
                }
                DatabasesManager.Remove(node.Database);
                if (node.Parent == null)
                {
                    treeView.Nodes.Remove(node);
                }
                else
                {
                    node.Parent.Nodes.Remove(node);
                }
            }
        }
Ejemplo n.º 9
0
        private void nameTextBox_Validating(object sender, CancelEventArgs e)
        {
            string name = nameTextBox.Text.Trim();

            if (String.IsNullOrEmpty(name))
            {
                errorProvider.SetError(nameTextBox, "Please specify a name");
                e.Cancel = true;
            }
            else if (!nameValidator.IsMatch(name))
            {
                errorProvider.SetError(nameTextBox, "Invalid identifier name");
                e.Cancel = true;
            }
            else if (!isUpdate && DatabasesManager.Contains(name))
            {
                errorProvider.SetError(nameTextBox, "It already exists a database with the name: " + name);
                e.Cancel = true;
            }
            else
            {
                errorProvider.Clear();
            }
        }
Ejemplo n.º 10
0
 private void SortDatabases(object sender, EventArgs e)
 {
     DatabasesManager.Sort();
     this.LoadDatabases(false);
 }
Ejemplo n.º 11
0
 private void AddNewDatabase(Database database)
 {
     treeView.Nodes.Add(CreateDatabaseNode(database));
     DatabasesManager.Add(database);
 }