/* * Created on 11.08.2004 * * @author Jens Guenther */ package de.unirostock.AbstractFactory.example; import java.net.URL; import javax.swing.ImageIcon; public class KraierFactory extends ShipFactory { /** * * @uml.property name="itsSingleton" * @uml.associationEnd multiplicity="(0 1)" */ private static ShipFactory itsSingleton; public static ShipFactory getShipFactory() { if( itsSingleton == null ) itsSingleton = new KraierFactory(); return itsSingleton; } private KraierFactory() { String ship = "img/Kraier"; URL imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_BOOK ); itsBook = new ImageIcon( imgUrl ); imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_PLAN ); itsPlan = new ImageIcon( imgUrl ); imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_HULL ); itsHull = new ImageIcon( imgUrl ); imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_MASTS ); itsMasts = new ImageIcon( imgUrl ); imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_SAILS ); itsSails = new ImageIcon( imgUrl ); imgUrl = getClass().getClassLoader().getResource( ship+FILEEXT_PHOTO ); itsPhoto = new ImageIcon( imgUrl ); } public Hull createHull(){ return new KraierHull(); } public Masts createMasts(){ return new KraierMasts(); } public Sails createSails(){ return new KraierSails(); } public Ship createShip(){ return new Kraier(); } }