public ITransformerStoreModel AddOrGetTransformer(IContentTransformer transformer, IContentSource source)
        {
            ITransformerStoreModel currentTransformer = _transformers.Find(model => model.TransformerType == transformer.GetType().FullName&& model.SourceIdentity == source.Identity);

            if (currentTransformer != null)
            {
                return(currentTransformer);
            }

            _dbConnection.Execute($"INSERT INTO Transformers (Created, Name, TransformerType, SourceIdentity) VALUES ('{DateTime.Now:yyyy-MM-dd hh:mm:ss}', '{transformer.GetType().Assembly.GetName().Name}', '{transformer.GetType().FullName}', '{source.Identity}')");

            TransformerStoreModel transformerStoreModel = (TransformerStoreModel)GetTransformer(transformer, source);

            Directory.CreateDirectory(Path.Combine(_storeContentDirectoryName, transformerStoreModel.Id.ToString()));
            _transformers.Add(transformerStoreModel);
            return(transformerStoreModel);
        }
        private ITransformerStoreModel GetTransformer(IContentTransformer transformer, IContentSource source)
        {
            TransformerStoreModel currentTransformer = _transformers.FirstOrDefault(x => x.TransformerType == transformer.GetType().FullName&& x.SourceIdentity == source.Identity);

            return(currentTransformer ?? _dbConnection.QueryFirst <TransformerStoreModel>($"SELECT * FROM Transformers WHERE TransformerType='{transformer.GetType().FullName}' AND SourceIdentity='{source.Identity}'"));
        }