KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > catalina > ServerFactory


1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one or more
3  * contributor license agreements. See the NOTICE file distributed with
4  * this work for additional information regarding copyright ownership.
5  * The ASF licenses this file to You under the Apache License, Version 2.0
6  * (the "License"); you may not use this file except in compliance with
7  * the License. You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */

17
18
19 package org.apache.catalina;
20
21 import org.apache.catalina.core.StandardServer;
22
23
24 /**
25  * <p><strong>ServerFactory</strong> allows the registration of the
26  * (singleton) <code>Server</code> instance for this JVM, so that it
27  * can be accessed independently of any existing reference to the
28  * component hierarchy. This is important for administration tools
29  * that are built around the internal component implementation classes.
30  *
31  * @author Craig R. McClanahan
32  * @version $Revision: 467222 $ $Date: 2006-10-24 05:17:11 +0200 (mar., 24 oct. 2006) $
33  */

34
35 public class ServerFactory {
36
37
38     // ------------------------------------------------------- Static Variables
39

40
41     /**
42      * The singleton <code>Server</code> instance for this JVM.
43      */

44     private static Server server = null;
45
46
47     // --------------------------------------------------------- Public Methods
48

49
50     /**
51      * Return the singleton <code>Server</code> instance for this JVM.
52      */

53     public static Server getServer() {
54         if( server==null )
55             server=new StandardServer();
56         return (server);
57
58     }
59
60
61     /**
62      * Set the singleton <code>Server</code> instance for this JVM. This
63      * method must <strong>only</strong> be called from a constructor of
64      * the (singleton) <code>Server</code> instance that is created for
65      * this execution of Catalina.
66      *
67      * @param theServer The new singleton instance
68      */

69     public static void setServer(Server theServer) {
70
71         if (server == null)
72             server = theServer;
73
74     }
75
76
77 }
78
Popular Tags