01: /*
02: * ========================================================================
03: *
04: * Copyright 2001-2004 The Apache Software Foundation.
05: *
06: * Licensed under the Apache License, Version 2.0 (the "License");
07: * you may not use this file except in compliance with the License.
08: * You may obtain a copy of the License at
09: *
10: * http://www.apache.org/licenses/LICENSE-2.0
11: *
12: * Unless required by applicable law or agreed to in writing, software
13: * distributed under the License is distributed on an "AS IS" BASIS,
14: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15: * See the License for the specific language governing permissions and
16: * limitations under the License.
17: *
18: * ========================================================================
19: */
20: package org.apache.cactus.internal.configuration;
21:
22: import org.apache.cactus.util.ChainedRuntimeException;
23:
24: /**
25: * Provides access to the Cactus configuration parameters that are independent
26: * of any redirector. All Cactus configuration are defined as Java System
27: * Properties.
28: *
29: * @version $Id: BaseConfiguration.java 238991 2004-05-22 11:34:50Z vmassol $
30: */
31: public class BaseConfiguration implements Configuration {
32: /**
33: * Name of Cactus property that specify the URL up to the webapp context.
34: * This is the base URL to call for the redirectors. It is made up of :
35: * "http://" + serverName + port + "/" + contextName.
36: */
37: public static final String CACTUS_CONTEXT_URL_PROPERTY = "cactus.contextURL";
38:
39: /**
40: * Name of the Cactus property for defining an initializer (i.e. a class
41: * that is executed before the Cactus tests start on the client side).
42: */
43: private static final String CACTUS_INITIALIZER_PROPERTY = "cactus.initializer";
44:
45: /**
46: * @return the context URL under which our application to test runs.
47: */
48: public String getContextURL() {
49: // Try to read it from a System property first and then if it fails
50: // from the Cactus configuration file.
51: String contextURL = System
52: .getProperty(CACTUS_CONTEXT_URL_PROPERTY);
53:
54: if (contextURL == null) {
55: throw new ChainedRuntimeException(
56: "Missing Cactus property ["
57: + CACTUS_CONTEXT_URL_PROPERTY + "]");
58: }
59:
60: return contextURL;
61: }
62:
63: /**
64: * @return the initializer class (i.e. a class that is executed before the
65: * Cactus tests start on the client side) or null if none has been
66: * defined
67: */
68: public String getInitializer() {
69: return System.getProperty(CACTUS_INITIALIZER_PROPERTY);
70: }
71: }
|