001/* 002 * Copyright (c) 2006-2014 Nuxeo SA (http://nuxeo.com/) and others. 003 * 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 * 009 * Contributors: 010 * Florent Guillaume 011 */ 012package org.nuxeo.ecm.core.repository; 013 014import java.util.concurrent.Callable; 015 016/** 017 * Low-level Repository factory. 018 * <p> 019 * The repository factory to use is usually specified in the MBean configuration file. 020 */ 021public interface RepositoryFactory extends Callable<Object> { 022 023 void init(String repositoryName); 024 025 /** 026 * Constructs the low-level repository with the name previously passed to {@link #init}. 027 * 028 * @return a low-level Repository 029 */ 030 @Override 031 public Object call(); 032 033}