73d715e85ceb1893bb8b4c445649f28cec4b35bd
[jalviewjs.git] / site / j2s / java / util / Observable.js
1 Clazz.load(["java.util.Vector"],"java.util.Observable",["java.lang.NullPointerException"],function(){
2 c$=Clazz.decorateAsClass(function(){
3 this.observers=null;
4 this.changed=false;
5 Clazz.instantialize(this,arguments);
6 },java.util,"Observable");
7 Clazz.prepareFields(c$,function(){
8 this.observers=new java.util.Vector();
9 });
10 Clazz.makeConstructor(c$,
11 function(){
12 });
13 Clazz.defineMethod(c$,"addObserver",
14 function(observer){
15 if(observer==null){
16 throw new NullPointerException();
17 }if(!this.observers.contains(observer))this.observers.addElement(observer);
18 },"java.util.Observer");
19 Clazz.defineMethod(c$,"clearChanged",
20 function(){
21 this.changed=false;
22 });
23 Clazz.defineMethod(c$,"countObservers",
24 function(){
25 return this.observers.size();
26 });
27 Clazz.defineMethod(c$,"deleteObserver",
28 function(observer){
29 this.observers.removeElement(observer);
30 },"java.util.Observer");
31 Clazz.defineMethod(c$,"deleteObservers",
32 function(){
33 this.observers.setSize(0);
34 });
35 Clazz.defineMethod(c$,"hasChanged",
36 function(){
37 return this.changed;
38 });
39 Clazz.defineMethod(c$,"notifyObservers",
40 function(){
41 this.notifyObservers(null);
42 });
43 Clazz.defineMethod(c$,"notifyObservers",
44 function(data){
45 if(this.changed){
46 var clone=this.observers.clone();
47 var size=clone.size();
48 for(var i=0;i<size;i++){
49 clone.elementAt(i).update(this,data);
50 }
51 this.clearChanged();
52 }},"~O");
53 Clazz.defineMethod(c$,"setChanged",
54 function(){
55 this.changed=true;
56 });
57 });