001package io.avaje.inject.spi;
002
003/**
004 * Factory for creating a bean given a single request scope argument.
005 *
006 * @param <T> The type of bean to create
007 * @param <R> The request argument
008 */
009public interface BeanFactory<T, R> {
010
011  /**
012   * Create and return the bean.
013   */
014  T create(R argument);
015}