ITimberlinePoster.cs 787 B

12345678910111213141516171819202122232425262728
  1. using InABox.Core;
  2. using InABox.Scripting;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Linq;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace InABox.Poster.Timberline
  9. {
  10. [Caption("Timberline")]
  11. public interface ITimberlinePoster<TEntity, TSettings> : IPoster<TEntity, TSettings>
  12. where TEntity : Entity, IPostable, IRemotable, IPersistent, new()
  13. where TSettings : TimberlinePosterSettings<TEntity>
  14. {
  15. public delegate void AddFragmentCallback(IPostableFragment fragment);
  16. event AddFragmentCallback AddFragment;
  17. ScriptDocument? Script { set; }
  18. bool BeforePost(IDataModel<TEntity> model);
  19. bool Process(IDataModel<TEntity> model);
  20. void AfterPost(IDataModel<TEntity> model);
  21. }
  22. }