Project

General

Profile

Download (32.2 KB) Statistics
| Branch: | Revision:
1
// $Id$
2
/**
3
* Copyright (C) 2009 EDIT
4
* European Distributed Institute of Taxonomy 
5
* http://www.e-taxonomy.eu
6
* 
7
* The contents of this file are subject to the Mozilla Public License Version 1.1
8
* See LICENSE.TXT at the top of this package for the full license terms.
9
*/
10
package eu.etaxonomy.cdm.io.xper;
11

    
12
import java.util.List;
13
import java.util.UUID;
14

    
15
import org.apache.log4j.Logger;
16

    
17
import eu.etaxonomy.cdm.model.description.Feature;
18
import eu.etaxonomy.cdm.model.description.FeatureTree;
19
import eu.etaxonomy.cdm.model.description.State;
20
import eu.etaxonomy.cdm.model.description.WorkingSet;
21
import fr_jussieu_snv_lis.XPApp;
22
import fr_jussieu_snv_lis.base.Base;
23
import fr_jussieu_snv_lis.base.ControlerBase;
24
import fr_jussieu_snv_lis.base.Group;
25
import fr_jussieu_snv_lis.base.IBase;
26
import fr_jussieu_snv_lis.base.IControlerBase;
27
import fr_jussieu_snv_lis.base.Individual;
28
import fr_jussieu_snv_lis.base.Mode;
29
import fr_jussieu_snv_lis.base.Variable;
30

    
31
/**
32
 * @author a.mueller
33
 * @date 12.04.2011
34
 *
35
 */
