1 package eu
.etaxonomy
.taxeditor
;
3 import java
.util
.ArrayList
;
6 import eu
.etaxonomy
.cdm
.model
.name
.TaxonName
;
7 import eu
.etaxonomy
.cdm
.api
.service
.*;
8 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationController
;
11 public class SimpleModel
{
12 private ArrayList modelListeners
;
13 private ArrayList objects
;
14 public SimpleModel() {
15 modelListeners
= new ArrayList();
18 public void addModelListener(IModelListener listener
) {
19 if (!modelListeners
.contains(listener
))
20 modelListeners
.add(listener
);
22 public void removeModelListener(IModelListener listener
) {
23 modelListeners
.remove(listener
);
25 public void fireModelChanged(Object
[] objects
, String type
, String property
) {
26 for (int i
= 0; i
< modelListeners
.size(); i
++) {
27 ((IModelListener
) modelListeners
.get(i
)).modelChanged(objects
,
31 public Object
[] getContents() {
32 return objects
.toArray();
34 private void initialize() {
37 List
<TaxonName
> tnList
= new ArrayList
<TaxonName
>();
38 CdmApplicationController app
= new CdmApplicationController();
39 NameService ns
= app
.getNameService();
40 tnList
= ns
.getAllNames();
42 objects
= new ArrayList();
43 for (TaxonName tn
: tnList
){
44 NamedObject
[] objects
= {
45 new Name(tn
.getName(), tn
.getGenus(),tn
.getSpecificEpithet())
49 // NamedObject[] objects = {
50 // new Name(tnList.get(0).getName(), tnList.get(0).getGenus(),tnList.get(0).getInfraSpecificEpithet()),
51 // new Name(tnList.get(1).getName(), tnList.get(1).getGenus(),tnList.get(1).getInfraSpecificEpithet()),
52 // new Name(tnList.get(2).getName(), tnList.get(2).getGenus(),tnList.get(2).getInfraSpecificEpithet()),
54 // new Name("Pilosella piloselloides (Vill.) Soják", "Pilosella", "piloselloides"),
55 // new Name("Pilosella pavichii (Heuff.) Arv.-Touv.", "Pilosella", "pavichii"),
56 // new Name("Pilosella vahlii (Froel.) F. W. Schultz & Sch. Bip.", "Pilosella", "vahlii")
57 // /*new TypeOne(Messages.getString("SimpleModel.t1_i1"), 2, true, Messages.getString("SimpleModel.text1")), //$NON-NLS-1$ //$NON-NLS-2$
58 // new TypeOne(Messages.getString("SimpleModel.t1_i2"), 1, false, Messages.getString("SimpleModel.text2")), //$NON-NLS-1$ //$NON-NLS-2$
59 // new TypeOne(Messages.getString("SimpleModel.t1_i3"), 3, true, Messages.getString("SimpleModel.text3")), //$NON-NLS-1$ //$NON-NLS-2$
60 // new TypeOne(Messages.getString("SimpleModel.t1_i4"), 0, false, Messages.getString("SimpleModel.text4")), //$NON-NLS-1$ //$NON-NLS-2$
61 // new TypeOne(Messages.getString("SimpleModel.t1_i5"), 1, true, Messages.getString("SimpleModel.text5")), //$NON-NLS-1$ //$NON-NLS-2$
62 // new TypeTwo(Messages.getString("SimpleModel.t2_i1"), false, true), //$NON-NLS-1$
63 // new TypeTwo(Messages.getString("SimpleModel.t2_i2"), true, false)*/
69 } catch (RuntimeException e
) {
70 //logger.error("Error when initializing SimpleModel");
71 System
.out
.println(e
.getMessage());
75 public void add(NamedObject
[] objs
, boolean notify
) {
76 for (int i
= 0; i
< objs
.length
; i
++) {
78 objs
[i
].setModel(this);
81 fireModelChanged(objs
, IModelListener
.ADDED
, ""); //$NON-NLS-1$
84 // public void add(ArrayList<TaxonName> tns, boolean notify) {
85 // for (int i = 0; i < tns.size(); i++) {
86 // objects.add(tns.get(i));
87 // //tns[i].setModel(this);
90 // //fireModelChanged(tns, IModelListener.ADDED, ""); //$NON-NLS-1$
93 public void remove(NamedObject
[] objs
, boolean notify
) {
94 for (int i
= 0; i
< objs
.length
; i
++) {
95 objects
.remove(objs
[i
]);
96 objs
[i
].setModel(null);
99 fireModelChanged(objs
, IModelListener
.REMOVED
, ""); //$NON-NLS-1$