samples/componentinjection/anagram-modular/src-app-serviceloader/org/apidesign/anagram/app/serviceloader/AnagramsWithServiceLoader.java
author Jaroslav Tulach <jtulach@netbeans.org>
Sat, 14 Jun 2008 10:08:43 +0200
changeset 253 08983504f8a7
parent 252 763bf709a318
permissions -rw-r--r--
Shortening lines
jtulach@240
     1
package org.apidesign.anagram.app.serviceloader;
jtulach@240
     2
jtulach@252
     3
import java.util.Iterator;
jtulach@240
     4
import org.apidesign.anagram.api.Scrambler;
jtulach@240
     5
import org.apidesign.anagram.api.WordLibrary;
jtulach@240
     6
import org.apidesign.anagram.gui.Anagrams;
jtulach@241
     7
import java.util.ServiceLoader;
jtulach@240
     8
jtulach@240
     9
// BEGIN: anagram.serviceloader.Anagrams
jtulach@240
    10
class AnagramsWithServiceLoader extends Anagrams {
jtulach@240
    11
jtulach@240
    12
    public AnagramsWithServiceLoader() {
jtulach@240
    13
    }
jtulach@240
    14
jtulach@240
    15
    @Override
jtulach@240
    16
    protected WordLibrary getWordLibrary() {
jtulach@253
    17
        Iterator<WordLibrary> it;
jtulach@253
    18
        it = ServiceLoader.load(WordLibrary.class).iterator();
jtulach@252
    19
        return it.hasNext() ? it.next() : null;
jtulach@240
    20
    }
jtulach@240
    21
jtulach@240
    22
    @Override
jtulach@240
    23
    protected Scrambler getScrambler() {
jtulach@253
    24
        Iterator<Scrambler> it;
jtulach@253
    25
        it = ServiceLoader.load(Scrambler.class).iterator();
jtulach@252
    26
        return it.hasNext() ? it.next() : null;
jtulach@240
    27
    }
jtulach@240
    28
jtulach@240
    29
}
jtulach@240
    30
// END: anagram.serviceloader.Anagrams