ProductEvent.java
上传用户:hensond
上传日期:2021-12-27
资源大小:817k
文件大小:1k
源码类别:

软件工程

开发平台:

Java

  1. package com.company.section4;
  2. import java.util.Observable;
  3. /**
  4.  * @author cbf4Life cbf4life@126.com
  5.  * I'm glad to share my knowledge with you all.
  6.  */
  7. public class ProductEvent extends Observable{
  8. //事件起源
  9. private Product source;
  10. //事件的类型
  11. private ProductEventType type;
  12. //传入事件的源头,默认为新建类型
  13. public ProductEvent(Product p) {
  14. this(p,ProductEventType.NEW_PRODUCT);
  15. }
  16. //事件源头以及事件类型
  17. public ProductEvent(Product p,ProductEventType _type){
  18. this.source = p;
  19. this.type = _type;
  20. //事件触发
  21. notifyEventDispatch();
  22. }
  23. //获得事件的始作俑者
  24. public Product getSource(){
  25. return source;
  26. }
  27. //获得事件的类型
  28. public ProductEventType getEventType(){
  29. return this.type;
  30. }
  31. //通知事件处理中心
  32. private void notifyEventDispatch(){
  33. super.addObserver(EventDispatch.getEventDispathc());
  34. super.setChanged();
  35. super.notifyObservers(source);
  36. }
  37. }