36
public class CdmXperBaseControler extends ControlerBase implements IControlerBase {
37
	private static final Logger logger = Logger.getLogger(CdmXperBaseControler.class);
38
	
39
//	private IBase base;
40
	private CdmXperAdapter cdmXperAdapter;
41

    
42
	public CdmXperBaseControler(BaseCdm base, CdmXperAdapter cdmXperAdapter) {
43
		super(base);
44
		this.cdmXperAdapter = cdmXperAdapter;
45
//		this.base = base;
46
		base.setBaseControler(this);
47
	}
48
	
49

    
50
	protected CdmXperAdapter getAdapter() {
51
		return cdmXperAdapter;
52
	}
53
	
54

    
55
	private WorkingSet getWorkingSet() {
56
		return cdmXperAdapter.getWorkingSet();
57
	}
58
	
59
	private FeatureTree getFeatureTree() {
60
		return getWorkingSet().getDescriptiveSystem();
61
	}
62
	
63

    
64
	public void loadFeatures() {
65
		this.cdmXperAdapter.loadFeatures();
66
	}
67
	
68
//*********************** IControlerBase ********************************************/	
69

    
70
	/* (non-Javadoc)
71
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createBase(java.lang.String, java.lang.String)
72
	 */
73
	@Override
74
	public void createBase(String path, String name) throws Exception {
75
		//TODO
76
		throw new RuntimeException("A new base can not be created in an external base controler");
77
	}
78

    
79
	/* (non-Javadoc)
80
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createBase(java.lang.String)
81
	 */
82
	@Override
83
	public void createBase(String name) throws Exception {
84
		//TODO
85
		throw new RuntimeException("A new base can not be opened in an external base controler");
86
	}
87

    
88
	/* (non-Javadoc)
89
	 * @see fr_jussieu_snv_lis.base.IControlerBase#setBase(fr_jussieu_snv_lis.base.Base)
90
	 */
91
	@Override
92
	public void setBase(Base b) {
93
		logger.warn("Base is newly defined. This may lead to errors as controler base is a CdmXperBaseControler");
94
		this.base = b;
95
	}
96

    
97
	/* (non-Javadoc)
98
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getBase()
99
	 */
100
	@Override
101
	public IBase getBase() {
102
		return base;
103
	}
104

    
105
	/* (non-Javadoc)
106
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getBaseName()
107
	 */
108
	@Override
109
	public String getBaseName() {
110
		return base.getName();
111
	}
112

    
113
	/* (non-Javadoc)
114
	 * @see fr_jussieu_snv_lis.base.IControlerBase#closeBase()
115
	 */
116
	@Override
117
	public void closeBase() {
118
		logger.warn("closeBase Not yet implemented");
119
	}
120

    
121
	/* (non-Javadoc)
122
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createNewGroup(java.lang.String)
123
	 */
124
	@Override
125
	public Group createNewGroup(String name) {
126
		logger.warn("createNewGroup Not yet implemented");
127
		return null;
128
	}
129

    
130
	/* (non-Javadoc)
131
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroup(fr_jussieu_snv_lis.base.Group)
132
	 */
133
	@Override
134
	public boolean addGroup(Group group) {
135
		logger.warn("addGroup Not yet implemented");
136
		return false;
137
	}
138

    
139
	/* (non-Javadoc)
140
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupToBase(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.IBase)
141
	 */
142
	@Override
143
	public boolean addGroupToBase(Group group, IBase b) {
144
		logger.warn("addGroupToBase Not yet implemented");
145
		return false;
146
	}
147

    
148
	/* (non-Javadoc)
149
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupAndVariablesToBase(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.IBase)
150
	 */
151
	@Override
152
	public boolean addGroupAndVariablesToBase(Group group, IBase b) {
153
		logger.warn("addGroupAndVariablesToBase Not yet implemented");
154
		return false;
155
	}
156

    
157
	/* (non-Javadoc)
158
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupAt(int, fr_jussieu_snv_lis.base.Group)
159
	 */
160
	@Override
161
	public void addGroupAt(int i, Group g) {
162
		logger.warn("addGroupAt Not yet implemented");
163

    
164
	}
165

    
166
	/* (non-Javadoc)
167
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupToBaseAt(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.IBase, int)
168
	 */
169
	@Override
170
	public void addGroupToBaseAt(Group g, IBase b, int i) {
171
		logger.warn("addGroupToBaseAt Not yet implemented");
172

    
173
	}
174

    
175
	/* (non-Javadoc)
176
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteGroupFromBase(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.IBase)
177
	 */
178
	@Override
179
	public void deleteGroupFromBase(Group g, IBase b) {
180
		logger.warn("deleteGroupFromBase Not yet implemented");
181

    
182
	}
183

    
184
	/* (non-Javadoc)
185
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteGroups(java.lang.Object[])
186
	 */
187
	@Override
188
	public void deleteGroups(Object[] tab) {
189
		logger.warn("deleteGroups Not yet implemented");
190

    
191
	}
192

    
193
	/* (non-Javadoc)
194
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteGroup(fr_jussieu_snv_lis.base.Group)
195
	 */
196
	@Override
197
	public void deleteGroup(Group g) {
198
		logger.warn("deleteGroup Not yet implemented");
199

    
200
	}
201

    
202
	/* (non-Javadoc)
203
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteGroupFromVariable(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Group)
204
	 */
205
	@Override
206
	public void deleteGroupFromVariable(Variable v, Group g) {
207
		logger.warn("deleteGroupFromVariable Not yet implemented");
208

    
209
	}
210

    
211
	/* (non-Javadoc)
212
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteGroupFromVariables(java.lang.Object[], fr_jussieu_snv_lis.base.Group)
213
	 */
214
	@Override
215
	public void deleteGroupFromVariables(Object[] tab, Group g) {
216
		logger.warn("deleteGroupFromVariables Not yet implemented");
217

    
218
	}
219

    
220
	/* (non-Javadoc)
221
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteAllGroups(fr_jussieu_snv_lis.base.IBase)
222
	 */
223
	@Override
224
	public void deleteAllGroups(IBase b) {
225
		logger.warn("deleteAllGroups Not yet implemented");
226

    
227
	}
228

    
229
	/* (non-Javadoc)
230
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getGroupsNoBelongingToVariable(fr_jussieu_snv_lis.base.Variable)
231
	 */
232
	@Override
233
	public List<Group> getGroupsNoBelongingToVariable(Variable v) {
234
		logger.warn("getGroupsNoBelongingToVariable Not yet implemented");
235
		return null;
236
	}
237

    
238
	/* (non-Javadoc)
239
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getGroupsNoBelongingToVariables(java.lang.Object[])
240
	 */
241
	@Override
242
	public List<Group> getGroupsNoBelongingToVariables(Variable[] tab) {
243
		logger.warn("getGroupsNoBelongingToVariables Not yet implemented");
244
		return null;
245
	}
246

    
247
	/* (non-Javadoc)
248
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getGroupsBelongingToVariable(fr_jussieu_snv_lis.base.Variable)
249
	 */
250
	@Override
251
	public List<Group> getGroupsBelongingToVariable(Variable v) {
252
		logger.warn("getGroupsBelongingToVariable Not yet implemented");
253
		return null;
254
	}
255

    
256
	/* (non-Javadoc)
257
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getGroupsBelongingToVariables(java.lang.Object[])
258
	 */
259
	@Override
260
	public List<Group> getGroupsBelongingToVariables(Variable[] tab) {
261
		logger.warn("getGroupsBelongingToVariables Not yet implemented");
262
		return null;
263
	}
264

    
265
	/* (non-Javadoc)
266
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getAllGroups()
267
	 */
268
	@Override
269
	public List<Group> getAllGroups() {
270
		return base.getGroups();
271
	}
272

    
273
	/* (non-Javadoc)
274
	 * @see fr_jussieu_snv_lis.base.IControlerBase#findGroupByName(java.lang.String)
275
	 */
276
	@Override
277
	public Group findGroupByName(String n) {
278
		logger.warn("findGroupByName Not yet implemented");
279
		return null;
280
	}
281

    
282
	/* (non-Javadoc)
283
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceGroup()
284
	 */
285
	@Override
286
	public boolean checkExistanceGroup() {
287
		logger.warn("checkExistanceGroup Not yet implemented");
288
		return false;
289
	}
290

    
291
	/* (non-Javadoc)
292
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupToVariableAt(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.Variable, int)
293
	 */
294
	@Override
295
	public void addGroupToVariableAt(Group g, Variable v, int i) {
296
		logger.warn("addGroupToVariableAt Not yet implemented");
297

    
298
	}
299

    
300
	/* (non-Javadoc)
301
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupToVariable(fr_jussieu_snv_lis.base.Group, fr_jussieu_snv_lis.base.Variable)
302
	 */
303
	@Override
304
	public void addGroupToVariable(Group g, Variable v) {
305
		logger.warn("addGroupToVariable Not yet implemented");
306

    
307
	}
308

    
309
	/* (non-Javadoc)
310
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addGroupToVariables(fr_jussieu_snv_lis.base.Group, java.lang.Object[])
311
	 */
312
	@Override
313
	public void addGroupToVariables(Group g, Object[] al) {
314
		logger.warn("addGroupToVariables Not yet implemented");
315

    
316
	}
317

    
318
	/* (non-Javadoc)
319
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addVariableToGroups(fr_jussieu_snv_lis.base.Variable, java.util.List)
320
	 */
321
	@Override
322
	public void addVariableToGroups(Variable v, List<Group> al) {
323
		logger.warn("addVariableToGroups Not yet implemented");
324

    
325
	}
326

    
327
	/* (non-Javadoc)
328
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceGroup(java.lang.String)
329
	 */
330
	@Override
331
	public boolean checkExistanceGroup(String s) {
332
		logger.warn("checkExistanceGroup Not yet implemented");
333
		return false;
334
	}
335

    
336
	/* (non-Javadoc)
337
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceGroup(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Group)
338
	 */
339
	@Override
340
	public boolean checkExistanceGroup(Variable var, Group g) {
341
		logger.warn("checkExistanceGroup Not yet implemented");
342
		return false;
343
	}
344

    
345
	/* (non-Javadoc)
346
	 * @see fr_jussieu_snv_lis.base.IControlerBase#findModeByName(java.lang.String, fr_jussieu_snv_lis.base.Variable)
347
	 */
348
	@Override
349
	public Mode findModeByName(String str, Variable var) {
350
		logger.warn("findModeByName Not yet implemented");
351
		return null;
352
	}
353

    
354
	/* (non-Javadoc)
355
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addModeToVariable(fr_jussieu_snv_lis.base.Mode, fr_jussieu_snv_lis.base.Variable)
356
	 */
357
	@Override
358
	public boolean addModeToVariable(Mode m, Variable v) {
359
		return super.addModeToVariable(m, v);
360
	}
361

    
362
	/* (non-Javadoc)
363
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addModeToVariableAt(fr_jussieu_snv_lis.base.Mode, fr_jussieu_snv_lis.base.Variable, int)
364
	 */
365
	@Override
366
	public void addModeToVariableAt(Mode m, Variable v, int i) {
367
		logger.warn("addModeToVariableAt Not yet implemented");
368

    
369
	}
370

    
371
	/* (non-Javadoc)
372
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveUpModeFromVariable(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Mode)
373
	 */
374
	@Override
375
	public void moveUpModeFromVariable(Variable v, Mode m) {
376
		logger.warn("moveUpModeFromVariable Not yet implemented");
377

    
378
	}
379

    
380
	/* (non-Javadoc)
381
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveDownModeFromVariable(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Mode)
382
	 */
383
	@Override
384
	public void moveDownModeFromVariable(Variable v, Mode m) {
385
		logger.warn("moveDownModeFromVariable Not yet implemented");
386

    
387
	}
388

    
389
	/* (non-Javadoc)
390
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteModeFromVariable(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Mode)
391
	 */
392
	@Override
393
	public void deleteModeFromVariable(Variable v, Mode m) {
394
		logger.warn("deleteModeFromVariable Not yet implemented");
395

    
396
	}
397

    
398
	/* (non-Javadoc)
399
	 * @see fr_jussieu_snv_lis.base.IControlerBase#fusionModeFromvariable(fr_jussieu_snv_lis.base.Variable, java.lang.Object[])
400
	 */
401
	@Override
402
	public Mode fusionModeFromvariable(Variable var, Object[] tab) {
403
		logger.warn("fusionModeFromvariable Not yet implemented");
404
		return null;
405
	}
406

    
407
	/* (non-Javadoc)
408
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceMode(fr_jussieu_snv_lis.base.Variable, java.lang.String)
409
	 */
410
	@Override
411
	public boolean checkExistanceMode(Variable v, String s) {
412
		logger.warn("checkExistanceMode only implemented as super");
413
		return super.checkExistanceMode(v, s);
414
	}
415

    
416
	/* (non-Javadoc)
417
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceMode(fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.Variable, java.lang.String)
418
	 */
419
	@Override
420
	public boolean checkExistanceMode(Individual ind, Variable var, String s) {
421
		logger.warn("checkExistanceMode Not yet implemented");
422
		return false;
423
	}
424

    
425
	/* (non-Javadoc)
426
	 * @see fr_jussieu_snv_lis.base.IControlerBase#matchModes(fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.Variable, java.util.List, int)
427
	 */
428
	@Override
429
	public boolean matchModes(Individual ind, Variable var, List<Mode> modes,
430
			int operator) {
431
		logger.warn("matchModes Not yet implemented");
432
		return false;
433
	}
434

    
435
	/* (non-Javadoc)
436
	 * @see fr_jussieu_snv_lis.base.IControlerBase#matchNumValue(fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.Variable, java.lang.Double)
437
	 */
438
	@Override
439
	public boolean matchNumValue(Individual ind, Variable var, Double value) {
440
		logger.info("matchNumValue implemented by using super");
441
		return super.matchNumValue(ind, var, value);
442
	}
443

    
444
	/* (non-Javadoc)
445
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createNewMode(fr_jussieu_snv_lis.base.Variable, java.lang.String)
446
	 */
447
	@Override
448
	public Mode createNewMode(Variable va, String name) {
449
		Mode newMode = new Mode(name);
450
		
451
		boolean hasChanged = addModeToVariable(newMode, va); // Add the new Mode to the list f Mode of the Variable
452

    
453
		if (hasChanged){
454
			XPApp.baseChanged = true;
455
		}
456
		Feature feature = getAdapter().getFeature(va);
457
		getAdapter().saveNewState(newMode, feature);
458
		return newMode;
459
	}
460

    
461
	/* (non-Javadoc)
462
	 * @see fr_jussieu_snv_lis.base.IControlerBase#controlModeExVariable(boolean, fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Mode)
463
	 */
464
	@Override
465
	public void controlModeExVariable(boolean selected, Variable v,
466
			Mode modeException) {
467
		logger.warn("controlModeExVariable Not yet implemented");
468

    
469
	}
470

    
471
	/* (non-Javadoc)
472
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteModeExFromVariable(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Mode)
473
	 */
474
	@Override
475
	public void deleteModeExFromVariable(Variable v, Mode m) {
476
		logger.warn("deleteModeExFromVariable Not yet implemented");
477

    
478
	}
479

    
480
	/* (non-Javadoc)
481
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistIndividual()
482
	 */
483
	@Override
484
	public boolean checkExistIndividual() {
485
		logger.warn("checkExistIndividual Not yet implemented");
486
		return false;
487
	}
488

    
489
	/* (non-Javadoc)
490
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteIndividualFromBase(fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.IBase)
491
	 */
492
	@Override
493
	public void deleteIndividualFromBase(Individual ind, IBase b) {
494
		logger.warn("deleteIndividualFromBase Not yet implemented");
495

    
496
	}
497

    
498
	/* (non-Javadoc)
499
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteIndividual(fr_jussieu_snv_lis.base.Individual)
500
	 */
501
	@Override
502
	public void deleteIndividual(Individual ind) {
503
		logger.warn("deleteIndividual Not yet implemented");
504

    
505
	}
506

    
507
	/* (non-Javadoc)
508
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addIndividual(fr_jussieu_snv_lis.base.Individual)
509
	 */
510
	@Override
511
	public void addIndividual(Individual ind) {
512
		super.addIndividual(ind);
513
	}
514

    
515
	/* (non-Javadoc)
516
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addIndividualToBaseAt(fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.IBase, int)
517
	 */
518
	@Override
519
	public void addIndividualToBaseAt(Individual ind, IBase b, int i) {
520
		logger.warn("addIndividualToBaseAt Not yet implemented");
521

    
522
	}
523

    
524
	/* (non-Javadoc)
525
	 * @see fr_jussieu_snv_lis.base.IControlerBase#findIndividualByName(java.lang.String)
526
	 */
527
	@Override
528
	public Individual findIndividualByName(String ind) {
529
		return super.findIndividualByName(ind);
530
	}
531

    
532
	/* (non-Javadoc)
533
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceOneIndividual(java.lang.String)
534
	 */
535
	@Override
536
	public boolean checkExistanceOneIndividual(String s) {
537
		logger.warn("checkExistanceOneIndividual Not yet implemented");
538
		return false;
539
	}
540

    
541
	/* (non-Javadoc)
542
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createNewIndividual(java.lang.String)
543
	 */
544
	@Override
545
	public Individual createNewIndividual(String name) {
546
		logger.warn("createNewIndividual Not yet implemented");
547
		return null;
548
	}
549

    
550
	/* (non-Javadoc)
551
	 * @see fr_jussieu_snv_lis.base.IControlerBase#copyIndividual(fr_jussieu_snv_lis.base.Individual, java.lang.String)
552
	 */
553
	@Override
554
	public Individual copyIndividual(Individual indtocopy, String name) {
555
		logger.warn("copyIndividual Not yet implemented");
556
		return null;
557
	}
558

    
559
	/* (non-Javadoc)
560
	 * @see fr_jussieu_snv_lis.base.IControlerBase#copyVariable(fr_jussieu_snv_lis.base.Variable, java.lang.String)
561
	 */
562
	@Override
563
	public Variable copyVariable(Variable vartocopy, String name) {
564
		logger.warn("copyVariable Not yet implemented");
565
		return null;
566
	}
567

    
568
	/* (non-Javadoc)
569
	 * @see fr_jussieu_snv_lis.base.IControlerBase#mergeVariables(java.lang.Object[], java.lang.String)
570
	 */
571
	@Override
572
	public Variable mergeVariables(Object[] tab, String name) {
573
		logger.warn("mergeVariables Not yet implemented");
574
		return null;
575
	}
576

    
577
	/* (non-Javadoc)
578
	 * @see fr_jussieu_snv_lis.base.IControlerBase#mergeIndividuals(java.lang.Object[], java.lang.String)
579
	 */
580
	@Override
581
	public Individual mergeIndividuals(Object[] tab, String name) {
582
		logger.warn("mergeIndividuals Not yet implemented");
583
		return null;
584
	}
585

    
586
	/* (non-Javadoc)
587
	 * @see fr_jussieu_snv_lis.base.IControlerBase#controlModeIndVar(boolean, fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.Mode)
588
	 */
589
	@Override
590
	public void controlModeIndVar(boolean selected, Variable v, Individual i, Mode m) {
591
		this.cdmXperAdapter.controlModeIndVar(selected, v, i, m);
592
		super.controlModeIndVar(selected, v, i, m);
593
	}
594

    
595
	/* (non-Javadoc)
596
	 * @see fr_jussieu_snv_lis.base.IControlerBase#controlModeIndVarRec(boolean, fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual, fr_jussieu_snv_lis.base.Mode)
597
	 */
598
	@Override
599
	public void controlModeIndVarRec(boolean selected, Variable v, Individual i, Mode m) {
600
		logger.warn("controlModeIndVarRec Not yet implemented");
601
	}
602
	
603
	@Override
604
	public void controlNumValue(Individual ind, Variable var, Double min,
605
			Double max, Double mean, Double sd, Double umethLower,
606
			Double umethUpper, Integer nSample) {
607
		this.cdmXperAdapter.controlModeIndVar(ind, var, min, max, mean, sd, 
608
				umethLower, umethUpper, nSample);
609
		super.controlNumValue(ind, var, min, max, mean, sd, umethLower, umethUpper,
610
				nSample);
611
	}
612

    
613
	/* (non-Javadoc)
614
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkBadDescription(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual)
615
	 */
616
	@Override
617
	public void checkBadDescription(Variable var, Individual ind) {
618
		logger.warn("checkBadDescription Not yet implemented");
619

    
620
	}
621

    
622
	/* (non-Javadoc)
623
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkingUnknown(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual)
624
	 */
625
	@Override
626
	public boolean checkingUnknown(Variable var, Individual ind) {
627
		return super.checkingUnknown(var, ind);
628
	}
629

    
630
	/* (non-Javadoc)
631
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkUnknown(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual, boolean, boolean)
632
	 */
633
	@Override
634
	public void checkUnknown(Variable var, Individual ind, boolean b, boolean withDaughters) {
635
		super.checkUnknown(var, ind, b, withDaughters);
636
	}
637

    
638
	/* (non-Javadoc)
639
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkUnknown(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Individual[], boolean, boolean)
640
	 */
641
	@Override
642
	public void checkUnknown(Variable var, Individual[] tab, boolean b, boolean withDaughters) {
643
		super.checkUnknown(var, tab, b, withDaughters);
644
	}
645

    
646
	/* (non-Javadoc)
647
	 * @see fr_jussieu_snv_lis.base.IControlerBase#buildIndividualsBitSetMatrix()
648
	 */
649
	@Override
650
	public void buildIndividualsBitSetMatrix() {
651
		logger.warn("buildIndividualsBitSetMatrix Not yet implemented");
652

    
653
	}
654

    
655
	/* (non-Javadoc)
656
	 * @see fr_jussieu_snv_lis.base.IControlerBase#buildIndividualsIntegerBitMatrix()
657
	 */
658
	@Override
659
	public void buildIndividualsIntegerBitMatrix() {
660
		logger.warn("buildIndividualsIntegerBitMatrix Not yet implemented");
661

    
662
	}
663

    
664
	/* (non-Javadoc)
665
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addVariable(fr_jussieu_snv_lis.base.Variable)
666
	 */
667
	@Override
668
	public boolean addVariable(Variable variable) {
669
		logger.warn("addVariable Not yet implemented");
670
		return false;
671
	}
672

    
673
	/* (non-Javadoc)
674
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addVariableToBase(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.IBase)
675
	 */
676
	@Override
677
	public void addVariableToBase(Variable variable, IBase b) {
678
		logger.warn("addVariableToBase Not yet implemented");
679

    
680
	}
681

    
682
	/* (non-Javadoc)
683
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addMother(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Variable)
684
	 */
685
	@Override
686
	public boolean addMother(Variable current, Variable mother) {
687
		logger.warn("addMother Not yet implemented");
688
		return false;
689
	}
690

    
691
	/* (non-Javadoc)
692
	 * @see fr_jussieu_snv_lis.base.IControlerBase#removeMother(fr_jussieu_snv_lis.base.Variable)
693
	 */
694
	@Override
695
	public void removeMother(Variable current) {
696
		logger.warn("removeMother Not yet implemented");
697

    
698
	}
699

    
700
	/* (non-Javadoc)
701
	 * @see fr_jussieu_snv_lis.base.IControlerBase#changeMother(fr_jussieu_snv_lis.base.Variable, fr_jussieu_snv_lis.base.Variable)
702
	 */
703
	@Override
704
	public void changeMother(Variable current, Variable mother) {
705
		logger.warn("changeMother Not yet implemented");
706

    
707
	}
708

    
709
	/* (non-Javadoc)
710
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistVariable()
711
	 */
712
	@Override
713
	public boolean checkExistVariable() {
714
		logger.warn("checkExistVariable Not yet implemented");
715
		return false;
716
	}
717

    
718
	/* (non-Javadoc)
719
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistVariable(fr_jussieu_snv_lis.base.Variable)
720
	 */
721
	@Override
722
	public boolean checkExistVariable(Variable v) {
723
		logger.warn("checkExistVariable Not yet implemented");
724
		return false;
725
	}
726

    
727
	/* (non-Javadoc)
728
	 * @see fr_jussieu_snv_lis.base.IControlerBase#findVariableByName(java.lang.String)
729
	 */
730
	@Override
731
	public Variable findVariableByName(String str) {
732
		logger.warn("findVariableByName implemented as super");
733
		return super.findVariableByName(str);
734
	}
735
	
736
	/**
737
	 * Returns the variable with variable.uuid equal to uuid. 
738
	 * Returns <code>null</code> if no such variable exists or
739
	 * if <code>uuid == null</code>
740
	 * @param uuid
741
	 * @return
742
	 */
743
	public Variable findVariableByUuid(UUID uuid) {
744
		if (uuid == null){
745
			return null;
746
		}
747
		//TODO improve performance by storing variables also in a
748
		//hashmap
749
		for (Variable var : base.getVariables()) {
750
			if (uuid.equals(var.getUuid())) {
751
				return var;
752
			}
753
		}
754
		return null;
755
	}
756

    
757
	/* (non-Javadoc)
758
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkExistanceOneVariable(java.lang.String)
759
	 */
760
	@Override
761
	public boolean checkExistanceOneVariable(String s) {
762
		logger.warn("checkExistanceOneVariable implemented as super");
763
		return super.checkExistanceOneVariable(s);
764
	}
765

    
766
	/* (non-Javadoc)
767
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkCommunModeName(fr_jussieu_snv_lis.base.Variable[])
768
	 */
769
	@Override
770
	public boolean checkCommunModeName(Variable[] tab) {
771
		logger.warn("checkCommunModeName Not yet implemented");
772
		return false;
773
	}
774

    
775
	/* (non-Javadoc)
776
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkNumericalType(fr_jussieu_snv_lis.base.Variable[])
777
	 */
778
	@Override
779
	public boolean checkNumericalType(Variable[] tab) {
780
		logger.warn("checkNumericalType Not yet implemented");
781
		return false;
782
	}
783

    
784
	/* (non-Javadoc)
785
	 * @see fr_jussieu_snv_lis.base.IControlerBase#checkStateNumber(fr_jussieu_snv_lis.base.Variable[])
786
	 */
787
	@Override
788
	public boolean checkStateNumber(Variable[] tab) {
789
		logger.warn("checkStateNumber Not yet implemented");
790
		return false;
791
	}
792

    
793
	/* (non-Javadoc)
794
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createNewVariable(java.lang.String)
795
	 */
796
	@Override
797
	public Variable createNewVariable(String name) {
798
		logger.warn("createNewVariable Not yet implemented");
799
		return null;
800
	}
801

    
802
	/* (non-Javadoc)
803
	 * @see fr_jussieu_snv_lis.base.IControlerBase#createNewVariableNumOrEnum(java.lang.String, java.lang.String)
804
	 */
805
	@Override
806
	public Variable createNewVariableNumOrEnum(String name, String type) {
807
		logger.warn("createNewVariableNumOrEnum Not yet implemented");
808
		return null;
809
	}
810

    
811
	/* (non-Javadoc)
812
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addNewVariableAndItsModesToMatrix(fr_jussieu_snv_lis.base.Variable)
813
	 */
814
	@Override
815
	public void addNewVariableAndItsModesToMatrix(Variable newVariable) {
816
		logger.warn("addNewVariableAndItsModesToMatrix Not yet implemented");
817
	}
818

    
819
	/* (non-Javadoc)
820
	 * @see fr_jussieu_snv_lis.base.IControlerBase#addNewVariableNumAndItsModesToMatrix(fr_jussieu_snv_lis.base.Variable)
821
	 */
822
	@Override
823
	public void addNewVariableNumAndItsModesToMatrix(Variable newVariable) {
824
		logger.warn("addNewVariableNumAndItsModesToMatrix Not yet implemented");
825
	}
826

    
827
	/* (non-Javadoc)
828
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariableFromMatrix(fr_jussieu_snv_lis.base.Variable)
829
	 */
830
	@Override
831
	public void deleteVariableFromMatrix(Variable variable) {
832
		logger.warn("deleteVariableFromMatrix Not yet implemented");
833
	}
834

    
835
	/* (non-Javadoc)
836
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariable(fr_jussieu_snv_lis.base.Variable)
837
	 */
838
	@Override
839
	public void deleteVariable(Variable va) {
840
		logger.warn("deleteVariable Not yet implemented");
841
	}
842

    
843
	/* (non-Javadoc)
844
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariableAndAllDaughters(fr_jussieu_snv_lis.base.Variable)
845
	 */
846
	@Override
847
	public void deleteVariableAndAllDaughters(Variable v) {
848
		logger.warn("deleteVariableAndAllDaughters Not yet implemented");
849
	}
850

    
851
	/* (non-Javadoc)
852
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariablesAndAllDaughters(fr_jussieu_snv_lis.base.Variable[])
853
	 */
854
	@Override
855
	public void deleteVariablesAndAllDaughters(Variable[] tab) {
856
		logger.warn("deleteVariablesAndAllDaughters Not yet implemented");
857
	}
858

    
859
	/* (non-Javadoc)
860
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariableWithoutDaughters(fr_jussieu_snv_lis.base.Variable)
861
	 */
862
	@Override
863
	public void deleteVariableWithoutDaughters(Variable v) {
864
		logger.warn("deleteVariableWithoutDaughters Not yet implemented");
865

    
866
	}
867

    
868
	/* (non-Javadoc)
869
	 * @see fr_jussieu_snv_lis.base.IControlerBase#deleteVariablesWithoutDaughters(fr_jussieu_snv_lis.base.Variable[])
870
	 */
871
	@Override
872
	public void deleteVariablesWithoutDaughters(Variable[] tab) {
873
		logger.warn("deleteVariablesWithoutDaughters Not yet implemented");
874
	}
875

    
876
	/* (non-Javadoc)
877
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariableDescendant(java.util.List, fr_jussieu_snv_lis.base.Variable)
878
	 */
879
	@Override
880
	public List<Variable> getVariableDescendant(List<Variable> listDescendant,
881
			Variable v) {
882
		logger.warn("getVariableDescendant Not yet implemented");
883
		return null;
884
	}
885

    
886
	/* (non-Javadoc)
887
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariableDaughters(fr_jussieu_snv_lis.base.Variable)
888
	 */
889
	@Override
890
	public List<Variable> getVariableDaughters(Variable v) {
891
		return super.getVariableDaughters(v);
892
	}
893

    
894
	/* (non-Javadoc)
895
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariablesWithoutMother()
896
	 */
897
	@Override
898
	public List<Variable> getVariablesWithoutMother() {
899
		return super.getVariablesWithoutMother();
900
	}
901

    
902
	/* (non-Javadoc)
903
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariablesWithoutMother(java.util.List)
904
	 */
905
	@Override
906
	public List<Variable> getVariablesWithoutMother(List<Variable> variables) {
907
		return super.getVariablesWithoutMother(variables);
908
	}
909

    
910
	/* (non-Javadoc)
911
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariablesWithoutDaughter(java.util.List)
912
	 */
913
	@Override
914
	public List<Variable> getVariablesWithoutDaughter(List<Variable> variables) {
915
		logger.warn("getVariablesWithoutDaughter Not yet implemented");
916
		return null;
917
	}
918

    
919
	/* (non-Javadoc)
920
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getListVariable()
921
	 */
922
	@Override
923
	public List<Variable> getListVariable() {
924
		List<Variable> result = base.getVariables();
925
//		List<FeatureNode> rootChildren = getFeatureTree().getRootChildren();
926
//		List<Variable> result = cdmXperAdapter.adaptFeatureListToVariableList(-1, rootChildren);
927
		return result;  //base.getVariables();
928
	}
929

    
930
	/* (non-Javadoc)
931
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariablesByGroup(java.util.List, fr_jussieu_snv_lis.base.Group)
932
	 */
933
	@Override
934
	public List<Variable> getVariablesByGroup(List<Variable> variables,	Group group) {
935
		logger.warn("getVariablesByGroup Not yet implemented");
936
		return null;
937
	}
938

    
939
	/* (non-Javadoc)
940
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getVariablesWithoutGroup(java.util.List)
941
	 */
942
	@Override
943
	public List<Variable> getVariablesWithoutGroup(List<Variable> variables) {
944
		logger.warn("getVariablesWithoutGroup only implemented as super");
945
		return super.getVariablesWithoutGroup(variables);
946
	}
947

    
948

    
949
	/* (non-Javadoc)
950
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getCurrentVar()
951
	 */
952
	@Override
953
	public Variable getCurrentVar() {
954
		return super.getCurrentVar();
955
	}
956

    
957
	/* (non-Javadoc)
958
	 * @see fr_jussieu_snv_lis.base.IControlerBase#setCurrentVar(fr_jussieu_snv_lis.base.Variable)
959
	 */
960
	@Override
961
	public void setCurrentVar(Variable var) {
962
		super.setCurrentVar(var);
963
	}
964

    
965
	/* (non-Javadoc)
966
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getCurrentInd()
967
	 */
968
	@Override
969
	public Individual getCurrentInd() {
970
		return super.getCurrentInd();
971
	}
972

    
973
	/* (non-Javadoc)
974
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getCurrentIndArray()
975
	 */
976
	@Override
977
	public Individual[] getCurrentIndArray() {
978
		return super.getCurrentIndArray();
979
	}
980
	
981
	/* (non-Javadoc)
982
	 * @see fr_jussieu_snv_lis.base.IControlerBase#setCurrentInd(fr_jussieu_snv_lis.base.Individual)
983
	 */
984
	@Override
985
	public void setCurrentInd(Individual ind) {
986
		super.setCurrentInd(ind);
987
	}
988

    
989
	/* (non-Javadoc)
990
	 * @see fr_jussieu_snv_lis.base.IControlerBase#setCurrentIndArray(fr_jussieu_snv_lis.base.Individual[])
991
	 */
992
	@Override
993
	public void setCurrentIndArray(Individual[] tab) {
994
		super.setCurrentIndArray(tab);
995
	}
996

    
997
	/* (non-Javadoc)
998
	 * @see fr_jussieu_snv_lis.base.IControlerBase#setCurrentIndArray(java.lang.Object[])
999
	 */
1000
	@Override
1001
	public void setCurrentIndArray(Object[] tab) {
1002
		super.setCurrentIndArray(tab);
1003
	}
1004

    
1005

    
1006
	/* (non-Javadoc)
1007
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getSortedIndividuals()
1008
	 */
1009
	@Override
1010
	public List<Individual> getSortedIndividuals() {
1011
		logger.warn("getSortedIndividuals Not yet implemented");
1012
		return null;
1013
	}
1014

    
1015
	/* (non-Javadoc)
1016
	 * @see fr_jussieu_snv_lis.base.IControlerBase#getSortedGroups()
1017
	 */
1018
	@Override
1019
	public List<Group> getSortedGroups() {
1020
		logger.warn("getSortedGroups Not yet implemented");
1021
		return null;
1022
	}
1023

    
1024
	/* (non-Javadoc)
1025
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveIndividualTo(int, fr_jussieu_snv_lis.base.Individual)
1026
	 */
1027
	@Override
1028
	public void moveIndividualTo(int i, Individual ind) {
1029
		logger.warn("moveIndividualTo Not yet implemented");
1030

    
1031
	}
1032

    
1033
	/* (non-Javadoc)
1034
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveVariableTo(int, fr_jussieu_snv_lis.base.Variable)
1035
	 */
1036
	@Override
1037
	public void moveVariableTo(int i, Variable v) {
1038
		logger.warn("moveVariableTo Not yet implemented");
1039
	}
1040

    
1041
	/* (non-Javadoc)
1042
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveVariablesTo(int, java.util.List)
1043
	 */
1044
	@Override
1045
	public void moveVariablesTo(int i, List<Variable> a) {
1046
		logger.warn("moveVariablesTo Not yet implemented");
1047
	}
1048

    
1049
	/* (non-Javadoc)
1050
	 * @see fr_jussieu_snv_lis.base.IControlerBase#moveGroupTo(int, fr_jussieu_snv_lis.base.Group)
1051
	 */
1052
	@Override
1053
	public void moveGroupTo(int i, Group g) {
1054
		logger.warn("moveGroupTo Not yet implemented");
1055
	}
1056

    
1057

    
1058
}
(3-3/3)