private void UpdateStageOfLife()
 {
     Log.Debug($"CurrentStage: {stageOfLife.GetType()} age: {age}");
     if (stageOfLife is AdultStage)
     {   // no need to change anything here.
         return;
     }
     if (stageOfLife is TeenStage && age > TeenStage.MaxAge)
     {
         stageOfLife = new AdultStage();
     }
     if (stageOfLife is ChildStage && age > ChildStage.MaxAge)
     {
         stageOfLife = new TeenStage();
     }
     if (stageOfLife is BabyStage && age > BabyStage.MaxAge)
     {
         stageOfLife = new ChildStage();
     }
     // else we are still a baby.
 }
Example #2
0
 public RespondStageOfLife(long requestId, IStageOfLife stageOfLifeValue)
 {
     RequestId   = requestId;
     StageOfLife = stageOfLifeValue;
 }