DocumentEvent.java
01 /*
02  *  Copyright (c) 1995-2012, The University of Sheffield. See the file
03  *  COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
04  *
05  *  This file is part of GATE (see http://gate.ac.uk/), and is free
06  *  software, licenced under the GNU Library General Public License,
07  *  Version 2, June 1991 (in the distribution as file licence.html,
08  *  and also available at http://gate.ac.uk/gate/licence.html).
09  *
10  *  Valentin Tablan 12/12/2000
11  *
12  *  $Id: DocumentEvent.java 17595 2014-03-08 13:05:32Z markagreenwood $
13  */
14 package gate.event;
15 
16 import gate.Document;
17 
18 /**
19  * This class models events fired by an {@link gate.Document}.
20  */
21 public class DocumentEvent extends GateEvent {
22 
23   private static final long serialVersionUID = 2315324967342557414L;
24 
25   /**Event type used to mark the addition of an {@link gate.AnnotationSet}*/
26   public static final int ANNOTATION_SET_ADDED = 101;
27 
28   /**Event type used to mark the removal of an {@link gate.AnnotationSet}*/
29   public static final int ANNOTATION_SET_REMOVED = 102;
30 
31   /**Event type used to mark the editing of the document content
32    */
33   public static final int CONTENT_EDITED = 103;
34   
35   /**
36    * Constructor.
37    @param source the document that has been changed
38    @param type the type of the event
39    @param setName the name of the {@link gate.AnnotationSet} that has been
40    * added or removed.
41    */
42   public DocumentEvent(Document source, int type, String setName) {
43     super(source, type);
44     this.annotationSetName = setName;
45   }
46 
47   /**
48    * Constructor.
49    @param source the document that has been changed
50    @param type the type of the event
51    @param editStart the offset where the edit operation started
52    @param editEnd the offset where the edit operation ended
53    */
54   public DocumentEvent(Document source, int type, Long editStart, Long editEnd) {
55     super(source, type);
56     this.editStart = editStart;
57     this.editEnd = editEnd;
58   }
59   
60   /**
61    * Gets the name of the {@link gate.AnnotationSet} that has been added or
62    * removed.
63    */
64   public String getAnnotationSetName() {
65     return annotationSetName;
66   }
67 
68   /**
69    @return Returns the editEnd.
70    */
71   public Long getEditEnd(){
72     return editEnd;
73   }
74   
75   /**
76    @return Returns the editStart.
77    */
78   public Long getEditStart(){
79     return editStart;
80   }
81   private String annotationSetName;
82   private Long editStart;
83   private Long editEnd;
84 }