samples/componentinjection/anagram-modular/src-app-lookup/org/apidesign/anagram/app/lookup/AnagramsWithLookup.java
1 package org.apidesign.anagram.app.lookup;
3 import org.apidesign.anagram.api.Scrambler;
4 import org.apidesign.anagram.api.WordLibrary;
5 import org.apidesign.anagram.gui.Anagrams;
6 import org.openide.util.Lookup;
8 // BEGIN: anagram.lookup.Anagrams
9 import org.openide.util.LookupEvent;
10 import org.openide.util.LookupListener;
11 class AnagramsWithLookup extends Anagrams {
13 public AnagramsWithLookup() {
17 protected WordLibrary getWordLibrary() {
18 return Lookup.getDefault().lookup(WordLibrary.class);
22 protected Scrambler getScrambler() {
23 return Lookup.getDefault().lookup(Scrambler.class);
25 // FINISH: anagram.lookup.Anagrams
27 private Lookup.Result<Scrambler> scramblers = Lookup.getDefault().lookupResult(Scrambler.class);
28 // BEGIN: anagram.lookup.Listeners
29 private Lookup.Result<WordLibrary> libraries
30 = Lookup.getDefault().lookupResult(WordLibrary.class);
31 private LookupListener listener = new LookupListener() {
32 public void resultChanged(LookupEvent ev) {
37 libraries.addLookupListener(listener);
38 // FINISH: anagram.lookup.Listeners
40 scramblers.addLookupListener(listener);
41 // initialize the results for listening
43 scramblers.allItems();