using System;

/// <summary>
/// Definiuje bazowy interfejs dla dowolnej encji
/// </summary>
public abstract class AbstractEntity
{
   // dane składowe
   private string _id;

	public AbstractEntity(string id)
	{
      _id = id;
	}

   /// <summary>
   /// Każda encja musi mieć swój identyfikator
   /// </summary>
   public string Id
   {
      get { return _id; }
      set { _id = value; }
   }

   /// <summary>
   /// Każda encja będzie odpowiedzialna za sprawdzenie
   /// poprawności swojego stanu
   /// </summary>
   public abstract bool IsValid
   {
      get;
   }
}
