Advertisement
Guest User

Untitled

a guest
Feb 16th, 2020
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.31 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace pomosh_antony
  8. {
  9. public class PhoneEventArgs : EventArgs
  10. {
  11. public int CallerNumber { get; set; }
  12.  
  13. public PhoneEventArgs(int callerNumber)
  14. {
  15. CallerNumber = callerNumber;
  16. }
  17. }
  18.  
  19. public delegate void PhoneEventHandler(object sender, PhoneEventArgs args);
  20.  
  21. class Phone
  22. {
  23. private Dictionary<int, Phone> phones = new Dictionary<int, Phone>();
  24. public event PhoneEventHandler OnCall;
  25. public int Number { get; private set; }
  26.  
  27. public Phone(int number)
  28. {
  29. Number = number;
  30. }
  31.  
  32.  
  33. public void AddPhoneToBook(Phone phone)
  34. {
  35. if (phones.ContainsKey(phone.Number))
  36. {
  37. Console.WriteLine($"Number {phone} have already existed.");
  38. return;
  39. }
  40.  
  41. phones.Add(phone.Number, phone);
  42. }
  43.  
  44. public bool Call(int number)
  45. {
  46. if (phones.ContainsKey(number))
  47. {
  48. phones[number].OnCall.Invoke(this, new PhoneEventArgs(number));
  49. return true;
  50. }
  51. return false;
  52. }
  53. }
  54.  
  55.  
  56.  
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement