View Javadoc
1 /*
2 * ServiceCfg.java
3 * Created on August 16, 2003
4 *
5 * The Blues Framework - A lightweight application framework
6 * Copyright (C) 2003 Lonnie Pryor
7 * http://blues.lonniepryor.com
8 *
9 * This library is free software; you can redistribute it and/or modify it under the
10 * terms of the GNU Lesser General Public License as published by the Free Software
11 * Foundation; either version 2.1 of the License, or (at your option) any later
12 * version.
13 *
14 * This library is distributed in the hope that it will be useful, but WITHOUT ANY
15 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
16 * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public License along
19 * with this library; if not, write to:
20 *
21 * The Free Software Foundation, Inc.
22 * 59 Temple Place, Suite 330
23 * Boston, MA 02111-1307 USA
24 *
25 */
26 package com.lonniepryor.blues.cfg;
27
28 import com.lonniepryor.blues.util.Types;
29
30 /***
31 * Defines the requirements for a Blues service configuration.
32 *
33 * @author Lonnie Pryor
34 * @version $Revision: 1.1 $
35 */
36 public interface ServiceCfg {
37 /*** A specification satisfied by non-final JavaBeans. */
38 Types validServiceTypes = Types.javaBeans().and(Types.declaredFinal().not());
39
40 /***
41 * Returns the name of this service.
42 *
43 * @return The name of this service.
44 */
45 String getName ();
46
47 /***
48 * Return the type used to implement the service.
49 *
50 * @return The type used to implement the service.
51 */
52 Class getServiceType ();
53
54 /***
55 * Returns all of the interfaces that will be introduced to the service type.
56 *
57 * @return All of the interfaces that will be introduced to the service type.
58 */
59 Class[] getIntroducedInterfaces ();
60
61 /***
62 * Configures an instance of the service type.
63 *
64 * @param serviceInstance The instance of the service type to coinfigure.
65 * @param serviceDirectory The directory to look up refrenced services in.
66 */
67 void configure (Object serviceInstance, Directory serviceDirectory);
68 }
This page was automatically generated by Maven