ScriptStore.cs 935 B

123456789101112131415161718192021222324252627282930313233
  1. using InABox.Core;
  2. namespace InABox.Database
  3. {
  4. public class ScriptStore : Store<Script>
  5. {
  6. private static void CheckScriptCache(ScriptType type)
  7. {
  8. if (
  9. type == ScriptType.BeforeQuery
  10. || type == ScriptType.AfterQuery
  11. || type == ScriptType.AfterLoad
  12. || type == ScriptType.BeforeSave
  13. || type == ScriptType.AfterSave
  14. || type == ScriptType.BeforeDelete
  15. || type == ScriptType.AfterDelete
  16. )
  17. DbFactory.LoadScripts();
  18. }
  19. protected override void AfterSave(Script entity)
  20. {
  21. base.AfterSave(entity);
  22. CheckScriptCache(entity.ScriptType);
  23. }
  24. protected override void AfterDelete(Script entity)
  25. {
  26. base.AfterDelete(entity);
  27. CheckScriptCache(entity.ScriptType);
  28. }
  29. }
  30. }