This commit is contained in:
moparisthebest 2014-04-15 13:40:50 -04:00
commit 69e0600052
6631 changed files with 956457 additions and 0 deletions

177
BUILDING.txt Normal file
View File

@ -0,0 +1,177 @@
Welcome to Beehive
==================
To build Beehive, you will first need to check the source out from
Apache SVN and then install / configure required external software and
your shell environment.
Checkout Beehive from SVN
=========================
To do this, run the command:
svn checkout https://svn.apache.org/repos/asf/beehive/trunk
After running this command, you should have a directory "trunk/" which
contains the current Beehive source. If you ran this command in:
d:\java\beehive
you should have the directory:
d:\java\beehive\trunk
In the following steps, we'll refer to this as ${beehive.home}.
Install / configure external software and setup your shell
==========================================================
1) Java 5
Download: http://java.sun.com/j2se/1.5.0/download.jsp
Install Java 5 and set the JAVA_HOME environment variable to
refernce the JDK install directory. Ensure that $JAVA_HOME/bin is
available in your $PATH.
2) Ant 1.6.2+
Download: http://ant.apache.org/bindownload.cgi
Ant 1.6.2 is the minimum version required to build Beehive. Install
Ant 1.6.2 and set the ANT_HOME environment variable to reference the
Ant install directory. Ensure that $ANT_HOME/bin is available in your
$PATH. Copy junit.jar (in external/junit/) to $ANT_HOME/lib. This step is
required in order for the Ant <junit> tasks to work correctly.
3) Tomcat 5.0.x
Download: http://jakarta.apache.org/site/binindex.cgi#tomcat
Tomcat is used as the default test environment for Beehive. Install
Tomcat and set the CATALINA_HOME environment variable to reference the
Tomcat install directory. If you're installing Tomcat on Linux,
be sure to set the execute bit on the shell scripts in $CATALINA_HOME/bin.
If you installed these into d:\java, your environment variables
might look something like:
JAVA_HOME=d:\java\jdk1.5.0
CATALINA_HOME=d:\java\jakarta-tomcat-5.0.25
ANT_HOME=d:\java\apache-ant-1.6.2
Configure installed products
In order to run the Beehive tests, ensure that Tomcat has the the
"manager" role is defined in ${CATALINA_HOME}/conf/tomcat-users.xml
with a "manager" role and manager username/password of manager/manager.
This step is required in order to use the Tomcat Ant tasks to deploy
applications to Tomcat. An example of this file is available here:
${beehive.home}/test/conf/tomcat-users.xml
In the following examples, '$>' is your propmpt at $BEEHIVE_HOME, so if
you see '$>ant', type 'ant' (without the quotes) and press [enter].
In addition to the external software installed above, Beehive requires
one additional JAR to provide JSR 173 support for StAX, which is
required by XMLBeans. This JAR is downloaded from the network when
running Beehive's "bootstrap" target, so be sure to have a network
connection for your first build. A network connection is not required
for any subsequent builds. To install the JSR 173 API, run:
$>ant bootstrap
To check your Beehive build setup, run:
$>ant check.setup
This should end with "BUILD SUCCESSFUL" if you see any failures, be
sure to re-check your setup steps above.
To build Beehive, run:
$>ant clean deploy
To run the Beehive tests, run:
$>ant drt
Using Proxies With a Beehive Build
====================================
If you need to use proxies you can setup additional environment variables
so that the Ant "bootstrap" target is successful in downloading the
JSR 173 API JAR file.
PROXYHOST=<name of proxy host>
PROXYPORT=<port used for proxying>
PROXYUSER=<username for proxy authentication>
PROXYPASSWORD=<password for proxy authentication>
NONPROXYHOSTS=<hosts that should not be proxied>
SOCKSPROXYHOST=<socks proxy host name>
SOCKSPROXYPORT=<socks proxy port>
At a minimum, you will need to set PROXYHOST and PROXYPORT if your
network environment requires a proxy connection. To set these
environment variables in your shell, run:
set PROXYHOST=<name of proxy host>
in a Windows shell and
export PROXYHOST=<name of proxy host>
in a UNIX shell.
For information on proxy support using the <setproxy> task, please
visit http://ant.apache.org/manual/OptionalTasks/setproxy.html
Building Beehive documentation
=============================
The following documentation-related targets in
beehive/trunk/build.xml require that you have
Apache Forrest installed locally:
$>ant docs
$>ant build.dist
Before running these targets, complete the following steps.
1) Download and install Forrest 0.7 on your machine.
A list of available download locations is available at:
http://forrest.apache.org/mirrors.cgi
2) Copy the JAR file
apache-forrest-0.7/lib/core/xml-commons-resolver-1.1.jar
into
$ANT_HOME/lib
(This allows the Ant targets to call Forrest tasks.)
3) Ensure that FORREST_HOME is set to the following path.
On Windows machines:
set FORREST_HOME=C:\MyApacheStuff\apache-forrest-0.7
On Unix machines:
export FORREST_HOME=/MyApacheStuff/apache-forrest-0.7
4) Set the PATH as follows:
On Windows machines:
set PATH=%FORREST_HOME%\bin;%PATH%
On Unix machines:
export PATH=$FORREST_HOME/bin:$PATH
You are now ready to run these targets:
$>ant docs
$>ant build.dist

83
DEVELOPING.txt Normal file
View File

