1 package com.sri.common.controller; 2 3 import java.io.Serializable; 4 5 /*** 6 * Helps locate services/other objects. 7 * 8 * @author Michael Rimov 9 * @version 1.0 10 */ 11 public interface ComponentServiceLocator extends Serializable { 12 13 /*** 14 * Retrieves the desired service defined by the key. 15 * 16 * @param serviceKey Object usually the service interface class, but 17 * may be other object. 18 * @return Object. 19 * @throws NoSuchServiceException if unable to locate the service. 20 * @throws java.lang.IllegalArgumentException 21 * if service key is null. 22 */ 23 Object locate(final Object serviceKey) throws NoSuchServiceException, IllegalArgumentException; 24 }