private void SaveDocumentRepositoryType() { DocumentRepositoryType item = new DocumentRepositoryType(); item.Name = ItemName.Text; Configuration.GetInstance().DocumentRepositoryTypes.Add(item); DocumentRepositoryType.Save(item); }
public IDocumentProvider GetProvider(DocumentRepository repository) { IDocumentProvider retVal = null; App app = Configuration.GetInstance().App; if (this.Repositories.ContainsKey(repository.Name)) { //get cached data command provider retVal = this.Repositories[repository.Name]; } else { DocumentRepositoryType repositoryType = repository.GetRepositoryType(); string assemblyName = repositoryType.Assembly; string className = repositoryType.Class; if (!String.IsNullOrEmpty(assemblyName) && !String.IsNullOrEmpty(className)) { try { Assembly providerAssembly = Assembly.Load(assemblyName); if (providerAssembly != null) { Type type = providerAssembly.GetType(className, true, true); if (type != null) { ConstructorInfo constructor = type.GetConstructor(Type.EmptyTypes); retVal = constructor.Invoke(null) as IDocumentProvider; retVal.Initialize(repository.Settings); this.Repositories.Add(repository.Name, retVal); } } } catch { //silent error } } } if (retVal == null) { throw new Exception(String.Format("No valid document provider was found")); } return(retVal); }
public List <object> GetItems(string folder, string name) { List <object> retVal = new List <object>(); if (String.IsNullOrEmpty(name)) { retVal = new List <object>(Configuration.GetInstance().DocumentRepositoryTypes.Cast <object>()); } else { retVal.Add(DocumentRepositoryType.GetByName(name)); } return(retVal); }
public void Save(object configurationItem) { DocumentRepositoryType.Save((DocumentRepositoryType)configurationItem); }
public int GetCounts(string folder, string name) { return(DocumentRepositoryType.GetItemCount(name)); }
public void Load(XDocument doc, string folder) { DocumentRepositoryType.Load(doc); }