//public IEnumerable<UrlRedirect> All(Site site) //{ // return DataHelper.QueryList<UrlRedirect>(site, ModelExtensions.GetQueryView(ModelExtensions.UrlRedirectDataType), createModel); //} //public IEnumerable<UrlRedirect> All() //{ // throw new NotImplementedException(); //} //public UrlRedirect Get(UrlRedirect dummy) //{ // var bucketDocumentKey = ModelExtensions.GetBucketDocumentKey(ModelExtensions.UrlRedirectDataType, dummy.UUID); // return DataHelper.QueryByKey<UrlRedirect>(dummy.Site, bucketDocumentKey, createModel); //} //public void Add(UrlRedirect item) //{ // InsertOrUpdate(item, item); //} //private void InsertOrUpdate(UrlRedirect @new, UrlRedirect old) //{ // ((IPersistable)@new).OnSaving(); // DataHelper.StoreObject(@new, @new.UUID, ModelExtensions.UrlRedirectDataType); // ((IPersistable)@new).OnSaved(); //} //public void Update(UrlRedirect @new, UrlRedirect old) //{ // InsertOrUpdate(@new, old); //} //public void Remove(UrlRedirect item) //{ // DataHelper.DeleteItemByKey(item.Site, ModelExtensions.GetBucketDocumentKey(ModelExtensions.UrlRedirectDataType, item.UUID)); //} public void InitializeUrlRedirect(Site site, bool regenUUID = false) { IUrlRedirectProvider fileProvider = new Kooboo.CMS.Sites.Persistence.FileSystem.UrlRedirectProvider(); foreach (var item in fileProvider.All(site)) { if (item.Site == site) { var urlRedirect = fileProvider.Get(item); if (regenUUID) { urlRedirect.UUID = Kooboo.UniqueIdGenerator.GetInstance().GetBase32UniqueId(8); } this.Add(urlRedirect); } } }
public void Import(Site site, System.IO.Stream zipStream, bool @override) { var provider = new Kooboo.CMS.Sites.Persistence.FileSystem.UrlRedirectProvider(); provider.Import(site, zipStream, @override); var allItem = provider.All(site); if (!@override) { allItem = allItem.Where(it => null == Get(it)); } var dummy = allItem.ToList(); foreach (var item in dummy) { InsertOrUpdate(item, item); } }