1 /*********************************************************************** 2 * Copyright (c) 2000-2004 The Apache Software Foundation. * 3 * All rights reserved. * 4 * ------------------------------------------------------------------- * 5 * Licensed under the Apache License, Version 2.0 (the "License"); you * 6 * may not use this file except in compliance with the License. You * 7 * may obtain a copy of the License at: * 8 * * 9 * http://www.apache.org/licenses/LICENSE-2.0 * 10 * * 11 * Unless required by applicable law or agreed to in writing, software * 12 * distributed under the License is distributed on an "AS IS" BASIS, * 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * 14 * implied. See the License for the specific language governing * 15 * permissions and limitations under the License. * 16 ***********************************************************************/ 17 18 package org.apache.james.services; 19 20 import org.apache.avalon.cornerstone.services.store.Store; 21 22 /** 23 * Interface for an object which provides MailRepositories or SpoolRepositories 24 * 25 * <p>The select method requires a configuration object with the form: 26 * <br><repository destinationURL="file://path-to-root-dir-for-repository" 27 * <br> type="MAIL"> 28 * <br></repository> 29 * <p>This configuration, including any included child elements, is used to 30 * configure the returned component. 31 * 32 * 33 * @version This is $Revision: 1.5.4.3 $ 34 */ 35 public interface MailStore 36 extends Store { 37 38 /** 39 * The component role used by components implementing this service 40 */ 41 String ROLE = "org.apache.james.services.MailStore"; 42 43 // MailRepository getInbox(String user); 44 45 /** 46 * Convenience method to get the inbound spool repository. 47 */ 48 SpoolRepository getInboundSpool(); 49 50 } 51 52