| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | 
							- using System;
 
- using System.Collections.Generic;
 
- using System.Text;
 
- namespace InABox.Core
 
- {
 
-     public enum PostedStatus
 
-     {
 
-         NeverPosted,
 
-         PostFailed,
 
-         RequiresRepost,
 
-         Posted
 
-     }
 
-     /// <summary>
 
-     /// Flags an <see cref="Entity"/> as "Postable"; that is, it can be processed by an <see cref="IPoster{TEntity,TSettings}"/>.
 
-     /// </summary>
 
-     public interface IPostable : IPostableFragment
 
-     {
 
-         /// <summary>
 
-         /// At what time this <see cref="IPostable"/> was processed. Set to <see cref="DateTime.MinValue"/> if not processed yet.
 
-         /// When the <see cref="IPostable"/> is processed, this should be updated, so that we don't process things twice.
 
-         /// </summary>
 
-         DateTime Posted { get; set; }
 
-         PostedStatus PostedStatus { get; set; }
 
-         string PostedNote { get; set; }
 
-         public void Post()
 
-         {
 
-             Posted = DateTime.Now;
 
-             PostedStatus = PostedStatus.Posted;
 
-             PostedNote = "";
 
-         }
 
-         public void FailPost(string note)
 
-         {
 
-             Posted = DateTime.Now;
 
-             PostedStatus = PostedStatus.PostFailed;
 
-             PostedNote = note;
 
-         }
 
-     }
 
- }
 
 
  |