01: /*
02: * Created on 27-Feb-2006
03: */
04: package uk.org.ponder.springutil;
05:
06: /** An implementation of part of the non-bean-getting interface of
07: * DefaultListableBeanFactory. Unfortunately all the good names are already
08: * taken by Spring!
09: * @author Antranig Basman (amb26@ponder.org.uk)
10: *
11: */
12:
13: public interface BeanDefinitionSource {
14:
15: /**
16: * Returns a list of bean names which are known to correspond to beans
17: * implementing or derived from the supplied class. RSAC has tried slightly
18: * harder to resolve bean classes than Spring generally does, through walking
19: * chains of factory-methods.
20: *
21: * @param clazz A class or interface class to be searched for.
22: * @return A list of derived bean names.
23: */
24: public abstract String[] beanNamesForClass(Class clazz);
25:
26: /**
27: * Returns the class of this bean, if it can be statically determined,
28: * <code>null</code> if it cannot (i.e. this bean is the product of a
29: * factory-method of a class which is not yet known).
30: *
31: * @param beanname
32: * @return
33: */
34: public abstract Class getBeanClass(String beanname);
35:
36: }
|