Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
JettyServer |
|
| 0.0;0 |
1 | /* | |
2 | * Copyright 2007-2008 The Kuali Foundation | |
3 | * | |
4 | * Licensed under the Educational Community License, Version 2.0 (the "License"); | |
5 | * you may not use this file except in compliance with the License. | |
6 | * You may obtain a copy of the License at | |
7 | * | |
8 | * http://www.opensource.org/licenses/ecl2.php | |
9 | * | |
10 | * Unless required by applicable law or agreed to in writing, software | |
11 | * distributed under the License is distributed on an "AS IS" BASIS, | |
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
13 | * See the License for the specific language governing permissions and | |
14 | * limitations under the License. | |
15 | */ | |
16 | package org.kuali.rice.test.server; | |
17 | ||
18 | import java.lang.annotation.Documented; | |
19 | import java.lang.annotation.ElementType; | |
20 | import java.lang.annotation.Inherited; | |
21 | import java.lang.annotation.Retention; | |
22 | import java.lang.annotation.RetentionPolicy; | |
23 | import java.lang.annotation.Target; | |
24 | ||
25 | import org.kuali.rice.test.lifecycles.JettyServerLifecycle.ConfigMode; | |
26 | ||
27 | /** | |
28 | * Annotation for bringing up an embedded JettyServer in unit tests | |
29 | * @author Kuali Rice Team (rice.collab@kuali.org) | |
30 | */ | |
31 | @Documented | |
32 | @Target({ElementType.TYPE, ElementType.METHOD}) | |
33 | @Retention(RetentionPolicy.RUNTIME) | |
34 | @Inherited | |
35 | public @interface JettyServer { | |
36 | /** | |
37 | * Indicate that the port should be pulled from a configuration parameter | |
38 | */ | |
39 | public static final int CONFIG_PARAM_PORT = -1; | |
40 | ||
41 | /** | |
42 | * The webapp file location, relative to the working directory of the unit test | |
43 | */ | |
44 | String webapp() default "../src/test/webapp"; | |
45 | /** | |
46 | * The context name; this will be prepended with a slash "/", so don't prepend a slash | |
47 | */ | |
48 | String context() default "SampleRiceClient"; | |
49 | /** | |
50 | * The port to bring jetty up on; CONFIG_PARAM_PORT to refer to a port from a config param | |
51 | */ | |
52 | int port() default CONFIG_PARAM_PORT; | |
53 | /** | |
54 | * The name of the config param from which to read the port | |
55 | */ | |
56 | String portConfigParam() default "kns.port"; | |
57 | /** | |
58 | * What to do with the webapp's Config: NONE - nothing, | |
59 | * OVERRIDE - replace the current context config (the test harness config) with the webapp's config | |
60 | * MERGE - merge the properties and objects into the current context config (but don't replace the whole config) | |
61 | */ | |
62 | ConfigMode configMode() default ConfigMode.OVERRIDE; | |
63 | /** | |
64 | * Whether to explicitly add the webapp's ResourceLoader to the GlobalResourceLoader | |
65 | */ | |
66 | boolean addWebappResourceLoader() default true; | |
67 | } |