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 }