View Javadoc

1   /**
2    *
3    * Copyright 2003-2004 The Apache Software Foundation
4    *
5    *  Licensed under the Apache License, Version 2.0 (the "License");
6    *  you may not use this file except in compliance with the License.
7    *  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  package org.apache.geronimo.system.configuration.cli;
18  
19  import java.io.*;
20  
21  /**
22   * A tool for use by clients who really know what they're doing (such as the
23   * installer).  You point this to a FileConfigurationList file, and give it
24   * a configuration name, and it adds the name to the file.  This should only
25   * be run while the server is down, and will only work if you have previous
26   * knowledge of which PersistentConfigurationList implementation is going to
27   * be used and what file it persists to.  This is NOT a general-purpose
28   * feature for users.
29   *
30   * @version $Rev: 355877 $ $Date: 2005-12-10 18:48:27 -0800 (Sat, 10 Dec 2005) $
31   */
32  public class AddStartupConfiguration {
33      public static void main(String[] args) {
34          try {
35              String file = args[0];
36              String configuration = args[1].trim();
37              BufferedReader in = new BufferedReader(new FileReader(file));
38              String line;
39              while((line = in.readLine()) != null) {
40                  if(line.trim().equals(configuration)) {
41                      in.close();
42                      System.exit(0);
43                  }
44              }
45              in.close();
46  
47              PrintWriter out = new PrintWriter(new FileWriter(file, true));
48              out.println(configuration);
49              out.close();
50          } catch (IOException e) {
51              e.printStackTrace();
52              System.exit(1);
53          }
54      }
55  }