public override void IsRepeat(PrintingContext context, bool repeat) { if (repeat) { Console.WriteLine($"Повторяю печать"); context.State = new ChooseDocumentState(); } else { Console.WriteLine($"Печать завершина"); context.State = new GetCashState(); } }
static void Main(string[] args) { var context = new PrintingContext(); var flashUSB = new FlashUSB(); var document = new WordDocument(); context.InputCash(100); //Сумма в 100 денежных единиц принята context.ChooseDevice(flashUSB); //Устройство принято context.ChooseDocument(document); //Документ принят context.PrintingDocument(); //Печатаю документ.. context.IsRepeat(false); //Печать завершина context.GetCash(); //Заберите сдачу context.Close(); context.ChooseDocument(document); //Error: Exception("Печать была завершина") }
public override void ChooseDevice(PrintingContext context, IDevice device) { throw new Exception("Печать была завершина"); }
public override void GetCash(PrintingContext context) { Console.WriteLine($"Заберите сдачу"); context.State = new CloseState(); }
public override void PrintingDocument(PrintingContext context) { Console.WriteLine($"Печатаю документ.."); context.State = new IsRepeatState(); }
public override void ChooseDocument(PrintingContext context, IDocument document) { Console.WriteLine($"Документ принят"); context.State = new PrintingDocumentState(); }
public virtual void ChooseDevice(PrintingContext context, IDevice device) { }
public override void PrintingDocument(PrintingContext context) { throw new Exception("Печать была завершина"); }
public virtual void Close(PrintingContext context) { context.State = new CloseState(); }
public virtual void PrintingDocument(PrintingContext context) { }
public virtual void IsRepeat(PrintingContext context, bool repeat) { }
public virtual void InputCash(PrintingContext context, int cash) { }
public virtual void GetCash(PrintingContext context) { }
public virtual void ChooseDocument(PrintingContext context, IDocument document) { }
public override void InputCash(PrintingContext context, int cash) { throw new Exception("Печать была завершина"); }
public override void IsRepeat(PrintingContext context, bool repeat) { throw new Exception("Печать была завершина"); }
public override void InputCash(PrintingContext context, int cash) { Console.WriteLine($"Сумма в {cash} денежных единиц принята"); context.State = new ChooseDeviceState(); }
public SortByYearStrategy(IDataService <IMotionPictureData> dataService, PrintingContext processorContext) { this.dataService = dataService; this.processorContext = processorContext; }
public override void ChooseDevice(PrintingContext context, IDevice device) { Console.WriteLine($"Устройство принято"); context.State = new ChooseDocumentState(); }