KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > nightlabs > ipanema > person > edit > fieldbased > PersonEditorStructFieldRegistry


1 /*
2  * Created on Jan 9, 2005
3  * by alex
4  *
5  */

6 package com.nightlabs.ipanema.person.edit.fieldbased;
7
8 import java.util.ArrayList JavaDoc;
9 import java.util.HashMap JavaDoc;
10 import java.util.List JavaDoc;
11 import java.util.Map JavaDoc;
12
13 import com.nightlabs.ipanema.person.id.PersonStructFieldID;
14
15 /**
16  * @author Alexander Bieber <alex[AT]nightlabs[DOT]de>
17  *
18  */

19 public class PersonEditorStructFieldRegistry {
20
21     /**
22      * Ordered registry for AbstractStructFields per editorType.<br/>
23      * key: String editorType<br/>
24      * value: List editorStructFieldIDs
25      * value: PersonStructFieldID editorStructFieldID
26      *
27      *
28      */

29     private Map JavaDoc registry = new HashMap JavaDoc();
30     
31     /**
32      * Returns the list of PersonStructFieldIDs for
33      * a specific editorType.
34      *
35      * @param editorType
36      * @return
37      */

38     public List JavaDoc getStructFieldList(String JavaDoc editorType) {
39         List JavaDoc list = (List JavaDoc)registry.get(editorType);
40         if (list == null) {
41             list = new ArrayList JavaDoc();
42             registry.put(editorType,list);
43         }
44         return list;
45     }
46     
47     public void addEditorStructFieldID(String JavaDoc editorType, PersonStructFieldID structFieldID) {
48         List JavaDoc list = getStructFieldList(editorType);
49         list.add(structFieldID);
50     }
51     
52     public void addEditorStructFieldID(String JavaDoc editorType, int idx, PersonStructFieldID structFieldID) {
53         List JavaDoc list = getStructFieldList(editorType);
54         list.add(idx, structFieldID);
55     }
56     
57     public void clearEditorStructFieldIDs(String JavaDoc editorType) {
58         registry.remove(editorType);
59     }
60
61     private static PersonEditorStructFieldRegistry sharedInstance;
62     
63     public static PersonEditorStructFieldRegistry getSharedInstance() {
64         if (sharedInstance == null)
65             sharedInstance = new PersonEditorStructFieldRegistry();
66         return sharedInstance;
67     }
68     
69 }
70
Popular Tags