Subversion Repositories eFlore/Applications.coel

Rev

Rev 1318 | Rev 1369 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1318 Rev 1367
1
package org.tela_botanica.client.composants.pagination;
1
package org.tela_botanica.client.composants.pagination;
2
 
2
 
3
import java.util.ArrayList;
3
import java.util.ArrayList;
4
import java.util.List;
4
import java.util.List;
5
 
5
 
6
import org.tela_botanica.client.Mediateur;
6
import org.tela_botanica.client.Mediateur;
7
import org.tela_botanica.client.RegistreId;
7
import org.tela_botanica.client.RegistreId;
8
import org.tela_botanica.client.interfaces.Rafraichissable;
8
import org.tela_botanica.client.interfaces.Rafraichissable;
-
 
9
import org.tela_botanica.client.synchronisation.Sequenceur;
9
import org.tela_botanica.client.util.Debug;
10
import org.tela_botanica.client.util.Debug;
10
 
11
 
11
import com.extjs.gxt.ui.client.Registry;
12
import com.extjs.gxt.ui.client.Registry;
12
import com.extjs.gxt.ui.client.data.BasePagingLoadConfig;
13
import com.extjs.gxt.ui.client.data.BasePagingLoadConfig;
13
import com.extjs.gxt.ui.client.data.DataReader;
14
import com.extjs.gxt.ui.client.data.DataReader;
14
import com.extjs.gxt.ui.client.data.MemoryProxy;
15
import com.extjs.gxt.ui.client.data.MemoryProxy;
15
import com.google.gwt.user.client.rpc.AsyncCallback;
16
import com.google.gwt.user.client.rpc.AsyncCallback;
16
 
17
 
17
public abstract class Proxy<D> extends MemoryProxy<D> implements Rafraichissable {
18
public abstract class Proxy<D> extends MemoryProxy<D> implements Rafraichissable {
18
 
19
 
19
	protected Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR);
20
	protected Mediateur mediateur = (Mediateur) Registry.get(RegistreId.MEDIATEUR);
20
	
21
	
21
	protected DataReader<D> reader = null;
22
	protected DataReader<D> reader = null;
22
	protected Object loadConfig = null;
23
	protected Object loadConfig = null;
23
	protected AsyncCallback<D> callback = null;
24
	protected AsyncCallback<D> callback = null;
24
	
25
	
25
	protected static Object data;
26
	protected static Object data;
-
 
27
	
-
 
28
	protected Sequenceur sequenceur = null;
26
	
29
	
27
	public Proxy() {
30
	public Proxy(Sequenceur sequenceur) {
-
 
31
		super(data);
28
		super(data);
32
		this.sequenceur = sequenceur;
29
	}
33
	}
30
 
34
 
31
	public abstract void load(TransformateurJSONaModelData<D> reader, Object loadConfig, AsyncCallback<D> callback, String recherche);
35
	public abstract void load(TransformateurJSONaModelData<D> reader, Object loadConfig, AsyncCallback<D> callback, String recherche);
32
 
36
 
33
	@SuppressWarnings("unchecked")
37
	@SuppressWarnings("unchecked")
34
	public void rafraichir(Object nouvellesDonnees) {
38
	public void rafraichir(Object nouvellesDonnees) {
35
		
39
		
36
		try {
40
		try {
37
			  data = nouvellesDonnees;
41
			  data = nouvellesDonnees;
38
			
42
			
39
		      D d = null;
43
		      D d = null;
40
		      if (reader != null) {
44
		      if (reader != null) {
41
		        d = reader.read(loadConfig, data);
45
		        d = reader.read(loadConfig, data);
42
		      } else {
46
		      } else {
43
		        d = (D) data;
47
		        d = (D) data;
44
		        if (d instanceof List) {
48
		        if (d instanceof List) {
45
		          d = (D) new ArrayList((List) d);
49
		          d = (D) new ArrayList((List) d);
46
		        }
50
		        }
47
		      }
51
		      }
48
		      callback.onSuccess(d);
52
		      callback.onSuccess(d);
49
		    } catch (Exception e) {
53
		    } catch (Exception e) {
50
		      callback.onFailure(e);
54
		      callback.onFailure(e);
51
		 }
55
		 }
52
	}
56
	}
53
 
57
 
54
}
58
}