Skip to content

Commit

Permalink
Removed page events
Browse files Browse the repository at this point in the history
  • Loading branch information
stefanforsberg committed Aug 6, 2013
1 parent 8dbc548 commit b29a71f
Showing 1 changed file with 15 additions and 147 deletions.
162 changes: 15 additions & 147 deletions src/WhiteMagic.Tests/InMemoryContentRepository.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
using EPiServer.Security;
using EPiServer.SpecializedProperties;
using EPiServer.Web;
using StructureMap;

namespace WhiteMagic.Tests
{
Expand Down Expand Up @@ -137,27 +136,16 @@ public void DeleteChildren(ContentReference contentLink, bool forceDelete, Acces

public void Delete(ContentReference pageLink, bool forceDelete, AccessLevel access)
{
PageEventArgs args = new PageEventArgs(pageLink);
RaisePageEvent(DeletingPage, args);
RaisePageEvent(DeletedPage, args);

throw new NotImplementedException();
}

public void DeleteLanguageBranch(ContentReference pageLink, string languageBranch, AccessLevel access)
{
PageEventArgs args = new PageEventArgs(pageLink);
RaisePageEvent(DeletingPageLanguage, args);
RaisePageEvent(DeletedPageLanguage, args);

throw new NotImplementedException();
}

public void Move(ContentReference pageLink, ContentReference destinationLink, AccessLevel requiredSourceAccess, AccessLevel requiredDestinationAccess)
{
PageEventArgs pageArgs = new PageEventArgs(pageLink, destinationLink);
RaisePageEvent(MovingPage, pageArgs);

var page = GetPage(pageLink.ToPageReference()).CreateWritableClone();

_structure[page.ParentLink].Remove(pageLink.ToPageReference());
Expand All @@ -173,8 +161,6 @@ public void Move(ContentReference pageLink, ContentReference destinationLink, Ac
{
_structure[destinationLink.ToPageReference()].Add(page.PageLink);
}

RaisePageEvent(MovedPage, pageArgs); ;
}

public void MoveToWastebasket(ContentReference contentLink, string deletedBy)
Expand Down Expand Up @@ -206,8 +192,6 @@ private PageDataCollection GetChildren(PageReference pageLink, int startIndex, i
ChildrenEventArgs args = new ChildrenEventArgs(pageLink, children);
try
{

RaiseChildrenEvent(LoadingChildren, args);
List<PageReference> childrenRefs;
if (_structure.TryGetValue(pageLink, out childrenRefs))
{
Expand All @@ -219,12 +203,9 @@ private PageDataCollection GetChildren(PageReference pageLink, int startIndex, i
}
catch
{
RaiseChildrenEvent(FailedLoadingChildren, args);
throw;

}

RaiseChildrenEvent(LoadedChildren, args);
RaiseChildrenEvent(FinishedLoadingChildren, args);

return new PageDataCollection(children);
}

Expand All @@ -236,52 +217,31 @@ private PageData GetDefaultPageData(PageReference parentPageLink, int pageTypeID
public TPageData GetDefaultPageData<TPageData>(PageReference parentPageLink)
where TPageData : IContentData
{
PageEventArgs args = new PageEventArgs(parentPageLink);
RaisePageEvent(LoadingDefaultPageData, args);

var emptyPage = ConstructContentData<TPageData>(String.Empty, parentPageLink);

RaisePageEvent(LoadedDefaultPageData, new PageEventArgs(emptyPage as PageData));

return emptyPage;
return ConstructContentData<TPageData>(String.Empty, parentPageLink);
}

private PageDataCollection GetLanguageBranches(PageReference pageLink)
{
PageDataCollection languages = new PageDataCollection();
var languages = new PageDataCollection();
languages.Add(GetPage(pageLink));
return languages;
}

private PageData GetPage(PageReference pageLink, ILanguageSelector selector)
{
RaisePageEvent(LoadingPage, new PageEventArgs(pageLink));

PageData page = null;
try
List<PageData> pages;
if (!_pages.TryGetValue(pageLink, out pages))
{
List<PageData> pages;
if (!_pages.TryGetValue(pageLink, out pages))
{
throw new PageNotFoundException(pageLink);
}
page = pages.Last();
LanguageSelector ls = selector as LanguageSelector;
if (ls != null && !String.IsNullOrEmpty(ls.LanguageBranch))
{
page = pages.Find(p => p.LanguageBranch == ls.LanguageBranch);
}
throw new PageNotFoundException(pageLink);
}
catch
page = pages.Last();
LanguageSelector ls = selector as LanguageSelector;
if (ls != null && !String.IsNullOrEmpty(ls.LanguageBranch))
{
RaisePageEvent(FailedLoadingPage, new PageEventArgs(pageLink));
throw;
page = pages.Find(p => p.LanguageBranch == ls.LanguageBranch);
}

PageEventArgs pageArgs = new PageEventArgs(page);
RaisePageEvent(LoadedPage, pageArgs);
RaisePageEvent(FinishedLoadingPage, pageArgs);


return page;
}

Expand All @@ -305,61 +265,38 @@ public PageReference Save(PageData page, SaveAction action, AccessLevel access)
page.PageGuid = Guid.NewGuid();
}

PageEventArgs pageArgs = new PageEventArgs(page);
RaisePageEvent(SavingPage, pageArgs);

if (!_pages.ContainsKey(page.PageLink))
{
RaisePageEvent(CreatingPage, pageArgs);
}


if ((action & SaveAction.CheckIn) == SaveAction.CheckIn)
{
RaisePageEvent(CheckingInPage, pageArgs);

page["PagePendingPublish"] = true;

RaisePageEvent(CheckedInPage, pageArgs);
}

if ((action & SaveAction.Publish) == SaveAction.Publish)
{
RaisePageEvent(PublishingPage, pageArgs);

page["PagePendingPublish"] = false;
page["PageWorkStatus"] = VersionStatus.Published;
page.Changed = DateTime.Now;

RaisePageEvent(PublishedPage, pageArgs);
}

if ((action & SaveAction.ForceCurrentVersion) == SaveAction.ForceCurrentVersion)
{
RaisePageEvent(PublishingPage, pageArgs);

page["PagePendingPublish"] = false;
page["PageWorkStatus"] = VersionStatus.Published;
page.Changed = DateTime.Now;

RaisePageEvent(PublishedPage, pageArgs);
}

if ((action & SaveAction.ForceNewVersion) == SaveAction.ForceNewVersion)
{
RaisePageEvent(PublishingPage, pageArgs);

page["PagePendingPublish"] = false;
page["PageWorkStatus"] = VersionStatus.Published;
page.Changed = DateTime.Now;

RaisePageEvent(PublishedPage, pageArgs);
}

try
{
if (String.IsNullOrEmpty(page.LinkURL))
{
page.LinkURL = "/templates/Page.aspx?id=" + page.PageLink.ToString();
page.LinkURL = "/templates/Page.aspx?id=" + page.PageLink;
}
}
catch
Expand All @@ -370,12 +307,10 @@ public PageReference Save(PageData page, SaveAction action, AccessLevel access)
if (!_pages.ContainsKey(page.PageLink))
{
_pages[page.PageLink] = new List<PageData>();
RaisePageEvent(CreatedPage, pageArgs);
}

_pages[page.PageLink].Add(page);

RaisePageEvent(SavedPage, pageArgs);

if (!PageReference.IsNullOrEmpty(page.ParentLink))
{
Expand Down Expand Up @@ -407,22 +342,6 @@ private PageData GetPage(PageReference pageLink)
return pages.Last().Copy();
}

private void RaisePageEvent(PageEventHandler pageEvent, PageEventArgs e)
{
if (pageEvent != null)
{
pageEvent(this, e);
}
}

private void RaiseChildrenEvent(ChildrenEventHandler childrenEvent, ChildrenEventArgs e)
{
if (childrenEvent != null)
{
childrenEvent(this, e);
}
}

private TPageData ConstructContentData<TPageData>(string pageName, PageReference parentLink)
where TPageData : IContentData
{
Expand Down Expand Up @@ -497,61 +416,10 @@ private void InitBlocks(object page)
}
}

#region Events
public event PageEventHandler LoadingPage;

public event PageEventHandler LoadedPage;

public event PageEventHandler FinishedLoadingPage;

public event PageEventHandler FailedLoadingPage;

public event PageEventHandler LoadingDefaultPageData;

public event PageEventHandler LoadedDefaultPageData;

public event PageEventHandler PublishingPage;

public event PageEventHandler PublishedPage;

public event PageEventHandler CheckingInPage;

public event PageEventHandler CheckedInPage;

public event PageEventHandler DeletingPage;

public event PageEventHandler DeletedPage;

public event PageEventHandler DeletingPageLanguage;

public event PageEventHandler DeletedPageLanguage;

public event PageEventHandler MovingPage;

public event PageEventHandler MovedPage;

public event PageEventHandler CreatingPage;

public event PageEventHandler CreatedPage;

public event PageEventHandler SavingPage;

public event PageEventHandler SavedPage;

public event ChildrenEventHandler LoadingChildren;

public event ChildrenEventHandler LoadedChildren;

public event ChildrenEventHandler FinishedLoadingChildren;

public event ChildrenEventHandler FailedLoadingChildren;

#endregion

//Helper method to cast from PageData to T (if possible else null)
private T EnsureTOrNull<T>(PageData page)
{
return new PageData[] { page }.OfType<T>().FirstOrDefault();
return new[] { page }.OfType<T>().FirstOrDefault();
}
}

Expand Down

0 comments on commit b29a71f

Please sign in to comment.