/* * Created on 11.08.2004 * * @author Jens Guenther */ package de.unirostock.AbstractFactory.example; import java.net.URL; import javax.swing.ImageIcon; public class SchniggeFactory extends ShipFactory { /** * * @uml.property name="itsSingleton" * @uml.associationEnd multiplicity="(0 1)" */ private static ShipFactory itsSingleton; public static ShipFactory getShipFactory() { if( itsSingleton == null ) itsSingleton = new SchniggeFactory(); return itsSingleton; } private SchniggeFactory() { String ship = "img/Schnigge"; 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 SchniggeHull(); } public Masts createMasts(){ return new SchniggeMasts(); } public Sails createSails(){ return new SchniggeSails(); } public Ship createShip(){ return new Schnigge(); } }