Exemplo n.º 1
0
        public static void SaveSpisInstanceSettings(string dbName, SpisInstanceSettings settings)
        {
            try
            {
                using (var stmDbContext = new StmDbContext())
                {
                    stmDbContext.init(dbName);

                    var current = stmDbContext.SpisInstanceSettings.FirstOrDefault();
                    if (current == null)
                    {
                        stmDbContext.SpisInstanceSettings.Add(settings);
                    }
                    else
                    {
                        current.ClientCertificate = settings.ClientCertificate;
                        current.Password          = settings.Password;
                        current.ServiceId         = settings.ServiceId;
                        current.ServiceName       = settings.ServiceName;
                        current.StmModuleUrl      = settings.StmModuleUrl;
                        current.IMO                   = settings.IMO;
                        current.MMSI                  = settings.MMSI;
                        current.ApiKey                = settings.ApiKey;
                        current.ApplicationId         = settings.ApplicationId;
                        current.UseHMACAuthentication = settings.UseHMACAuthentication;
                    }

                    stmDbContext.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Exemplo n.º 2
0
        public static SpisInstanceSettings GetSpisInstanceSettings(string dbName)
        {
            var result = new SpisInstanceSettings();

            try
            {
                var stmDbContext = new StmDbContext();
                stmDbContext.init(dbName);

                result = stmDbContext.SpisInstanceSettings.FirstOrDefault();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

            return(result);
        }
        public void SetupSpisInstanceSettings()
        {
            var instanceDbName       = "SMA002";
            var instanceName         = "SMA002";
            var instanceId           = "urn:mrn:stm:serviceinstance:sma:SMA002";
            var stmModuleUrl         = "";
            var password             = "******";
            var encruptionPassphrase = "A_vErry secret paSsw0rd#that is not easy to Re2MeMbeR!";
            var encryptedPassword    = Encryption.EncryptString(password, encruptionPassphrase);

            var dlg = new System.Windows.Forms.OpenFileDialog();

            dlg.Filter = "Certifikat | *.p12";

            if (dlg.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                _dbContext.init(instanceDbName);
                byte[] certBytes = File.ReadAllBytes(dlg.FileName);

                var settings = _dbContext.SpisInstanceSettings.FirstOrDefault();
                if (settings == null)
                {
                    settings                   = new SpisInstanceSettings();
                    settings.ServiceName       = instanceName;
                    settings.ServiceId         = instanceId;
                    settings.StmModuleUrl      = stmModuleUrl;
                    settings.ClientCertificate = certBytes;
                    settings.Password          = encryptedPassword;

                    _dbContext.SpisInstanceSettings.Add(settings);
                }
                else
                {
                    settings.ServiceName       = instanceName;
                    settings.ServiceId         = instanceId;
                    settings.StmModuleUrl      = stmModuleUrl;
                    settings.ClientCertificate = certBytes;
                    settings.Password          = encryptedPassword;
                }

                _dbContext.SaveChanges();
            }
        }