/* * Carrot2 project. * * Copyright (C) 2002-2016, Dawid Weiss, Stanisław Osiński. * All rights reserved. * * Refer to the full license file "carrot2.LICENSE" * in the root folder of the repository checkout or at: * http://www.carrot2.org/carrot2.LICENSE */ package org.carrot2.util.factory; /** * A {@link IFactory} that creates new instances of a given class. */ public final class SingletonFactory<T> implements IFactory<T> { private final T singleton; public <E extends T> SingletonFactory(E singleton) { this.singleton = singleton; } @Override public T createInstance() { return singleton; } }