1 /* 2 * Created on Jun 7, 2006 by scytacki 3 * 4 * Copyright (c) 2006 Regents of the University of California (Regents). Created 5 * by TELS, Graduate School of Education, University of California at Berkeley. 6 * 7 * This software is distributed under the GNU Lesser General Public License, v2. 8 * 9 * Permission is hereby granted, without written agreement and without license 10 * or royalty fees, to use, copy, modify, and distribute this software and its 11 * documentation for any purpose, provided that the above copyright notice and 12 * the following two paragraphs appear in all copies of this software. 13 * 14 * REGENTS SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 15 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 * PURPOSE. THE SOFTWAREAND ACCOMPANYING DOCUMENTATION, IF ANY, PROVIDED 17 * HEREUNDER IS PROVIDED "AS IS". REGENTS HAS NO OBLIGATION TO PROVIDE 18 * MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. 19 * 20 * IN NO EVENT SHALL REGENTS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, 21 * SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, 22 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF 23 * REGENTS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 */ 25 26 package net.sf.sail.core.service; 27 28 /** 29 * Provides service implementations 30 * 31 * @author scytacki 32 * AUDIT07 33 */ 34 public interface ServiceContext { 35 36 /** 37 * @param serviceClass service class to add, used as key to the actual 38 * service implementation 39 * @param service the actual service implementation to use 40 */ 41 public void addService(Class<?> serviceClass, Object service); 42 43 /** 44 * @param serviceClass the service class to lookup 45 * @return serviceClass implementation that is being used 46 */ 47 public Object getService(Class<?> serviceClass); 48 }