@ -0,0 +1,83 @@
Developing in Beehive
=====================
Hey; we're glad you're here! If you're interested in developing Beehive, the
information below is for you. First, make sure you've read the introduction
for Beehive contributors here:
http://wiki.apache.org/beehive/For_Beehive_Developers
This should help you get started setting up Beehive in your IDE and navigating
what code is where.
You'll also need to configure your Subversion client to handle end-of-line styles
correctly. To do this, follow the directions below.
Configuring your Subversion client
==================================
Every text file must have the svn:eol-style property set to 'native'. This
causes ends-of-line to be translated to the correct format for the local
operating system when files are checked out (e.g., LF on linux, CR/LF on
Windows). You can do this on a per-file basis using the 'svn propset' command:
svn propset svn:eol-style native <file path>
An easier way to ensure that all added files have the right properties set is
to use the "auto-props" feature in the SVN client configuration file. The
location of this file varies depending on the operating system (see
http://svnbook.red-bean.com/svnbook/book.html#svn-ch-7-sect-1).
On Linux/UNIX it is located:
~/.subversion/config
On Windows, it is typically located in a hidden directory:
%SYSROOT%\Documents and Settings\<user name>\Application Data\Subversion
If you have problems locating this, make sure you can view hidden directory
contents.
Confirm the "header" named [miscellany] is uncommented.
Then, add (uncomment) the following line under the "[miscellany]" section:
enable-auto-props = yes
Then, add (uncomment) an "[auto-props]" section (include the [auto-props]
header as well) with a list of file extensions that will automatically
trigger the svn:eol-style=native property:
[auto-props]
*.txt = svn:eol-style=native
*.java = svn:eol-style=native
*.jj = svn:eol-style=native
*.xml = svn:eol-style=native
*.xsd = svn:eol-style=native
*.xsdconfig = svn:eol-style=native
*.dtd = svn:eol-style=native
*.properties = svn:eol-style=native
*.jcs = svn:eol-style=native
*.jcx = svn:eol-style=native
*.jpf = svn:eol-style=native
*.jpfs = svn:eol-style=native
Global.app = svn:eol-style=native
*.jsp* = svn:eol-style=native
*.jspx = svn:eol-style=native
*.jspf = svn:eol-style=native
*.jsf = svn:eol-style=native
*.jsfb = svn:eol-style=native
*.faces = svn:eol-style=native
*.tld = svn:eol-style=native
*.tldx = svn:eol-style=native
*.tag = svn:eol-style=native
*.tagf = svn:eol-style=native
*.html = svn:eol-style=native
*.css = svn:eol-style=native
*.js = svn:eol-style=native
*.inc = svn:eol-style=native
*.sh = svn:eol-style=native;svn:executable
*.cmd = svn:eol-style=native
*.pl = svn:eol-style=native
*.py = svn:eol-style=native
*.beaninfo = svn:eol-style=native

43
LICENSE.jsr173-api Normal file
View File

@ -0,0 +1,43 @@
BEA Systems, Inc. ("BEA")
Binary Code License Agreement
JSR 173 "Streaming API for XML" - Reference Implementation
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT") CAREFULLY BEFORE OPENING THE SOFTWARE MEDIA PACKAGE.  BY OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE TERMS OF THIS AGREEMENT.  IF YOU ARE ACCESSING THE SOFTWARE ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF THESE TERMS BY SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS AGREEMENT.  IF YOU DO NOT AGREE TO ALL THESE TERMS, PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE OF PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED ELECTRONICALLY, SELECT THE "DECLINE" BUTTON AT THE END OF THIS AGREEMENT.
1.  LICENSE TO USE.  BEA grants you a non-exclusive and non-transferable, royalty-free license for the internal use only of the accompanying software and documentation and any error corrections provided by BEA (collectively "Software").
2.  RESTRICTIONS.  Software is confidential and copyrighted. Title to Software and all associated intellectual property rights is retained by BEA and/or its licensors.  Except as specifically authorized in any Supplemental License Terms, you may not make copies of Software, other than a single copy of Software for archival purposes.  Unless enforcement is prohibited by applicable law, you may not modify, decompile, or reverse engineer Software.  Licensee acknowledges that Licensed Software is not designed or intended for use in the design, construction, operation or maintenance of any nuclear facility. BEA disclaims any express or implied warranty of fitness for such uses.   No right, title or interest in or to any trademark, service mark, logo or trade name of BEA or its licensors is granted under this Agreement.
3. LIMITED WARRANTY.  BEA warrants to you that for a period of ninety (90) days from the date of purchase, as evidenced by a copy of the receipt, the media on which Software is furnished (if any) will be free of defects in materials and workmanship under normal use.  Except for the foregoing, Software is provided "AS IS".  Your exclusive remedy and BEA's entire liability under this limited warranty will be at BEA's option to replace Software media or refund the fee paid for Software.
4.  DISCLAIMER OF WARRANTY.  UNLESS SPECIFIED IN THIS AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID.
5.  LIMITATION OF LIABILITY.  TO THE EXTENT NOT PROHIBITED BY LAW, IN NO EVENT WILL BEA OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF BEA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.  In no event will BEA's liability to you, whether in contract, tort (including negligence), or otherwise, exceed the amount paid by you for Software under this Agreement.  The foregoing limitations will apply even if the above stated warranty fails of its essential purpose.
6.  Termination.  This Agreement is effective until terminated.  You may terminate this Agreement at any time by destroying all copies of Software.  This Agreement will terminate immediately without notice from BEA if you fail to comply with any provision of this Agreement.  Upon Termination, you must destroy all copies of Software.
7. Export Regulations. All Software and technical data delivered under this Agreement are subject to US export control laws and may be subject to export or import regulations in other countries.  You agree to comply strictly with all such laws and regulations and acknowledge that you have the responsibility to obtain such licenses to export, re-export, or import as may be required after delivery to you.
8.  U.S. Government Restricted Rights.  If Software is being acquired by or on behalf of the U.S. Government or by a U.S. Government prime contractor or subcontractor (at any tier), then the Government's rights in Software and accompanying documentation will be only as set forth in this Agreement; this is in accordance with 48 CFR 227.7201 through 227.7202-4 (for Department of Defense (DOD) acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD acquisitions).
9.  Governing Law.  Any action related to this Agreement will be governed by California law and controlling U.S. federal law.  No choice of law rules of any jurisdiction will apply.
10. Severability. If any provision of this Agreement is held to be unenforceable, this Agreement will remain in effect with the provision omitted, unless omission would frustrate the intent of the parties, in which case this Agreement will immediately terminate.
11. Integration.  This Agreement is the entire agreement between you and BEA relating to its subject matter.  It supersedes all prior or contemporaneous oral or written communications, proposals, representations and warranties and prevails over any conflicting or additional terms of any quote, order, acknowledgment, or other communication between the parties relating to its subject matter during the term of this Agreement.  No modification of this Agreement will be binding, unless in writing and signed by an authorized representative of each party.
JSR 173, REFERENCE IMPLEMENTATION
SUPPLEMENTAL LICENSE TERMS
These supplemental license terms ("Supplemental Terms") add to or modify the terms of the Binary Code License Agreement (collectively, the "Agreement"). Capitalized terms not defined in these Supplemental Terms shall have the same meanings ascribed to them in the Agreement. These Supplemental Terms shall supersede any inconsistent or conflicting terms in the Agreement, or in any license contained within the Software.
1. Software Internal Use and Development License Grant. Subject to the terms and conditions of this Agreement, BEA grants you a non-exclusive, non-transferable, limited license to reproduce internally and use internally the binary form of the Software, complete and unmodified, for the sole purpose of designing, developing and testing your Java applets and applications ("Programs").
2. License to Distribute Software.  In addition to the license granted in Section 1 (Software Internal Use and Development License Grant) of these Supplemental Terms, subject to the terms and conditions of this Agreement, BEA grants you a non-exclusive, non-transferable, limited license to reproduce and distribute the Software in binary form only, provided that you (i) distribute the Software complete and unmodified and only bundled as part of your Programs, (ii) do not distribute additional software intended to replace any component(s) of the Software, (iii) do not remove or alter any proprietary legends or notices contained in the Software, (iv) only distribute the Software subject to a license agreement that protects BEA's and its licensor<6F> interests consistent with the terms contained in this Agreement, and (v) agree to defend and indemnify BEA and its licensors from and against any damages, costs, liabilities, settlement amounts and/or expenses (including attorneys' fees) incurred in connection with any claim, lawsuit or action by any third party that arises or results from the use or distribution of any and all Programs and/or Software.
3. Source Code. Software may contain source code that is provided solely for reference purposes pursuant to the terms of this Agreement.  Such source code may not be redistributed unless expressly provided for in this Agreement.
4. Termination for Infringement.  Either party may terminate this Agreement immediately should any Software become, or in either party's opinion be likely to become, the subject of a claim of infringement of any intellectual property right.
For inquiries please contact: BEA Systems, Inc., 2315 North First Street, San Jose, CA 95131.

