Exemplo n.º 1
0
        private Vertica.Integration.Infrastructure.Configuration.Configuration Map(FileInfo configurationFile)
        {
            string description;
            string updatedBy;

            FileBasedConfigurationRepository.MetaFile metaFile = this.ReadMetaFile(configurationFile);
            Vertica.Integration.Infrastructure.Configuration.Configuration configuration = new Vertica.Integration.Infrastructure.Configuration.Configuration()
            {
                Id       = Path.GetFileNameWithoutExtension(configurationFile.Name),
                JsonData = File.ReadAllText(configurationFile.FullName),
                Created  = configurationFile.CreationTimeUtc,
                Updated  = configurationFile.LastWriteTimeUtc,
                Name     = (metaFile != null ? metaFile.Name : configurationFile.Name)
            };
            if (metaFile != null)
            {
                description = metaFile.Description;
            }
            else
            {
                description = null;
            }
            configuration.Description = description;
            if (metaFile != null)
            {
                updatedBy = metaFile.UpdatedBy;
            }
            else
            {
                updatedBy = null;
            }
            configuration.UpdatedBy = updatedBy;
            return(configuration);
        }
Exemplo n.º 2
0
 public MetaFile(Vertica.Integration.Infrastructure.Configuration.Configuration configuration = null)
 {
     if (configuration != null)
     {
         this.Name        = configuration.Name;
         this.Description = configuration.Description;
         this.UpdatedBy   = configuration.UpdatedBy;
     }
 }
Exemplo n.º 3
0
        public Vertica.Integration.Infrastructure.Configuration.Configuration Save(Vertica.Integration.Infrastructure.Configuration.Configuration configuration)
        {
            if (configuration == null)
            {
                throw new ArgumentNullException("configuration");
            }
            FileInfo fileInfo = this.ConfigurationFilePath(configuration.Id);

            File.WriteAllText(fileInfo.FullName, configuration.JsonData);
            File.WriteAllText(FileBasedConfigurationRepository.MetaFilePath(fileInfo).FullName, (new FileBasedConfigurationRepository.MetaFile(configuration)).ToString());
            return(this.Get(configuration.Id));
        }
Exemplo n.º 4
0
        public TConfiguration Get <TConfiguration>()
            where TConfiguration : class, new()
        {
            if (typeof(TConfiguration) == typeof(Vertica.Integration.Infrastructure.Configuration.Configuration))
            {
                throw new ArgumentException("Getting a Configuration of type Configuration is not allowed.");
            }
            Vertica.Integration.Infrastructure.Configuration.Configuration configuration = this._repository.Get(this.GetId <TConfiguration>(false));
            if (configuration != null)
            {
                return(JsonConvert.DeserializeObject <TConfiguration>(configuration.JsonData, this._serializerSettings));
            }
            TConfiguration tConfiguration = Activator.CreateInstance <TConfiguration>();

            this.Save <TConfiguration>(tConfiguration, "IntegrationService", false);
            return(tConfiguration);
        }
Exemplo n.º 5
0
 public Vertica.Integration.Infrastructure.Configuration.Configuration Save(Vertica.Integration.Infrastructure.Configuration.Configuration configuration)
 {
     if (configuration == null)
     {
         throw new ArgumentNullException("configuration");
     }
     configuration.Name        = configuration.Name.MaxLength(50);
     configuration.Description = configuration.Description.MaxLength(255);
     configuration.Updated     = Time.UtcNow;
     configuration.UpdatedBy   = configuration.UpdatedBy.MaxLength(50);
     using (IDbSession dbSession = this.OpenSession())
     {
         using (IDbTransaction dbTransaction = dbSession.BeginTransaction(null))
         {
             dbSession.Execute("\r\nIF NOT EXISTS (SELECT Id FROM Configuration WHERE (Id = @Id))\r\n\tBEGIN\r\n\t\tINSERT INTO Configuration (Id, Name, Description, JsonData, Created, Updated, UpdatedBy)\r\n\t\t\tVALUES (@Id, @Name, @Description, @JsonData, @Updated, @Updated, @UpdatedBy);\r\n\tEND\r\nELSE\r\n\tBEGIN\r\n\t\tUPDATE Configuration SET\r\n\t\t\tJsonData = @JsonData,\r\n\t\t\tUpdated = @Updated,\r\n            UpdatedBy = @UpdatedBy,\r\n            Name = @Name,\r\n\t\t\tDescription = @Description\r\n\t\tWHERE (Id = @Id)\r\n\tEND\r\n", configuration);
             dbTransaction.Commit();
         }
     }
     return(configuration);
 }
Exemplo n.º 6
0
 public ArchiveCreated Backup(string id)
 {
     if (string.IsNullOrWhiteSpace(id))
     {
         throw new ArgumentException("Value cannot be null or empty.", "id");
     }
     Vertica.Integration.Infrastructure.Configuration.Configuration configuration = this._repository.Get(id);
     if (configuration == null)
     {
         return(null);
     }
     return(this._archive.Archive(configuration.Name, (BeginArchive archive) =>
     {
         archive.Options.GroupedBy("Backup").ExpiresAfterMonths(1);
         archive.IncludeContent("data", configuration.JsonData, ".json");
         string newLine = Environment.NewLine;
         string[] str = new string[] { configuration.Id, configuration.Name, configuration.Description, null, null };
         str[3] = configuration.Updated.ToString();
         str[4] = configuration.UpdatedBy;
         archive.IncludeContent("meta", string.Join(newLine, str), null);
     }));
 }