Minor changes to improve testability of helpers
[castle.git] / MonoRail / TestSiteARSupport / Controllers / AccountPermissionController.cs
blob7e40cd86decb88d02946c4766167decc02f9e617
1 // Copyright 2004-2007 Castle Project - http://www.castleproject.org/
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace TestSiteARSupport.Controllers
17 using Castle.Components.Binder;
18 using Castle.MonoRail.ActiveRecordSupport;
19 using Castle.MonoRail.Framework;
21 using TestSiteARSupport.Model;
23 [Layout("default")]
24 public class AccountPermissionController : ARSmartDispatcherController
26 public void New()
30 [AccessibleThrough(Verb.Post)]
31 public void Insert([ARDataBind("apermission", AutoLoad=AutoLoadBehavior.Never)] AccountPermission ap)
33 ErrorList errorList = (ErrorList) BoundInstanceErrors[ap];
35 PropertyBag.Add("errorlist", errorList);
37 if (errorList.Count == 0)
39 ap.Create();
41 PropertyBag.Add("id", ap.Id);
42 PropertyBag.Add("ap", ap);
46 public void Edit([ARFetch("id", false, true)] AccountPermission ap)
48 PropertyBag.Add("apermission", ap);
51 [AccessibleThrough(Verb.Post)]
52 public void Update([ARDataBind("apermission", AutoLoad=AutoLoadBehavior.Always)] AccountPermission ap)
54 ErrorList errorList = (ErrorList) BoundInstanceErrors[ap];
56 PropertyBag.Add("errorlist", errorList);
58 if (errorList.Count == 0)
60 ap.Update();
62 PropertyBag.Add("id", ap.Id);
63 PropertyBag.Add("ap", ap);
67 public void RemoveConfirm([ARFetch("id", false, true)] AccountPermission ap)
69 PropertyBag.Add("ap", ap);
72 [AccessibleThrough(Verb.Post)]
73 public void Delete([ARDataBind("ap", AutoLoad=AutoLoadBehavior.Always)] AccountPermission ap)
75 ap.Delete();