252
LICENSE.txt Normal file
View File

@ -0,0 +1,252 @@
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.
============================================
Licenses for Included Dependencies
============================================
The exceptions are as follows:
============================================
org/apache/beehive/netui/util/internal/concurrent/**
============================================
"Sun hereby grants you a non-exclusive, worldwide, non-transferrable
license to use and distribute the Java Software technologies as part
of a larger work in source and binary forms, with or without
modification, provided that the following conditions are met:
-Neither the name of or trademarks of Sun may be used to endorse or
promote products derived from the Java Software technology without
specific prior written permission.
-Redistributions of source or binary code must be accompanied by the
following notice and disclaimers:
Portions copyright Sun Microsystems, Inc. Used with kind permission.
This software is provided AS IS, without a warranty of any kind. ALL
EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND
WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PUPOSE OR
NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN
MICROSYSTEMS, INC. AND ITS LICENSORS SHALL NOT BE LIABLE
FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF
USING, MODIFYING OR DISTRIBUTING THE SOFTWARE OR ITS
DERIVATIVES. IN NO EVENT WILL SUN MICROSYSTEMS, INC. OR
ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR
DATA, OR FOR DIRECT, INDIRECT,CONSQUENTIAL, INCIDENTAL
OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF
THE THEORY OR LIABILITY, ARISING OUT OF THE USE OF OR
INABILITY TO USE SOFTWARE, EVEN IF SUN MICROSYSTEMS, INC.
HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
You acknowledge that Software is not designed, licensed or intended for
use in the design, construction, operation or maintenance of any nuclear
facility."
============================================
Spring Framework 1.1.5
============================================
Licensed under terms of the Apache Software License (ASL) 2.0, provided above.

34
NOTICE.txt Normal file
View File

@ -0,0 +1,34 @@
=========================================================================
== NOTICE file corresponding to section 4(d) of the Apache License, ==
== Version 2.0, in this case for the Apache Beehive distribution. ==
=========================================================================
This product includes software developed by
The Apache Software Foundation (http://www.apache.org/).
Portions of this software were originally based on the following:
* software copyright (c) 2000-2003, BEA Systems, <http://www.bea.com/>.
and are licensed to the Apache Software Foundation under the
"Software Grant and Corporate Contribution License Agreement"
Aside from contributions to the Apache Beehive project, this
software also includes:
* One or more JARs from the Jakarta Commons, Jakarta ORO, Log4J,
Struts, and Velocity Apache projects, Copyright (c) 1999-2006
Apache Software Foundation
* One or more JARs from the Spring Framework Project
See the LICENSE.txt file for information on all licenses associated with
this software.
COPYRIGHT NOTICES:
* Apache Beehive is bundled with source and binaries from the JSR-166
implementation licensed under the relevant license in LICENSE.txt.
The source code and license are avaialble at:
http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/src/main/readme
* Apache Beehive is bundled with binaries from The Spring Framework Project

21
README.txt Normal file
View File

@ -0,0 +1,21 @@
Welcome to Beehive!
If you've come here to learn more about Beehive, here are a few
starting points:
BUILDING.txt: How to build Beehive on your machine.
DEVELOPING.txt Technical notes on contributing/committing files.
LICENSE.txt: The Apache License and any other relevant licenses for this software.
NOTICE.txt: Attribution notices required by various contributions.
The Apache Beehive website is located at:
http://beehive.apache.org
And, the Beehive wiki is located at:
http://wiki.apache.org/beehive
Both of these contain additionl resources for getting started
with developing or using Beehive.

50
ant/axis-import.xml Normal file
View File

@ -0,0 +1,50 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<project name="Beehive/SVN/AxisImports" default="" basedir=".">
<import file="../beehive-imports.xml"/>
<path id="webservice.classpath">
<fileset id="webservice.jars" dir="${beehive.home}/external/axis-1.3">
<include name="axis.jar"/>
<include name="axis-ant.jar"/>
<include name="axis-schema.jar"/>
<include name="jaxrpc.jar"/>
<include name="saaj.jar"/>
<include name="wsdl4j-1.5.1.jar"/>
</fileset>
<path refid="commons-discovery.dependency.path"/>
<path refid="commons-logging.dependency.path"/>
</path>
<macrodef name="deploy-webservice-runtime">
<attribute name="appdir"/>
<sequential>
<copy todir="@{appdir}" failOnError="true">
<fileset refid="webservice.jars"/>
<fileset refid="commons-discovery.fileset"/>
<fileset refid="commons-logging.fileset"/>
</copy>
</sequential>
</macrodef>
</project>

45
ant/beehive-runtime.xml Normal file
View File

@ -0,0 +1,45 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<project name="Beehive/SVN/DeployWebappRuntime" default="usage" basedir=".">
<import file="../beehive-imports.xml"/>
<!-- ================================================================ -->
<!-- -->
<!-- Targets for deploying the Beehive runtime into a web application -->
<!-- -->
<!-- ================================================================ -->
<!-- params (location webapp.dir) -->
<target name="deploy.beehive.webapp.runtime" description="Deploy the Beehive webapp runtime given a webapp root as -Dwebapp.dir">
<ant target="deploy.netui" dir="${beehive.home}/netui/" inheritAll="false">
<property name="webapp.dir" location="${webapp.dir}"/>
</ant>
</target>
<target name="deploy.controls.webapp.runtime" description="Deploy the Beehive controls runtime given a webapp root as -Dwebapp.dir">
<ant target="deploy.controls.runtime" dir="${beehive.home}/controls/" inheritAll="false">
<property name="webapp.dir" location="${webapp.dir}"/>
</ant>
</target>
</project>

166
ant/beehive-tools.xml Normal file
View File

@ -0,0 +1,166 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<!--
This Ant build file contains <macrodef>s that are used to build
Beehive-related source artifacts.
-->
<project name="Beehive/Tools" default="usage">
<path id="apt.task.classpath">
<path refid="controls.dependency.path"/>
<path refid="velocity.dependency.path"/>
</path>
<macrodef name="build-schemas">
<attribute name="srcdir" description="The directory containing XML Schemas or XMLBeans xsdconfig files to build"/>
<attribute name="destdir" description="The directory to use for files generated during an XSD build"/>
<sequential>
<taskdef name="xmlbeanbuild"
classname="org.apache.xmlbeans.impl.tool.XMLBean"
classpathref="xbean.dependency.path"/>
<xmlbeanbuild classpathref="xbean.dependency.path"
schema="@{srcdir}"
classgendir="@{destdir}"
failonerror="true"/>
</sequential>
</macrodef>
<macrodef name="build-controls">
<attribute name="srcdir" description="The directory containing controls to build. Required."/>
<attribute name="destdir" description="The destination directory for compiled class files. Required."/>
<attribute name="tempdir" description="The temporary directory for generated files. Required."/>
<attribute name="classpathref" description="The classpath reference for building the controls. Required."/>
<attribute name="nocompile" default="false" description="Flag to decide whether to skip compilation. Optional; defaults to false"/>
<sequential>
<taskdef name="apt"
classname="org.apache.beehive.controls.runtime.generator.AptTask"
classpathref="apt.task.classpath"
onerror="fail"/>
<!--
since Velocity is required at build time for controls, it needs to be
explicitly added here via the velocity.dependency.path
-->
<path id="_controls.build.classpath">
<path refid="@{classpathref}"/>
<path refid="velocity.dependency.path"/>
</path>
<apt srcdir="@{srcdir}"
destdir="@{destdir}"
gendir="@{tempdir}"
classpathref="_controls.build.classpath"
compileByExtension="true"
srcExtensions="*.java,*.jcx,*.jcs,*.jws"
debug="true"
nocompile="@{nocompile}"/>
</sequential>
</macrodef>
<!--
This macrodef is intended for the compilation of the *page flow* portions of a web application.
This macrodef will *not* compile controls inside of a web application. If the web application
contains controls, they should be compiled first using the macrodef "build-controls";
once the compilation of the controls is complete, the page flows within the web app can be compiled
using the macrodef below.
-->
<macrodef name="build-pageflows">
<attribute name="srcdir" description="The root directory which will be scanned for source files. Required."/>
<attribute name="classpathref" description="The classpath reference for building page flows. Required."/>
<attribute name="sourcepathref"
default="_pageflow.default.sourcepath"
description="A reference to a path that contains all the source roots. Optional; defaults to a path that contains @{srcdir} and @{srcdir}/WEB-INF/src."/>
<attribute name="webcontentdir"
default="@{srcdir}"
description="The root location for web content (e.g., JSPs, web.xml, etc.). Optional; defaults to @{srcdir}."/>
<attribute name="destdir"
default="@{srcdir}/WEB-INF/classes"
description="The directory for compiled classes and generated resources. Optional; defaults to @{srcdir}/WEB-INF/classes."/>
<attribute name="tempdir"
default="@{srcdir}/WEB-INF/.tmpbeansrc"
description="The directory for any temporary or generated files. Optional; defaults to @{srcdir}/WEB-INF/.tmpbeansrc."/>
<attribute name="nocompile"
default="false"
description="Flag to decide whether to skip compilation. Optional; defaults to false"/>
<sequential>
<taskdef name="apt"
classname="org.apache.beehive.controls.runtime.generator.AptTask"
classpathref="apt.task.classpath"
onerror="fail"/>
<!--
since the annotation processor for JPFs isn't contained inside of the JPF runtime
JAR, it needs to be explicitly added here via the netui-compiler.dependency.path
-->
<path id="_pageflow.build.classpath">
<path refid="@{classpathref}"/>
<path refid="netui-compiler.dependency.path"/>
<path refid="velocity.dependency.path"/>
</path>
<path id="_pageflow.default.sourcepath">
<pathelement path="@{srcdir}"/>
<pathelement path="@{srcdir}/WEB-INF/src"/>
</path>
<property name="_pageflow.build.classpath" refid="_pageflow.build.classpath"/>
<property name="_pageflow.build.sourcepath" refid="@{sourcepathref}"/>
<echo> srcdir: @{srcdir}</echo>
<echo> classpath: ${_pageflow.build.classpath}</echo>
<echo> sourcepath: ${_pageflow.build.sourcepath}</echo>
<echo> webcontentdir: @{webcontentdir}</echo>
<echo> destdir: @{destdir}</echo>
<echo> tempdir: @{tempdir}</echo>
<mkdir dir="@{destdir}"/>
<apt srcdir="@{srcdir}"
destdir="@{destdir}"
gendir="@{tempdir}"
classpathref="_pageflow.build.classpath"
sourcepathref="@{sourcepathref}"
srcExtensions="*.jpf,*.jpfs,*.app,*.jsfb,*.java"
processorOptions="web.content.root=@{webcontentdir}"
debug="true"
nocompile="@{nocompile}"/>
</sequential>
</macrodef>
<!-- create a jar of a control -->
<taskdef name="control-jar"
classname="org.apache.beehive.controls.runtime.packaging.ControlJarTask"
classpathref="controls.dependency.path" onerror="report" />
<target name="usage" description="Print the usage for this Ant build file.">
<echo>
The beehive-tools.xml file contains Ant macros which can be used
to build Beehive related source artifacts such as Controls, Page Flows,
and XML Schemas. For examples of how to use these macros, see the
Beehive samples.
Note, this build file does not contain targets that can be called
directly on the command line.
</echo>
</target>
</project>

158
ant/geronimo-imports.xml Normal file
View File

@ -0,0 +1,158 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<project name="Beehive/SVN/GeronimoImports" default="usage" basedir=".">
<property environment="os"/>
<property name="geronimo.home" location="${os.GERONIMO_HOME}"/>
<!-- Properties used to run Geronimo -->
<property name="geronimo.username" value="system"/>
<property name="geronimo.password" value="manager"/>
<target name="deploy" description="Deploy a app to a running Geronimo server">
<fail unless="webapp.dir" message="Can't deploy webapp; the value ${webapp.dir} was unspecified"/>
<property name="_url" value="file://${webapp.dir}"/>
<echo>deploy webapp from ${_url} with context path ${context.path}</echo>
<java fork="true" jar="${geronimo.home}/bin/deployer.jar">
<arg value="--user"/>
<arg value="${geronimo.username}"/>
<arg value="--password"/>
<arg value="${geronimo.password}"/>
<arg value="deploy"/>
<arg value="${webapp.dir}"/>
</java>
<sleep seconds="5"/>
</target>
<target name="undeploy" description="Undeploy an app running on a Geronimo server">
<!-- context path as used here is actually the targetModuleId for the app to undeploy -->
<fail unless="context.path" message="Can't undeploy module; the value ${context.path} was unspecified"/>
<java fork="true" jar="${geronimo.home}/bin/deployer.jar">
<arg value="--user"/>
<arg value="${geronimo.username}"/>
<arg value="--password"/>
<arg value="${geronimo.password}"/>
<arg value="undeploy"/>
<arg value="${context.path}"/>
</java>
</target>
<target name="redeploy" description="Redeploy an app already running on a Geronimo server">
<!-- context path as used here is actually the targetModuleId for the app to redeploy -->
<fail unless="context.path" message="Can't undeploy module; the value ${context.path} was unspecified"/>
<java fork="true" jar="${geronimo.home}/bin/deployer.jar">
<arg value="--user"/>
<arg value="${geronimo.username}"/>
<arg value="--password"/>
<arg value="${geronimo.password}"/>
<arg value="redeploy"/>
<arg value="${context.path}"/>
</java>
<sleep seconds="5"/>
</target>
<target name="start" description="Start a Geronimo instance.">
<condition property="cmdline.options" value="">
<not><isset property="cmdline.options"/></not>
</condition>
<condition property="java.options" value="">
<not><isset property="java.options"/></not>
</condition>
<echo>startup.dir: ${geronimo.home}/bin</echo>
<echo>cmdline.options: ${cmdline.options}</echo>
<echo>java.options: ${java.options}</echo>
<echo>Starting Geronimo</echo>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${geronimo.home}/bin" executable="sh">
<env key="GERONIMO_HOME" value="${geronimo.home}"/>
<arg line="geronimo.sh start ${cmdline.options}"/>
</exec>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${geronimo.home}\bin" executable="cmd.exe">
<env key="GERONIMO_HOME" value="${geronimo.home}"/>
<arg line="geronimo.bat start ${cmdline.options}"/>
</exec>
<echo>Pausing for 30 seconds while geronimo starts....</echo>
<sleep seconds="30"/>
</target>
<target name="start.with.shmem" description="Start a Geronimo instance with shared memory debugging.">
<condition property="cmdline.options" value="">
<not><isset property="cmdline.options"/></not>
</condition>
<condition property="java.options" value="">
<not><isset property="java.options"/></not>
</condition>
<echo>startup.dir: ${geronimo.home}/bin</echo>
<echo>cmdline.options: ${cmdline.options}</echo>
<echo>java.options: ${java.options}</echo>
<echo>Starting Geronimo with jpda</echo>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${geronimo.home}/bin" executable="sh">
<env key="GERONIMO_HOME" value="${geronimo.home}"/>
<arg line="geronimo.sh jpda start ${cmdline.options}"/>
</exec>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${geronimo.home}\bin" executable="cmd.exe">
<env key="GERONIMO_HOME" value="${geronimo.home}"/>
<arg line="geronimo.bat jpda start ${cmdline.options}"/>
</exec>
<echo>Pausing for 30 seconds while geronimo starts....</echo>
<sleep seconds="30"/>
</target>
<target name="stop" description="Stop the Geronimo server.">
<echo>Stop Geronimo in: ${geronimo.home}</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${geronimo.home}\bin" executable="cmd.exe">
<arg value="geronimo.bat"/>
<arg value="stop"/>
<arg value="--force"/>
<arg value="--user"/>
<arg value="${geronimo.username}"/>
<arg value="--password"/>
<arg value="${geronimo.password}"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${geronimo.home}/bin" executable="sh">
<arg value="geronimo.sh"/>
<arg value="stop"/>
<arg value="--force"/>
<arg value="--user"/>
<arg value="${geronimo.username}"/>
<arg value="--password"/>
<arg value="${geronimo.password}"/>
</exec>
</target>
<target name="usage" description="Print the usage for this build.xml">
<java fork="no" classname="org.apache.tools.ant.Main">
<arg line="-f ${ant.file} -projecthelp"/>
</java>
</target>
</project>

125
ant/jonas-imports.xml Normal file
View File

@ -0,0 +1,125 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<project name="jonas-imports" default="" basedir=".">
<property environment="os"/>
<property name="jonas.root" location="${os.JONAS_ROOT}"/>
<property name="jonas.deploy.dir" location="${jonas.root}/webapps"/>
<!-- Properties used to run JOnAS -->
<path id="appserver.build.classpath">
<fileset dir="${jonas.root}/lib/catalina/common/lib">
<include name="*.jar"/>
</fileset>
</path>
<target name="deploy" description="Deploy a webapp to a running Jonas server">
<fail unless="context.path" message="Can't deploy webapp; the value ${context.path} was unspecified"/>
<fail unless="webapp.dir" message="Can't deploy webapp; the value ${webapp.dir} was unspecified"/>
<available property="webapp.available" file="${webapp.dir}" type="dir"/>
<fail unless="webapp.available" message="The webapp at ${webapp.dir} does not exist."/>
<echo>deploy webapp from ${webapp.dir} with context path ${context.path}</echo>
<jar destfile="${jonas.deploy.dir}/${context.path}.war"
basedir="${webapp.dir}" />
<echo>deploying via jonas admin</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${jonas.root}\bin\nt" executable="jonas.bat">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="/c jonas.bat admin -a ${context.path}.war"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${jonas.root}/bin/unix" executable="sh">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="jonas admin -a ${context.path}.war"/>
</exec>
</target>
<target name="undeploy" description="Undeploy a webapp running on a Jonas server">
<fail unless="context.path" message="Can't undeploy webapp; the
value ${context.path} was unspecified"/>
<echo>undeploying via jonas admin</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${jonas.root}\bin\nt" executable="jonas.bat">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="/c jonas.bat admin -r ${context.path}.war"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${jonas.root}/bin/unix" executable="sh">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="jonas admin -r ${context.path}.war"/>
</exec>
<delete file="${jonas.deploy.dir}/${context.path}.war" />
</target>
<target name="redeploy" description="Redeploy a webapp already running on a JOnAS server">
<antcall target="undeploy" />
<antcall target="deploy" />
</target>
<target name="start" description="Start a Jonas instance.">
<condition property="cmdline.options" value="">
<not><isset property="cmdline.options"/></not>
</condition>
<condition property="java.options" value="">
<not><isset property="java.options"/></not>
</condition>
<echo>startup.dir: ${jonas.root}</echo>
<echo>cmdline.options: ${cmdline.options}</echo>
<echo>java.options: ${java.options}</echo>
<echo>Start Jonas</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${jonas.root}\bin\nt" executable="jonas.bat">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="/c jonas.bat start ${cmdline.options}"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${jonas.root}/bin/unix" executable="sh">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="jonas start ${cmdline.options}"/>
</exec>
</target>
<target name="start.with.shmem" description="Start a JOnAS instance with shared memory debugging.">
<echo>shmem is not an option for JOnAS. starting normally...</echo>
<antcall target="start" />
</target>
<target name="stop" description="Stop the NetUI server">
<echo>Stop Jonas in: ${jonas.root}</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${jonas.root}\bin\nt" executable="jonas.bat">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="/c jonas.bat stop"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${jonas.root}/bin/unix" executable="sh">
<env key="JONAS_ROOT" value="${jonas.root}"/>
<arg line="jonas stop"/>
</exec>
</target>
</project>

137
ant/nightly.xml Normal file
View File

@ -0,0 +1,137 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<!--
Ant build file used to product Beehive nightlies
-->
<project name="Beehive Nightly Build" default="usage" basedir=".">
<tstamp>
<format property="date" pattern="yyyyMMdd"/>
</tstamp>
<echo>Get SVN revision</echo>
<exec executable="svnversion" dir=".." failifexecutionfails="true" outputproperty="beehive.svn.revision">
<arg value="."/>
</exec>
<property name="ftp.root" value="http://cvs.apache.org/dist/beehive/nightlies"/>
<property name="ftp.dir" value="beehive/${date}"/>
<property name="url" value="${ftp.root}/${ftp.dir}"/>
<property name="beehive.version" value="${date}-svn${beehive.svn.revision}"/>
<import file="../beehive-imports.xml"/>
<echo>Date: ${date}</echo>
<echo>Beehive SVN revision: ${beehive.svn.revision}</echo>
<echo>Beehive distribution name: ${dist.name}</echo>
<echo>FTP URL: ${url}</echo>
<target name="echo" description="Echo the SVN revision and date for debugging"/>
<target name="run" description="Run the entire nightly build, test, and distribution packaging / testing process">
<antcall target="scrub.tomcat"/>
<ant antfile="../build.xml" target="clean" inheritAll="false"/>
<ant antfile="../build.xml" target="deploy" inheritAll="false"/>
<ant antfile="../build.xml" target="drt" inheritAll="false"/>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ../build.xml build.dist -Dbeehive.version=${beehive.version} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ../build.xml build.dist.src -Dbeehive.version=${beehive.version} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ../build.xml build.dist.lib -Dbeehive.version=${beehive.version} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ../build.xml build.dist.archives -Dbeehive.version=${beehive.version} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<antcall target="scrub.tomcat"/>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ${beehive.home}/test/dist-test/build.xml build -Ddist.name=${dist.name} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<java classname="org.apache.tools.ant.Main" fork="true" failOnError="true">
<classpath>
<pathelement path="${java.class.path}"/>
</classpath>
<arg line="-f ${beehive.home}/test/dist-test/build.xml run -Dbeehive.dist.dir=${beehive.home}/build/dist/${dist.name} -Dbeehive.dist.name=${dist.name} -Dant.home=${os.ANT_HOME} -emacs"/>
</java>
<!-- ftp to Apache -->
<echo></echo>
<echo></echo>
<echo>FTP to Beehive distribution to Apache</echo>
<echo></echo>
<echo></echo>
</target>
<!-- this target is a work in progress for automatically FTPing the archives via sftp to Apache -->
<target name="sftp.nightly" description="SFTP the nightly release to apache.org; note, this target currently does not work">
<fail unless="user" message="Username undefined"/>
<property name="sftp.script" location="${beehive.home}/build/dist/archives/sftp-${date}-${beehive.svn.revision}"/>
<echo file="${sftp.script}">
chdir /www/cvs.apache.org/dist/beehive/nightlies/
mkdir ${date}
put /home/eko/dev/oss/beehive-nightly/trunk/build/dist/archives/apache-beehive-${date}-${beehive.svn.revision}.tar.gz
put /home/eko/dev/oss/beehive-nightly/trunk/build/dist/archives/apache-beehive-${date}-${beehive.svn.revision}.zip
put /home/eko/dev/oss/beehive-nightly/trunk/build/dist/archives/README.txt
</echo>
<exec dir="." executable="sftp" os="Linux" output="results.txt">
<arg line=" -b ${sftp.script} ${user}@cvs.apache.org"/>
</exec>
</target>
<target name="scrub.tomcat" description="Scrub a local Tomcat install of Beehive related test web applications">
<delete dir="${os.CATALINA_HOME}/work/Catalina/localhost/coreWeb"/>
<delete file="${os.CATALINA_HOME}/conf/Catalina/localhost/coreWeb.xml"/>
<delete dir="${os.CATALINA_HOME}/work/Catalina/localhost/controlsWeb"/>
<delete file="${os.CATALINA_HOME}/conf/Catalina/localhost/controlsWeb.xml"/>
<delete dir="${os.CATALINA_HOME}/work/Catalina/localhost/jsfWeb"/>
<delete file="${os.CATALINA_HOME}/conf/Catalina/localhost/jsfWeb.xml"/>
<delete dir="${os.CATALINA_HOME}/work/Catalina/localhost/urlTemplates"/>
<delete file="${os.CATALINA_HOME}/conf/Catalina/localhost/urlTemplates.xml"/>
</target>
</project>

140
ant/tomcat-imports.xml Normal file
View File

@ -0,0 +1,140 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<project name="Beehive/SVN/TomcatImports" default="usage" basedir=".">
<property environment="os"/>
<property name="tomcat.home" location="${os.CATALINA_HOME}"/>
<!-- Properties used to run Tomcat -->
<!--
In the long run, there probably needs to be a tomcat.properties file that is imported here
which defines the username / password / port number so that they can be overridden
in a user's environment
-->
<property name="catalina.username" value="manager"/>
<property name="catalina.password" value="manager"/>
<property name="catalina-ant.jar" location="${tomcat.home}/server/lib/catalina-ant.jar"/>
<path id="appserver.build.classpath">
<fileset dir="${tomcat.home}/common/lib">
<include name="*.jar"/>
</fileset>
</path>
<target name="deploy" description="Deploy a webapp to a running Tomcat server">
<fail unless="context.path" message="Can't deploy webapp; the value ${context.path} was unspecified"/>
<fail unless="webapp.dir" message="Can't deploy webapp; the value ${webapp.dir} was unspecified"/>
<available property="webapp.available" file="${webapp.dir}" type="dir"/>
<fail unless="webapp.available" message="The webapp at ${webapp.dir} does not exist."/>
<property name="_url" value="file://${webapp.dir}"/>
<echo>deploy webapp from ${_url} with context path ${context.path}</echo>
<taskdef name="tomcatdeploy" classname="org.apache.catalina.ant.DeployTask" classpath="${catalina-ant.jar}"/>
<tomcatdeploy path="/${context.path}" localWar="${_url}" username="${catalina.username}" password="${catalina.password}"/>
<!-- The Tomcat deploy task doesn't necessarily finish deploying the app when the task completes. Sleep for a few... -->
<sleep seconds="5"/>
</target>
<target name="undeploy" description="Undeploy a webapp running on a Tomcat server">
<fail unless="context.path" message="Can't undeploy webapp; the value ${context.path} was unspecified"/>
<taskdef name="tomcatundeploy" classname="org.apache.catalina.ant.UndeployTask" classpath="${catalina-ant.jar}"/>
<tomcatundeploy path="/${context.path}" username="${catalina.username}" password="${catalina.password}"/>
</target>
<target name="redeploy" description="Redeploy a webapp already running on a Tomcat server">
<fail unless="context.path" message="Can't undeploy webapp; the value ${context.path} was unspecified"/>
<taskdef name="tomcatreload" classname="org.apache.catalina.ant.ReloadTask" classpath="${catalina-ant.jar}"/>
<tomcatreload path="/${context.path}" username="${catalina.username}" password="${catalina.password}"/>
<!-- The Tomcat deploy task doesn't necessarily finish deploying the app when the task completes. Sleep for a few... -->
<sleep seconds="5"/>
</target>
<target name="start" description="Start a Tomcat instance.">
<condition property="cmdline.options" value="">
<not><isset property="cmdline.options"/></not>
</condition>
<condition property="java.options" value="">
<not><isset property="java.options"/></not>
</condition>
<echo>startup.dir: ${tomcat.home}/bin</echo>
<echo>cmdline.options: ${cmdline.options}</echo>
<echo>java.options: ${java.options}</echo>
<echo>Start Tomcat</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${tomcat.home}\bin" executable="cmd.exe">
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="/c startup.bat ${cmdline.options}"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${tomcat.home}/bin" executable="sh">
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="startup.sh ${cmdline.options}"/>
</exec>
</target>
<target name="start.with.shmem" description="Start a Tomcat instance with shared memory debugging.">
<condition property="cmdline.options" value="">
<not><isset property="cmdline.options"/></not>
</condition>
<condition property="java.options" value="">
<not><isset property="java.options"/></not>
</condition>
<echo>startup.dir: ${tomcat.home}/bin</echo>
<echo>cmdline.options: ${cmdline.options}</echo>
<echo>java.options: ${java.options}</echo>
<echo>Start Tomcat</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${tomcat.home}\bin" executable="cmd.exe">
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="/c catalina.bat jpda start ${cmdline.options}"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${tomcat.home}/bin" executable="sh">
<env key="JAVA_OPTS" value="${java.options}"/>
<arg line="startup.sh jpda start ${cmdline.options}"/>
</exec>
</target>
<target name="stop" description="Stop the NetUI server">
<echo>Stop Tomcat in: ${tomcat.home}</echo>
<exec os="Windows 2000,Windows 2003,Windows XP" dir="${tomcat.home}\bin" executable="cmd.exe">
<arg line=" /c shutdown"/>
</exec>
<exec os="Linux,SunOS,Solaris,Mac OS X" dir="${tomcat.home}/bin" executable="sh">
<arg line="shutdown.sh"/>
</exec>
</target>
<target name="usage" description="Print the usage for this build.xml">
<java fork="no" classname="org.apache.tools.ant.Main">
<arg line="-f ${ant.file} -projecthelp"/>
</java>
</target>
</project>

374
beehive-imports.xml Normal file
View File

@ -0,0 +1,374 @@
<?xml version="1.0"?>
<!--
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.
$Header:$
-->
<!--
A build file that needs to be imported by all sub-projects.
-->
<project name="beehive-imports" default="" basedir=".">
<property environment="os"/>
<dirname property="beehive.home" file="${ant.file.beehive-imports}"/>
<property name="ant.dir" location="${os.ANT_HOME}"/>
<property name="forrest.dir" location="${os.FORREST_HOME}"/>
<property name="beehive.version" value="1.0.2"/>
<property name="dist.base.name" value="apache-beehive-"/>
<property name="dist.name" value="${dist.base.name}${beehive.version}"/>
<property name="webservice.runtime" value="axis"/>
<property name="servlet.runtime" value="tomcat"/>
<property name="maven.groupId" value="org/apache/beehive"/>
<property name="build.m2.dir" value="${beehive.home}/build/maven/m2/${maven.groupId}"/>
<property name="build.m1.dir" value="${beehive.home}/build/maven/m1/beehive"/>
<!-- TODO: move the MyFaces jars up into trunk/external -->
<property name="myfaces.dir" location="${beehive.home}/netui/external/jsf/myfaces-1.0.9/lib"/>
<!-- ======================================================================== -->
<!-- Common Beehive paths -->
<!-- ======================================================================== -->
<fileset id="controls.fileset" file="${beehive.home}/controls/build/jars/beehive-controls.jar"/>
<fileset id="system-controls.fileset" dir="${beehive.home}/system-controls/build/jars">
<include name="beehive-jdbc-control.jar"/>
<include name="beehive-jms-control.jar"/>
<include name="beehive-ejb-control.jar"/>
</fileset>
<fileset id="velocity.fileset" dir="${beehive.home}/external/velocity">
<include name="velocity-dep-1.4.jar"/>
</fileset>
<fileset id="commons-codec.fileset" file="${beehive.home}/external/commons/commons-codec-1.3.jar"/>
<fileset id="commons-discovery.fileset" file="${beehive.home}/external/commons/commons-discovery-0.2.jar"/>
<fileset id="derby.fileset" file="${beehive.home}/external/derby/derby_46005.jar"/>
<!-- create a patternset for commons-logging so we can refer to the filename of the jar -->
<patternset id="commons-logging.patternset">
<include name="commons-logging-1.0.4.jar" />
</patternset>
<fileset id="commons-logging.fileset" dir="${beehive.home}/external/commons">
<patternset refid="commons-logging.patternset" />
</fileset>
<fileset id="log4j.fileset" file="${beehive.home}/external/log4j/log4j-1.2.8.jar"/>
<fileset id="xbean.fileset" file="${beehive.home}/external/xmlbeans/apache-xbean.jar"/>
<fileset id="jsr173.fileset" file="${beehive.home}/installed/jsr173/jsr173_1.0_api.jar"/>
<path id="controls.dependency.path">
<pathelement location="${beehive.home}/controls/build/jars/beehive-controls.jar"/>
</path>
<path id="netui-compiler.dependency.path">
<pathelement location="${beehive.home}/netui/build/jars/beehive-netui-compiler.jar"/>
</path>
<path id="velocity.dependency.path">
<fileset refid="velocity.fileset"/>
</path>
<path id="xbean.dependency.path">
<fileset refid="xbean.fileset"/>
<fileset refid="jsr173.fileset"/>
</path>
<path id="commons-codec.dependency.path">
<fileset refid="commons-codec.fileset"/>
</path>
<path id="commons-discovery.dependency.path">
<fileset refid="commons-discovery.fileset"/>
</path>
<path id="derby.dependency.path">
<fileset refid="derby.fileset"/>
</path>
<path id="commons-logging.dependency.path">
<fileset refid="commons-logging.fileset"/>
</path>
<path id="log4j.dependency.path">
<fileset refid="log4j.fileset"/>
</path>
<path id="servlet.dependency.path">
<pathelement location="${beehive.home}/external/servlet/servlet-api-2.4.jar"/>
<pathelement location="${beehive.home}/external/servlet/jsp-api-2.0.jar"/>
</path>
<path id="tools.dependency.path">
<pathelement location="${os.JAVA_HOME}/lib/tools.jar"/>
</path>
<path id="ant-all.dependency.path">
<fileset dir="${ant.home}/lib">
<include name="*.jar"/>
</fileset>
</path>
<path id="ant-jar.dependency.path">
<fileset file="${ant.home}/lib/ant.jar"/>
</path>
<!-- test classpaths-->
<path id="junit.dependency.path">
<pathelement location="${beehive.home}/external/junit/junit.jar"/>
</path>
<!-- controls test classpaths; these should move down into the controls/test/external directory -->
<path id="regexp.dependency.path">
<pathelement location="${beehive.home}/external/jakarta/jakarta-regexp-1.2.jar"/>
</path>
<path id="httpunit.dependency.path">
<pathelement location="${beehive.home}/external/httpunit/httpunit.jar"/>
<pathelement location="${beehive.home}/external/httpunit/nekohtml.jar"/>
<pathelement location="${beehive.home}/external/httpunit/xercesImpl.jar"/>
</path>