You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2010/09/22 17:07:27 UTC
svn commit: r1000024 [3/3] - in
/directory/apacheds/branches/apacheds-apacheds-2.0: apacheds-installers/
apacheds-installers/src/main/installers/
installers-plugin/src/main/java/org/apache/directory/daemon/installers/
installers-plugin/src/main/java/or...
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/java/org/apache/directory/daemon/installers/solarispkg/SolarisPkgInstallerCommand.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/java/org/apache/directory/daemon/installers/solarispkg/SolarisPkgInstallerCommand.java?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/java/org/apache/directory/daemon/installers/solarispkg/SolarisPkgInstallerCommand.java (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/java/org/apache/directory/daemon/installers/solarispkg/SolarisPkgInstallerCommand.java Wed Sep 22 15:07:26 2010
@@ -104,139 +104,140 @@ public class SolarisPkgInstallerCommand
pkgTranslator = target.getPkgTranslator();
}
- File baseDirectory = target.getLayout().getInstallationDirectory();
- File imagesDirectory = baseDirectory.getParentFile();
-
- log.info( "Creating Solaris PKG Installer..." );
-
- // Creating the package directory
- File pkgDirectory = new File( imagesDirectory, target.getId() + "-pkg" );
- pkgDirectory.mkdirs();
-
- log.info( "Copying Solaris PKG installer files" );
-
- // Creating the root directories hierarchy
- File pkgRootDirectory = new File( pkgDirectory, "root" );
- pkgRootDirectory.mkdirs();
-
- // Copying the apacheds files in the '/opt/apacheds/' directory
- File apacheDsHomeDirectory = new File( pkgRootDirectory, "opt/apacheds" );
- try
- {
- // Copying the generated layout
- MojoHelperUtils.copyFiles( baseDirectory, apacheDsHomeDirectory );
-
- // Replacing the apacheds.conf file
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "apacheds.conf" ),
- new File( apacheDsHomeDirectory, "conf/apacheds.conf" ), false );
- }
- catch ( IOException e )
- {
- log.error( e.getMessage() );
- throw new MojoFailureException( "Failed to copy image (" + target.getLayout().getInstallationDirectory()
- + ") to the PKG directory (" + apacheDsHomeDirectory + ")" );
- }
-
- // Copying the instances in the '/var/opt/apacheds/default' directory
- File defaultInstanceDirectory = new File( pkgRootDirectory, "var/opt/apacheds" + "/default" );
- defaultInstanceDirectory.mkdirs();
- File debDefaultInstanceConfDirectory = new File( defaultInstanceDirectory, "conf" );
- debDefaultInstanceConfDirectory.mkdirs();
- new File( defaultInstanceDirectory, "ldif" ).mkdirs();
- new File( defaultInstanceDirectory, "log" ).mkdirs();
- new File( defaultInstanceDirectory, "partitions" ).mkdirs();
- new File( defaultInstanceDirectory, "run" ).mkdirs();
- File etcInitdDirectory = new File( pkgRootDirectory, "etc/init.d" );
- etcInitdDirectory.mkdirs();
- new File( pkgRootDirectory, "/var/run/apacheds" ).mkdirs();
- try
- {
- // Copying the apacheds.conf file in the default instance conf directory
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream(
- "apacheds-default.conf" ), new File( debDefaultInstanceConfDirectory, "apacheds.conf" ), false );
-
- // Copying the log4j.properties file in the default instance conf directory
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, new File( apacheDsHomeDirectory,
- "conf/log4j.properties" ), new File( debDefaultInstanceConfDirectory, "log4j.properties" ), false );
-
- // Copying the server.xml file in the default instance conf directory
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties,
- new File( apacheDsHomeDirectory, "conf/server.xml" ), new File( debDefaultInstanceConfDirectory,
- "server.xml" ), false );
-
- // Copying the init script in /etc/init.d/
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "apacheds-init" ),
- new File( etcInitdDirectory, "apacheds" + "-default" ), true );
-
- // Removing the redundant server.xml file (see DIRSERVER-1112)
- new File( apacheDsHomeDirectory, "conf/server.xml" ).delete();
- }
- catch ( IOException e )
- {
- log.error( e.getMessage() );
- throw new MojoFailureException( "Failed to copy resources files to the PKG directory ("
- + defaultInstanceDirectory + ")" );
- }
-
- // Copying the 'pkg' files
- try
- {
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "Prototype" ),
- new File( pkgDirectory, "Prototype" ), true );
-
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "pkginfo" ),
- new File( pkgDirectory, "pkginfo" ), true );
-
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "preinstall" ),
- new File( pkgDirectory, "preinstall" ), true );
-
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "postinstall" ),
- new File( pkgDirectory, "postinstall" ), true );
-
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "preremove" ),
- new File( pkgDirectory, "preremove" ), true );
-
- MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "postremove" ),
- new File( pkgDirectory, "postremove" ), true );
- }
- catch ( IOException e )
- {
- log.error( e.getMessage() );
- throw new MojoFailureException( "Failed to copy PKG 'control' file." );
- }
-
- // Creating the target folder
- new File( pkgDirectory, "target" ).mkdir();
-
- // Generating the PKG
- log.info( "Generating Solaris PKG Installer" );
- String finalName = target.getFinalName();
- if ( !finalName.endsWith( ".pkg" ) )
- {
- finalName = finalName + ".pkg";
- }
- try
- {
- // Generating the PKG
- Execute executeTask = new Execute();
- executeTask.setCommandline( new String[]
- { pkgMaker.getAbsolutePath(), "-o", "-r", "root", "-d", "target", "apacheds" } );
- executeTask.setSpawn( true );
- executeTask.setWorkingDirectory( pkgDirectory );
- executeTask.execute();
-
- // Packaging it as a single file
- executeTask.setCommandline( new String[]
- { pkgTranslator.getAbsolutePath(), "-s", "target", "../../" + finalName, "apacheds" } );
- executeTask.execute();
- }
- catch ( IOException e )
- {
- log.error( e.getMessage() );
- throw new MojoFailureException( "Failed while trying to generate the PKG: " + e.getMessage() );
- }
-
- log.info( "Solaris PKG generated at " + new File( imagesDirectory, finalName ) );
+ // TODO FIXME
+ // File baseDirectory = target.getLayout().getInstallationDirectory();
+ // File imagesDirectory = baseDirectory.getParentFile();
+ //
+ // log.info( "Creating Solaris PKG Installer..." );
+ //
+ // // Creating the package directory
+ // File pkgDirectory = new File( imagesDirectory, target.getId() + "-pkg" );
+ // pkgDirectory.mkdirs();
+ //
+ // log.info( "Copying Solaris PKG installer files" );
+ //
+ // // Creating the root directories hierarchy
+ // File pkgRootDirectory = new File( pkgDirectory, "root" );
+ // pkgRootDirectory.mkdirs();
+ //
+ // // Copying the apacheds files in the '/opt/apacheds/' directory
+ // File apacheDsHomeDirectory = new File( pkgRootDirectory, "opt/apacheds" );
+ // try
+ // {
+ // // Copying the generated layout
+ // MojoHelperUtils.copyFiles( baseDirectory, apacheDsHomeDirectory );
+ //
+ // // Replacing the apacheds.conf file
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "apacheds.conf" ),
+ // new File( apacheDsHomeDirectory, "conf/apacheds.conf" ), false );
+ // }
+ // catch ( IOException e )
+ // {
+ // log.error( e.getMessage() );
+ // throw new MojoFailureException( "Failed to copy image (" + target.getLayout().getInstallationDirectory()
+ // + ") to the PKG directory (" + apacheDsHomeDirectory + ")" );
+ // }
+ //
+ // // Copying the instances in the '/var/opt/apacheds/default' directory
+ // File defaultInstanceDirectory = new File( pkgRootDirectory, "var/opt/apacheds" + "/default" );
+ // defaultInstanceDirectory.mkdirs();
+ // File debDefaultInstanceConfDirectory = new File( defaultInstanceDirectory, "conf" );
+ // debDefaultInstanceConfDirectory.mkdirs();
+ // new File( defaultInstanceDirectory, "ldif" ).mkdirs();
+ // new File( defaultInstanceDirectory, "log" ).mkdirs();
+ // new File( defaultInstanceDirectory, "partitions" ).mkdirs();
+ // new File( defaultInstanceDirectory, "run" ).mkdirs();
+ // File etcInitdDirectory = new File( pkgRootDirectory, "etc/init.d" );
+ // etcInitdDirectory.mkdirs();
+ // new File( pkgRootDirectory, "/var/run/apacheds" ).mkdirs();
+ // try
+ // {
+ // // Copying the apacheds.conf file in the default instance conf directory
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream(
+ // "apacheds-default.conf" ), new File( debDefaultInstanceConfDirectory, "apacheds.conf" ), false );
+ //
+ // // Copying the log4j.properties file in the default instance conf directory
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, new File( apacheDsHomeDirectory,
+ // "conf/log4j.properties" ), new File( debDefaultInstanceConfDirectory, "log4j.properties" ), false );
+ //
+ // // Copying the server.xml file in the default instance conf directory
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties,
+ // new File( apacheDsHomeDirectory, "conf/server.xml" ), new File( debDefaultInstanceConfDirectory,
+ // "server.xml" ), false );
+ //
+ // // Copying the init script in /etc/init.d/
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "apacheds-init" ),
+ // new File( etcInitdDirectory, "apacheds" + "-default" ), true );
+ //
+ // // Removing the redundant server.xml file (see DIRSERVER-1112)
+ // new File( apacheDsHomeDirectory, "conf/server.xml" ).delete();
+ // }
+ // catch ( IOException e )
+ // {
+ // log.error( e.getMessage() );
+ // throw new MojoFailureException( "Failed to copy resources files to the PKG directory ("
+ // + defaultInstanceDirectory + ")" );
+ // }
+ //
+ // // Copying the 'pkg' files
+ // try
+ // {
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "Prototype" ),
+ // new File( pkgDirectory, "Prototype" ), true );
+ //
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "pkginfo" ),
+ // new File( pkgDirectory, "pkginfo" ), true );
+ //
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "preinstall" ),
+ // new File( pkgDirectory, "preinstall" ), true );
+ //
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "postinstall" ),
+ // new File( pkgDirectory, "postinstall" ), true );
+ //
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "preremove" ),
+ // new File( pkgDirectory, "preremove" ), true );
+ //
+ // MojoHelperUtils.copyAsciiFile( mojo, filterProperties, getClass().getResourceAsStream( "postremove" ),
+ // new File( pkgDirectory, "postremove" ), true );
+ // }
+ // catch ( IOException e )
+ // {
+ // log.error( e.getMessage() );
+ // throw new MojoFailureException( "Failed to copy PKG 'control' file." );
+ // }
+ //
+ // // Creating the target folder
+ // new File( pkgDirectory, "target" ).mkdir();
+ //
+ // // Generating the PKG
+ // log.info( "Generating Solaris PKG Installer" );
+ // String finalName = target.getFinalName();
+ // if ( !finalName.endsWith( ".pkg" ) )
+ // {
+ // finalName = finalName + ".pkg";
+ // }
+ // try
+ // {
+ // // Generating the PKG
+ // Execute executeTask = new Execute();
+ // executeTask.setCommandline( new String[]
+ // { pkgMaker.getAbsolutePath(), "-o", "-r", "root", "-d", "target", "apacheds" } );
+ // executeTask.setSpawn( true );
+ // executeTask.setWorkingDirectory( pkgDirectory );
+ // executeTask.execute();
+ //
+ // // Packaging it as a single file
+ // executeTask.setCommandline( new String[]
+ // { pkgTranslator.getAbsolutePath(), "-s", "target", "../../" + finalName, "apacheds" } );
+ // executeTask.execute();
+ // }
+ // catch ( IOException e )
+ // {
+ // log.error( e.getMessage() );
+ // throw new MojoFailureException( "Failed while trying to generate the PKG: " + e.getMessage() );
+ // }
+ //
+ // log.info( "Solaris PKG generated at " + new File( imagesDirectory, finalName ) );
}
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/LICENSE
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/LICENSE?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/LICENSE (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/LICENSE Wed Sep 22 15:07:26 2010
@@ -0,0 +1,343 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+--------------------------------------------------------------------------------------------------
+ANTLR 2 License
+
+We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company
+may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR,
+including the incorporation of ANTLR, or its output, into commerical software.
+
+We encourage users to develop software with ANTLR. However, we do ask that credit is given to us
+for developing ANTLR. By "credit", we mean that if you use ANTLR or incorporate any source code
+into one of your programs (commercial product, research project, or otherwise) that you acknowledge
+this fact somewhere in the documentation, research report, etc... If you like ANTLR and have developed
+a nice tool with the output, please mention that you developed it using ANTLR. In addition, we ask that
+the headers remain intact in our source code. As long as these guidelines are kept, we expect to
+continue enhancing this system and expect to make other tools available as they are completed.
+
+--------------------------------------------------------------------------------------------------
+/**
+ * JDBM LICENSE v1.00
+ *
+ * Redistribution and use of this software and associated documentation
+ * ("Software"), with or without modification, are permitted provided
+ * that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain copyright
+ * statements and notices. Redistributions must also contain a
+ * copy of this document.
+ *
+ * 2. Redistributions in binary form must reproduce the
+ * above copyright notice, this list of conditions and the
+ * following disclaimer in the documentation and/or other
+ * materials provided with the distribution.
+ *
+ * 3. The name "JDBM" must not be used to endorse or promote
+ * products derived from this Software without prior written
+ * permission of Cees de Groot. For written permission,
+ * please contact cg@cdegroot.com.
+ *
+ * 4. Products derived from this Software may not be called "JDBM"
+ * nor may "JDBM" appear in their names without prior written
+ * permission of Cees de Groot.
+ *
+ * 5. Due credit should be given to the JDBM Project
+ * (http://jdbm.sourceforge.net/).
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE JDBM PROJECT AND CONTRIBUTORS
+ * ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT
+ * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
+ * CEES DE GROOT OR ANY CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ * OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Copyright 2000 (C) Cees de Groot. All Rights Reserved.
+ * Contributions are Copyright (C) 2000 by their associated contributors.
+ *
+ * $Id: LICENSE.txt,v 1.1 2000/05/05 23:59:52 boisvert Exp $
+ */
+--------------------------------------------------------------------------------------------------
+Copyright (c) 2000-2006 The Legion Of The Bouncy Castle (http://www.bouncycastle.org)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software
+and associated documentation files (the "Software"), to deal in the Software without restriction,
+including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial
+portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
+PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
+--------------------------------------------------------------------------------------------------
+JUG (package org/safehaus/uuid) is licensed under the AL v2.
+--------------------------------------------------------------------------------------------------
+Opensymphony Quartz is licensed under the AL v2.
+--------------------------------------------------------------------------------------------------
+Spring is licensed under the AL v2.
+--------------------------------------------------------------------------------------------------
+slf4j license:
+Copyright (c) 2004-2007 QOS.ch All rights reserved. Permission is hereby granted, free of charge,
+to any person obtaining a copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation the rights to use, copy,
+modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit
+persons to whom the Software is furnished to do so, subject to the following conditions: The above
+copyright notice and this permission notice shall be included in all copies or substantial portions
+of the Software.
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT
+NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+--------------------------------------------------------------------------------------------------
+Copyright (c) 1999, 2004 Tanuki Software
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of the Java Service Wrapper and associated
+documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sub-license,
+and/or sell copies of the Software, and to permit persons to
+whom the Software is furnished to do so, subject to the
+following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+
+Portions of the Software have been derived from source code
+developed by Silver Egg Technology under the following license:
+
+Copyright (c) 2001 Silver Egg Technology
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sub-license, and/or
+sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/NOTICE
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/NOTICE?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/NOTICE (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/NOTICE Wed Sep 22 15:07:26 2010
@@ -0,0 +1,47 @@
+
+Apache Directory Server
+Copyright 2003-2008 The Apache Software Foundation
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+
+
+
+Safehaus JUG
+Copyright 2005 Safehaus
+
+This product includes software developed at
+Safehaus (http://docs.safehaus.org/display/HAUS/Home).
+
+OpenSymphony Quartz
+Copyright 2004-2005 OpenSymphony
+
+This product includes software developed at
+OpenSymphony (http://www.opensymphony.com/).
+
+ ======================================================================
+ == NOTICE file corresponding to section 4 d of the Apache License, ==
+ == Version 2.0, in this case for the Spring Framework distribution. ==
+ ======================================================================
+
+ This product includes software developed by
+ the Apache Software Foundation (http://www.apache.org).
+
+ This product also includes software developed by
+ Clinton Begin (http://www.ibatis.com).
+
+ The end-user documentation included with a redistribution, if any,
+ must include the following acknowledgement:
+
+ "This product includes software developed by the Spring Framework
+ Project (http://www.springframework.org)."
+
+ Alternatively, this acknowledgement may appear in the software itself,
+ if and wherever such third-party acknowledgements normally appear.
+
+ The names "Spring" and "Spring Framework" must not be used to
+ endorse or promote products derived from this software without
+ prior written permission. For written permission, please contact
+ rod.johnson@interface21.com or juergen.hoeller@interface21.com.
+
+
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/apacheds.init
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/apacheds.init?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/apacheds.init (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/apacheds.init Wed Sep 22 15:07:26 2010
@@ -0,0 +1,551 @@
+#! /bin/sh
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+# Shell script to start/stop ApacheDS
+# If you want to change ApacheDS service settings please modify the wrapper.conf
+# file for the instance you wish to change.
+# chkconfig: 2345 91 35
+# description: This script starts and stops ApacheDS
+#
+
+INSTANCE="$2"
+
+INSTALLATION_DIRECTORY="@installation.directory@"
+INSTANCES_DIRECTORY="@instances.directory@"
+INSTANCE_DIRECTORY="$INSTANCES_DIRECTORY/$INSTANCE"
+
+# Application
+APP_NAME="apacheds"
+APP_LONG_NAME="ApacheDS - $INSTANCE"
+
+# Wrapper
+WRAPPER_CMD="$INSTALLATION_DIRECTORY/bin/wrapper"
+WRAPPER_CONF="$INSTANCE_DIRECTORY/conf/wrapper.conf"
+
+# Priority at which to run the wrapper. See "man nice" for valid priorities.
+# nice is only used if a priority is specified.
+PRIORITY=
+
+# Location of the pid file.
+PIDDIR=$INSTANCE_DIRECTORY/run
+
+# If uncommented, causes the Wrapper to be shutdown using an anchor file.
+# When launched with the 'start' command, it will also ignore all INT and
+# TERM signals.
+#IGNORE_SIGNALS=true
+
+# If specified, the Wrapper will be run as the specified user.
+# IMPORTANT - Make sure that the user has the required privileges to write
+# the PID file and wrapper.log files. Failure to be able to write the log
+# file will cause the Wrapper to exit without any way to write out an error
+# message.
+# NOTE - This will set the user which is used to run the Wrapper as well as
+# the JVM and is not useful in situations where a privileged resource or
+# port needs to be allocated prior to the user being changed.
+RUN_AS_USER="@user@"
+
+# Do not modify anything beyond this point
+#-----------------------------------------------------------------------------
+
+# Get the fully qualified path to the script
+case $0 in
+ /*)
+ SCRIPT="$0"
+ ;;
+ ./*)
+ SCRIPT="`pwd`/`echo $0 | sed -e 's/^[ ]*\.\///'`"
+ ;;
+ *)
+ SCRIPT="`pwd`/`echo $0 | sed -e 's/^[ ]*//'`"
+ ;;
+esac
+
+# Resolve the true real path without any sym links.
+CHANGED=true
+while [ "X$CHANGED" != "X" ]
+do
+ # Change spaces to ":" so the tokens can be parsed.
+ SAFESCRIPT=`echo $SCRIPT | sed -e 's; ;:;g'`
+ # Get the real path to this script, resolving any symbolic links
+ TOKENS=`echo $SAFESCRIPT | sed -e 's;/; ;g'`
+ REALPATH=
+ for C in $TOKENS; do
+ # Change any ":" in the token back to a space.
+ C=`echo $C | sed -e 's;:; ;g'`
+ REALPATH="$REALPATH/$C"
+ # If REALPATH is a sym link, resolve it. Loop for nested links.
+ while [ -h "$REALPATH" ] ; do
+ LS="`ls -ld "$REALPATH"`"
+ LINK="`expr "$LS" : '.*-> \(.*\)$'`"
+ if expr "$LINK" : '/.*' > /dev/null; then
+ # LINK is absolute.
+ REALPATH="$LINK"
+ else
+ # LINK is relative.
+ REALPATH="`dirname "$REALPATH"`""/$LINK"
+ fi
+ done
+ done
+
+ if [ "$REALPATH" = "$SCRIPT" ]
+ then
+ CHANGED=""
+ else
+ SCRIPT="$REALPATH"
+ fi
+done
+
+# Change the current directory to the location of the script
+cd "`dirname "$REALPATH"`"
+REALDIR=`pwd`
+
+# If the PIDDIR is relative, set its value relative to the full REALPATH to avoid problems if
+# the working directory is later changed.
+FIRST_CHAR=`echo $PIDDIR | cut -c1,1`
+if [ "$FIRST_CHAR" != "/" ]
+then
+ PIDDIR=$REALDIR/$PIDDIR
+fi
+# Same test for WRAPPER_CMD
+FIRST_CHAR=`echo $WRAPPER_CMD | cut -c1,1`
+if [ "$FIRST_CHAR" != "/" ]
+then
+ WRAPPER_CMD=$REALDIR/$WRAPPER_CMD
+fi
+# Same test for WRAPPER_CONF
+FIRST_CHAR=`echo $WRAPPER_CONF | cut -c1,1`
+if [ "$FIRST_CHAR" != "/" ]
+then
+ WRAPPER_CONF=$REALDIR/$WRAPPER_CONF
+fi
+
+# Process ID
+ANCHORFILE="$PIDDIR/$INSTANCE.anchor"
+PIDFILE="$PIDDIR/$APP_NAME-$INSTANCE.pid"
+LOCKDIR="/var/lock/subsys"
+LOCKFILE="$LOCKDIR/$INSTANCE"
+pid=""
+
+# Resolve the location of the 'ps' command
+PSEXE="/usr/bin/ps"
+if [ ! -x "$PSEXE" ]
+then
+ PSEXE="/bin/ps"
+ if [ ! -x "$PSEXE" ]
+ then
+ echo "Unable to locate 'ps'."
+ echo "Please report this message along with the location of the command on your system."
+ exit 1
+ fi
+fi
+
+# Resolve the os
+DIST_OS=`uname -s | tr [:upper:] [:lower:] | tr -d [:blank:]`
+case "$DIST_OS" in
+ 'sunos')
+ DIST_OS="solaris"
+ ;;
+ 'hp-ux' | 'hp-ux64')
+ DIST_OS="hpux"
+ ;;
+ 'darwin')
+ DIST_OS="macosx"
+ ;;
+ 'unix_sv')
+ DIST_OS="unixware"
+ ;;
+esac
+
+# Resolve the architecture
+DIST_ARCH=`uname -p | tr [:upper:] [:lower:] | tr -d [:blank:]`
+if [ "$DIST_ARCH" = "unknown" ]
+then
+ DIST_ARCH=`uname -m | tr [:upper:] [:lower:] | tr -d [:blank:]`
+fi
+case "$DIST_ARCH" in
+ 'amd64' | 'athlon' | 'ia32' | 'ia64' | 'i386' | 'i486' | 'i586' | 'i686' | 'x86_64')
+ DIST_ARCH="x86"
+ ;;
+ 'ip27')
+ DIST_ARCH="mips"
+ ;;
+ 'power' | 'powerpc' | 'power_pc' | 'ppc64')
+ DIST_ARCH="ppc"
+ ;;
+ 'pa_risc' | 'pa-risc')
+ DIST_ARCH="parisc"
+ ;;
+ 'sun4u' | 'sparcv9')
+ DIST_ARCH="sparc"
+ ;;
+ '9000/800')
+ DIST_ARCH="parisc"
+ ;;
+esac
+
+outputFile() {
+ if [ -f "$1" ]
+ then
+ echo " $1 (Found but not executable.)";
+ else
+ echo " $1"
+ fi
+}
+
+# Build the nice clause
+if [ "X$PRIORITY" = "X" ]
+then
+ CMDNICE=""
+else
+ CMDNICE="nice -$PRIORITY"
+fi
+
+# Build the anchor file clause.
+if [ "X$IGNORE_SIGNALS" = "X" ]
+then
+ ANCHORPROP=
+ IGNOREPROP=
+else
+ ANCHORPROP=wrapper.anchorfile=\"$ANCHORFILE\"
+ IGNOREPROP=wrapper.ignore_signals=TRUE
+fi
+
+# Build the lock file clause. Only create a lock file if the lock directory exists on this platform.
+LOCKPROP=
+if [ -d $LOCKDIR ]
+then
+ if [ -w $LOCKDIR ]
+ then
+ LOCKPROP=wrapper.lockfile=\"$LOCKFILE\"
+ fi
+fi
+
+checkUser() {
+ # $1 touchLock flag
+ # $2 command
+ # $3 instance
+
+ # Check the configured user. If necessary rerun this script as the desired user.
+ if [ "X$RUN_AS_USER" != "X" ]
+ then
+ # Resolve the location of the 'id' command
+ IDEXE="/usr/xpg4/bin/id"
+ if [ ! -x "$IDEXE" ]
+ then
+ IDEXE="/usr/bin/id"
+ if [ ! -x "$IDEXE" ]
+ then
+ IDEXE="/bin/id"
+ if [ ! -x "$IDEXE" ]
+ then
+ echo "Unable to locate 'id'."
+ echo "Please report this message along with the location of the command on your system."
+ exit 1
+ fi
+ fi
+ fi
+
+ if [ "`$IDEXE -u -n`" = "$RUN_AS_USER" ]
+ then
+ # Already running as the configured user. Avoid password prompts by not calling su.
+ RUN_AS_USER=""
+ fi
+ fi
+ if [ "X$RUN_AS_USER" != "X" ]
+ then
+ # If LOCKPROP and $RUN_AS_USER are defined then the new user will most likely not be
+ # able to create the lock file. The Wrapper will be able to update this file once it
+ # is created but will not be able to delete it on shutdown. If $2 is defined then
+ # the lock file should be created for the current command
+ if [ "X$LOCKPROP" != "X" ]
+ then
+ if [ "X$1" != "X" ]
+ then
+ # Resolve the primary group
+ RUN_AS_GROUP=`groups $RUN_AS_USER | awk '{print $3}' | tail -1`
+ if [ "X$RUN_AS_GROUP" = "X" ]
+ then
+ RUN_AS_GROUP=$RUN_AS_USER
+ fi
+ touch $LOCKFILE
+ chown $RUN_AS_USER:$RUN_AS_GROUP $LOCKFILE
+ fi
+ fi
+
+ # Still want to change users, recurse. This means that the user will only be
+ # prompted for a password once. Variables shifted by 1
+ su -m $RUN_AS_USER -c "\"$REALPATH\" $2 $3"
+
+ # Now that we are the original user again, we may need to clean up the lock file.
+ if [ "X$LOCKPROP" != "X" ]
+ then
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ # Wrapper is not running so make sure the lock file is deleted.
+ if [ -f "$LOCKFILE" ]
+ then
+ rm "$LOCKFILE"
+ fi
+ fi
+ fi
+
+ exit 0
+ fi
+}
+
+getpid() {
+ if [ -f "$PIDFILE" ]
+ then
+ if [ -r "$PIDFILE" ]
+ then
+ pid=`cat "$PIDFILE"`
+ #if [ "X$pid" != "X" ]
+ #then
+ # # It is possible that 'a' process with the pid exists but that it is not the
+ # # correct process. This can happen in a number of cases, but the most
+ # # common is during system startup after an unclean shutdown.
+ # # The ps statement below looks for the specific wrapper command running as
+ # # the pid. If it is not found then the pid file is considered to be stale.
+ # pidtest=`$PSEXE -p $pid -o args | grep "$WRAPPER_CMD" | tail -1`
+ # if [ "X$pidtest" = "X" ]
+ # then
+ # # This is a stale pid file.
+ # rm -f "$PIDFILE"
+ # echo "Removed stale pid file: $PIDFILE"
+ # pid=""
+ # fi
+ #fi
+ else
+ echo "Cannot read $PIDFILE."
+ exit 1
+ fi
+ fi
+}
+
+testpid() {
+ pid=`$PSEXE -p $pid | grep $pid | grep -v grep | awk '{print $1}' | tail -1`
+ if [ "X$pid" = "X" ]
+ then
+ # Process is gone so remove the pid file.
+ rm -f "$PIDFILE"
+ pid=""
+ fi
+}
+
+usage() {
+ echo "Please enter an instance name..."
+ echo "Usage: $0 <command> <instance name>"
+ echo " Available Commands: "
+ echo " console - Run in interactive mode with log output to the console."
+ echo " Press CTRL-C to stop."
+ echo " start - Run the instance in the background"
+ echo " stop - Stop the running instance"
+ echo " restart - Restart the instance if it is already running,"
+ echo " or start if it wasn't already running"
+ echo " status - Display the status of the instance (running or stopped)"
+ echo " dump - Request a JVM dump of the running process"
+}
+
+console() {
+ echo "Running $APP_LONG_NAME..."
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ # The string passed to eval must handles spaces in paths correctly.
+ COMMAND_LINE="$CMDNICE \"$WRAPPER_CMD\" \"$WRAPPER_CONF\" set.INSTANCE_DIRECTORY=\"$INSTANCE_DIRECTORY\" set.INSTANCE=\"$INSTANCE\" wrapper.syslog.ident=\"$APP_NAME\" wrapper.pidfile=\"$PIDFILE\" $ANCHORPROP $LOCKPROP wrapper.debug=true"
+ eval $COMMAND_LINE
+ else
+ echo "$APP_LONG_NAME is already running."
+ exit 1
+ fi
+}
+
+start() {
+ echo "Starting $APP_LONG_NAME..."
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ # The string passed to eval must handles spaces in paths correctly.
+ COMMAND_LINE="$CMDNICE \"$WRAPPER_CMD\" \"$WRAPPER_CONF\" set.INSTANCE_DIRECTORY=\"$INSTANCE_DIRECTORY\" set.INSTANCE=\"$INSTANCE\" wrapper.syslog.ident=\"$APP_NAME\" wrapper.pidfile=\"$PIDFILE\" wrapper.daemonize=TRUE $ANCHORPROP $IGNOREPROP $LOCKPROP"
+ eval $COMMAND_LINE
+ else
+ echo "$APP_LONG_NAME is already running."
+ exit 1
+ fi
+
+
+}
+
+stopit() {
+ echo "Stopping $APP_LONG_NAME..."
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ echo "$APP_LONG_NAME was not running."
+ else
+ if [ "X$IGNORE_SIGNALS" = "X" ]
+ then
+ # Running so try to stop it.
+ kill $pid
+ if [ $? -ne 0 ]
+ then
+ # An explanation for the failure should have been given
+ echo "Unable to stop $APP_LONG_NAME."
+ exit 1
+ fi
+ else
+ rm -f "$ANCHORFILE"
+ if [ -f "$ANCHORFILE" ]
+ then
+ # An explanation for the failure should have been given
+ echo "Unable to stop $APP_LONG_NAME."
+ exit 1
+ fi
+ fi
+
+ # We can not predict how long it will take for the wrapper to
+ # actually stop as it depends on settings in apacheds.conf.
+ # Loop until it does.
+ savepid=$pid
+ CNT=0
+ TOTCNT=0
+ while [ "X$pid" != "X" ]
+ do
+ # Show a waiting message every 5 seconds.
+ if [ "$CNT" -lt "5" ]
+ then
+ CNT=`expr $CNT + 1`
+ else
+ echo "Waiting for $APP_LONG_NAME to exit..."
+ CNT=0
+ fi
+ TOTCNT=`expr $TOTCNT + 1`
+
+ sleep 1
+
+ testpid
+ done
+
+ pid=$savepid
+ testpid
+ if [ "X$pid" != "X" ]
+ then
+ echo "Failed to stop $APP_LONG_NAME."
+ exit 1
+ else
+ echo "Stopped $APP_LONG_NAME."
+ fi
+ fi
+}
+
+status() {
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ echo "$APP_LONG_NAME is not running."
+ exit 1
+ else
+ echo "$APP_LONG_NAME is running ($pid)."
+ exit 0
+ fi
+}
+
+dump() {
+ echo "Dumping $APP_LONG_NAME..."
+ getpid
+ if [ "X$pid" = "X" ]
+ then
+ echo "$APP_LONG_NAME was not running."
+
+ else
+ kill -3 $pid
+
+ if [ $? -ne 0 ]
+ then
+ echo "Failed to dump $APP_LONG_NAME."
+ exit 1
+ else
+ echo "Dumped $APP_LONG_NAME."
+ fi
+ fi
+}
+
+list() {
+ echo "Available instances..."
+ for instance in $INSTANCE_HOME/* ; do
+ echo " " `basename $instance`;
+ done
+}
+
+# Make sure they entered an instance name
+if [[ ( $2 == "" ) && ( $1 == "start" || $1 == "stop" || $1 == "status" || $1 == "dump" ) ]]
+then
+ usage
+ echo
+ echo "Please enter an instance name to $1..."
+ echo
+ list
+ exit 1
+fi
+
+case "$1" in
+
+ 'console')
+ checkUser touchlock $1 $INSTANCE
+ console
+ ;;
+
+ 'start')
+ checkUser touchlock $1 $INSTANCE
+ start
+ ;;
+
+ 'stop')
+ checkUser "" $1 $INSTANCE
+ stopit
+ ;;
+
+ 'restart')
+ checkUser touchlock $1 $INSTANCE
+ stopit
+ start
+ ;;
+
+ 'status')
+ checkUser "" $1 $INSTANCE
+ status
+ ;;
+
+ 'dump')
+ checkUser "" $1 $INSTANCE
+ dump
+ ;;
+ 'list')
+ list
+ ;;
+
+ *)
+ echo "Usage: $0 { console | start | stop | restart | status | dump } <instance name>"
+ exit 1
+ ;;
+esac
+
+exit 0
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/log4j.properties
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/log4j.properties?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/log4j.properties (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/log4j.properties Wed Sep 22 15:07:26 2010
@@ -0,0 +1,39 @@
+#############################################################################
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#############################################################################
+log4j.rootCategory=WARN, R, stdout
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+
+log4j.appender.R=org.apache.log4j.RollingFileAppender
+log4j.appender.R.File=${apacheds.log.dir}/apacheds.log
+
+log4j.appender.R.MaxFileSize=1024KB
+# Keep some backup files
+log4j.appender.R.MaxBackupIndex=5
+
+log4j.appender.R.layout=org.apache.log4j.PatternLayout
+log4j.appender.R.layout.ConversionPattern=[%d{HH:mm:ss}] %p [%c] - %m%n
+
+log4j.appender.stdout.layout.ConversionPattern=[%d{HH:mm:ss}] %p [%c] - %m%n
+
+# with these we'll not get innundated when switching to DEBUG
+log4j.logger.org.apache.directory.shared.ldap.name=WARN
+log4j.logger.org.springframework=WARN
+log4j.logger.org.apache.directory.shared.codec=WARN
+log4j.logger.org.apache.directory.shared.asn1=WARN
+
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/apacheds-usr-bin.sh
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/apacheds-usr-bin.sh?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/apacheds-usr-bin.sh (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/apacheds-usr-bin.sh Wed Sep 22 15:07:26 2010
@@ -17,4 +17,4 @@
# specific language governing permissions and limitations
# under the License.
#
-/usr/local/${app.name}-${app.version}/bin/${app.name}.init $*
\ No newline at end of file
+/usr/local/apacheds-${version}/bin/apacheds $*
\ No newline at end of file
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/org.apache.directory.server.plist
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/org.apache.directory.server.plist?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/org.apache.directory.server.plist (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/org.apache.directory.server.plist Wed Sep 22 15:07:26 2010
@@ -31,13 +31,9 @@
<key>ProgramArguments</key>
<array>
- <string>/usr/local/${app.name}-${app.version}/bin/${app.name}</string>
- <string>/usr/local/${app.name}-${app.version}/conf/apacheds.conf</string>
- <string>set.INSTANCE_HOME=/usr/local/${app.name}-${app.version}/instances</string>
- <string>set.INSTANCE=default</string>
- <string>wrapper.syslog.ident=${app.name}</string>
- <string>wrapper.pidfile=/usr/local/${app.name}-${app.version}/instances/default/default.pid</string>
- <string>wrapper.daemonize=FALSE</string>
+ <string>/usr/local/apacheds-${version}/bin/apacheds</string>
+ <string>console</string>
+ <string>default</string>
</array>
<key>RunAtLoad</key>
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/postflight
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/postflight?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/postflight (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/macosxpkg/postflight Wed Sep 22 15:07:26 2010
@@ -20,7 +20,6 @@
#
# Setting the correct permission on the org.apache.directory.server.plist file
-#
chmod 644 /Library/LaunchDaemons/org.apache.directory.server.plist
#
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-installation.conf
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-installation.conf?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-installation.conf (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-installation.conf Wed Sep 22 15:07:26 2010
@@ -0,0 +1,76 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+wrapper.java.mainclass=org.apache.directory.server.ApacheDsTanukiWrapper
+wrapper.max_failed_invocations=1
+
+wrapper.java.classpath.1=../lib/*.jar
+
+# Java Library Path (location of Wrapper.DLL or libwrapper.so)
+wrapper.java.library.path.1=../lib
+
+# Java Additional Parameters
+wrapper.java.additional.1=-Dlog4j.configuration=file:///%INSTANCE_DIRECTORY%/conf/log4j.properties
+wrapper.java.additional.2=-Dapacheds.var.dir=%INSTANCE_DIRECTORY%
+wrapper.java.additional.3=-Dapacheds.log.dir=%INSTANCE_DIRECTORY%/log
+wrapper.java.additional.4=-Dapacheds.run.dir=%INSTANCE_DIRECTORY%/run
+wrapper.java.additional.5=-Dapacheds.instance=%INSTANCE%
+
+# Initial Java Heap Size (in MB)
+#wrapper.java.initmemory=384
+
+# Maximum Java Heap Size (in MB)
+#wrapper.java.maxmemory=384
+
+# Application parameters. Add parameters as needed starting from 1
+wrapper.app.parameter.1=%INSTANCE_DIRECTORY%
+
+#********************************************************************
+# Wrapper Logging Properties
+#********************************************************************
+# Format of output for the console. (See docs for formats)
+wrapper.console.format=PM
+
+# Log Level for console output. (See docs for log levels)
+wrapper.console.loglevel=INFO
+
+# Log file to use for wrapper output logging.
+wrapper.logfile=%INSTANCE_DIRECTORY%/log/wrapper.log
+
+# Format of output for the log file. (See docs for formats)
+wrapper.logfile.format=LPTM
+
+# Log Level for log file output. (See docs for log levels)
+wrapper.logfile.loglevel=INFO
+
+# Maximum size that the log file will be allowed to grow to before
+# the log is rolled. Size is specified in bytes. The default value
+# of 0, disables log rolling. May abbreviate with the 'k' (kb) or
+# 'm' (mb) suffix. For example: 10m = 10 megabytes.
+wrapper.logfile.maxsize=1m
+
+# Maximum number of rolled log files which will be allowed before old
+# files are deleted. The default value of 0 implies no limit.
+wrapper.logfile.maxfiles=5
+
+# Log Level for sys/event log output. (See docs for log levels)
+wrapper.syslog.loglevel=NONE
+
+# Increasing the ping time out in order to let the server start
+wrapper.ping.timeout=240
\ No newline at end of file
Added: directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-instance.conf
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-instance.conf?rev=1000024&view=auto
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-instance.conf (added)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/installers-plugin/src/main/resources/org/apache/directory/daemon/installers/wrapper-instance.conf Wed Sep 22 15:07:26 2010
@@ -0,0 +1,43 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+#
+# In this file you can override parameters specified in the default
+# Apache Directory Server config file which is usually at
+# @installation.directory@/conf/wrapper.conf
+#
+# See also http://wrapper.tanukisoftware.org/doc/english/properties.html
+# For a list of properties that can be set.
+#
+# Common overrides shown commented below
+
+
+#include @installation.directory@/conf/wrapper.conf
+
+# Override the JRE used
+# wrapper.java.command=%JAVA_HOME%/bin/java
+
+# Override the JVM memory settings
+# Initial Java Heap Size (in MB)
+# wrapper.java.initmemory=384
+
+# Maximum Java Heap Size (in MB)
+# wrapper.java.maxmemory=384
+
+# apacheds.instance.start=auto
\ No newline at end of file
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/ApacheDsService.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/ApacheDsService.java?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/ApacheDsService.java (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/ApacheDsService.java Wed Sep 22 15:07:26 2010
@@ -122,7 +122,7 @@ public class ApacheDsService
private boolean isSchemaPartitionFirstExtraction = false;
- public void init( InstallationLayout layout, InstanceLayout instanceLayout ) throws Exception
+ public void init( InstanceLayout instanceLayout ) throws Exception
{
File partitionsDir = instanceLayout.getPartitionsDirectory();
if ( !partitionsDir.exists() )
@@ -138,10 +138,10 @@ public class ApacheDsService
cpReader = new ConfigPartitionReader( configPartition );
// Initialize the LDAP server
- initLdap( layout, instanceLayout );
+ initLdap( instanceLayout );
// Initialize the NTP server
- initNtp( layout );
+ initNtp();
// Initialize the DNS server (Not ready yet)
// initDns( layout );
@@ -150,10 +150,10 @@ public class ApacheDsService
// initDhcp( layout );
// Initialize the ChangePwd server (Not ready yet)
- initChangePwd( layout );
+ initChangePwd();
// Initialize the Kerberos server
- initKerberos( layout );
+ initKerberos();
// initialize the jetty http server
initHttpServer();
@@ -238,7 +238,7 @@ public class ApacheDsService
/**
* Initialize the LDAP server
*/
- private void initLdap( InstallationLayout layout, InstanceLayout instanceLayout ) throws Exception
+ private void initLdap( InstanceLayout instanceLayout ) throws Exception
{
LOG.info( "Starting the LDAP server" );
@@ -307,7 +307,7 @@ public class ApacheDsService
/**
* Initialize the NTP server
*/
- private void initNtp( InstallationLayout layout ) throws Exception
+ private void initNtp() throws Exception
{
ntpServer = cpReader.createNtpServer();
if ( ntpServer == null )
@@ -374,7 +374,7 @@ public class ApacheDsService
/**
* Initialize the KERBEROS server
*/
- private void initKerberos( InstallationLayout layout ) throws Exception
+ private void initKerberos( ) throws Exception
{
kdcServer = cpReader.createKdcServer();
if ( kdcServer == null )
@@ -407,7 +407,7 @@ public class ApacheDsService
/**
* Initialize the Change Password server
*/
- private void initChangePwd( InstallationLayout layout ) throws Exception
+ private void initChangePwd( ) throws Exception
{
changePwdServer = cpReader.createChangePwdServer();
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/UberjarMain.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/UberjarMain.java?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/UberjarMain.java (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/service/src/main/java/org/apache/directory/server/UberjarMain.java Wed Sep 22 15:07:26 2010
@@ -44,19 +44,18 @@ public class UberjarMain
*/
public static void main( String[] args ) throws Exception
{
- if ( ( args != null ) && ( args.length == 2 ) )
+ if ( ( args != null ) && ( args.length == 1 ) )
{
// Creating ApacheDS service
ApacheDsService service = new ApacheDsService();
- // Creating installation and instance layouts from the arguments
- InstallationLayout installationLayout = new InstallationLayout( args[0] );
- InstanceLayout instanceLayout = new InstanceLayout( args[1] );
+ // Creating instance layouts from the argument
+ InstanceLayout instanceLayout = new InstanceLayout( args[0] );
// Initializing the service
try
{
- service.init( installationLayout, instanceLayout );
+ service.init( instanceLayout );
}
catch ( Exception e )
{
@@ -70,8 +69,7 @@ public class UberjarMain
else
{
throw new IllegalArgumentException(
- "Program must be launched with 2 arguements (path the the installation directory "
- + "and path to the instance directory." );
+ "Program must be launched with 1 arguement, the path to the instance directory." );
}
}
}
Modified: directory/apacheds/branches/apacheds-apacheds-2.0/wrapper/src/main/java/org/apache/directory/server/ApacheDsTanukiWrapper.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/apacheds-apacheds-2.0/wrapper/src/main/java/org/apache/directory/server/ApacheDsTanukiWrapper.java?rev=1000024&r1=1000023&r2=1000024&view=diff
==============================================================================
--- directory/apacheds/branches/apacheds-apacheds-2.0/wrapper/src/main/java/org/apache/directory/server/ApacheDsTanukiWrapper.java (original)
+++ directory/apacheds/branches/apacheds-apacheds-2.0/wrapper/src/main/java/org/apache/directory/server/ApacheDsTanukiWrapper.java Wed Sep 22 15:07:26 2010
@@ -55,20 +55,19 @@ public class ApacheDsTanukiWrapper imple
public Integer start( String[] args )
{
log.info( "Starting the service..." );
-
- if ( ( args != null ) && ( args.length == 2 ) )
+
+ if ( ( args != null ) && ( args.length == 1 ) )
{
// Creating ApacheDS service
service = new ApacheDsService();
- // Creating installation and instance layouts from the arguments
- InstallationLayout installationLayout = new InstallationLayout( args[0] );
- InstanceLayout instanceLayout = new InstanceLayout( args[1] );
+ // Creating instance layouts from the argument
+ InstanceLayout instanceLayout = new InstanceLayout( args[0] );
// Initializing the service
try
{
- service.init( installationLayout, instanceLayout );
+ service.init( instanceLayout );
}
catch ( Exception e )
{
@@ -82,8 +81,7 @@ public class ApacheDsTanukiWrapper imple
else
{
throw new IllegalArgumentException(
- "Program must be launched with 2 arguements (path the the installation directory "
- + "and path to the instance directory." );
+ "Program must be launched with 1 arguement, the path to the instance directory." );
}
return null;