Author: mbo Date: Fri Mar 18 16:40:20 2005 New Revision: 158172 URL: http://svn.apache.org/viewcvs?view=rev&rev=158172 Log: top level maven project files
Added: incubator/jdo/trunk/LICENSE.txt incubator/jdo/trunk/README.txt incubator/jdo/trunk/jdo_checks.xml incubator/jdo/trunk/project.properties incubator/jdo/trunk/project.xml Added: incubator/jdo/trunk/LICENSE.txt URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/LICENSE.txt?view=auto&rev=158172 ============================================================================== --- incubator/jdo/trunk/LICENSE.txt (added) +++ incubator/jdo/trunk/LICENSE.txt Fri Mar 18 16:40:20 2005 @@ -0,0 +1,202 @@ + + 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. Added: incubator/jdo/trunk/README.txt URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/README.txt?view=auto&rev=158172 ============================================================================== --- incubator/jdo/trunk/README.txt (added) +++ incubator/jdo/trunk/README.txt Fri Mar 18 16:40:20 2005 @@ -0,0 +1,125 @@ +This is a prototype of the JDO maven projects: +- api11 to build the jdo.jar which defines the JDO API +- btree the Netbeans open source btree implementation used by ri +- ri11 the current JDORI +- tck11 the current JDOTCK + +------------- +Prerequisites +------------- + +- Maven +You need Maven version 1.0.1 or 1.0.2. You can download maven from +http://maven.apache.org/start/download.html + +- antlr +The JDORI uses antlr version 2.7.3 to implement the query compiler. We asked to +add this version to the maven repository, but until this happens you need to +manually add antlr 2.7.3 to your local maven repository. Please download +version 2.7.3 from http://www.antlr.org/download/antlr-2.7.3.jar and copy +it to your local maven repository: + cp antlr-2.7.3.jar $HOME/.maven/repository/antlr/jars/antlr-2.7.3.jar + +- JNDI implementation +- fscontext.jar and providerutil.jar +The JDORI JNDI test case needs a JNDI implementation. To configure this please +update the property jndi in ri11/project.properties to include all jars of +your JNDI implementation. The properties file jndi.properties under ri11/test +should define all the necessary properties of your JNDI implemenation. +The defaults setting in project.properties and jndi.properties use Sun's File +System Service Provider implementation (fscontext.jar and providerutil.jar) and +assume to find both jars in the directory ri11. For donwload please go to +http://java.sun.com/products/jndi/downloads/index.html, click the Download +button at 'Download JNDI 1.2.1 & More', accept a license agreement, download +'File System Service Provider, 1.2 Beta 3' and then unpack the downloaded zip. + It includes the jars fscontext.jar and providerutil.jar. + +------- +Remarks +------- + +ToDo: +- building ri +- no useapplicationidentity and usedatastoreidentity anymore + +(1) Please note, maven uses the user.home system property for the location +of the maven local repostitory: ${user.home}/.maven/repository. +Under Windows this system property is C:\Documents and Settings\<user> +no matter what the HOME variable is set to. As a workaround I set the +system property by adding -Duser.home=%HOME% to the environment variable +MAVEN_OPTS. + +(2) The btree subproject checks out the Netbeans mdr btree implementation. +This requires cvs being installed on your system. The official netbeans cvs +host might not work if you are behind a firewall that blocks the cvs port. +Please consult http://www.netbeans.org/community/sources for more info. +There is a special cvsroot if you are inside the Sun network (SWAN), please +check the project.properties in the btree subproject. + +(3) Remarks about ri11: +- Calling 'maven build' in ri11 compiles the JDO RI sources and test classes +and then runs the JUnit tests. +- The maven goal runtest ('maven runtest') executes the full JDO RI test suite. +This includes running all the JUnit tests w/O and w/ security manager, plus +some extra tests that require running more than one JVM. +- If you prefer the JUnit gui please call 'maven -Dgui=true runtests'. This +first starts a gui for running the JUnit tests w/o security manager. After +you exit the gui it automatically starts a new gui running the JUnit tests +w/ security manager. + +(4) Remarks about tck11: +Calling 'maven build' in tck11 compiles all the JDOTCK tests, runs the JDORI +enhancer and then runs all the tests using the JDORI. +To run the JDOTCK against an JDO implementation you should do the following: +- Place the jars of your JDO implementation in the directory iut_jars. All the +jars in this directory are automatically added to the classpath. +- Check the property iut.runtck.properties in project.properties. It should +refer to a file defining the PMF properties for your implementation. +- Please add any system properties to the property iut.runtck.sysproperties in +project.properties, e.g. +iut.runtck.sysproperties = -DMySystemProperty1=value -DMySystemProperty2=value +- If the JDO implementation comes with its own enhancer, please update the +properties iut.enhancer.main, iut.enhancer.options, iut.enhancer.args, and +iut.enhancer.sysproperties. +- Check the properties iut.applicationidentity.supported and +iut.datastoreidentity.supported in project.properties and update them according +to the JDO implementation to be tested. +- You run the TCK by calling 'maven runtck'. This first enhances the +persistence-capable and persistence-aware classes for applicationidentity and +for datastore identity. This uses the properties described in the previous item +in order to decide which kind of identitytype is supported. After enhancement +'maven runtck' runs the JDO TCK test classes using the test configuration file +as specified by the property jdo.tck.configuration. You find the property in +project.properties. +- A test configuration is a file defining two properties: +jdo.tck.identitytype: either datastoreidentity or applicationidentity +jdo.tck.testclasses: a list of fully qualified class names of the test classes +to be executed. +The first property is important to include the enhanced classes for this +identitytype into the classpath. Today there is no checking whether the property +value is correct. There is a predefined property jdo.tck.alltests including all +JDO TCK test classes. Please see the files datastoreidentity.conf and +applicationidentity.conf in test/conf as an example. +- You can run the JUnit gui (instead of the batch mode) by setting the property +gui to true: 'maven -Dgui=true runtck'. + +(5) Logging +Apache JDO uses the apache commons logging package for logging. +Sub-projects ri11 and tck11 use several properties files to configure logging. +- common-logging.properties: specifies the logging implementation to use. + It is tested with apache SimpleLog and JDK 1.4 logging. +- logging.properties: logger configuration when using JDK 1.4 logging. +- simplelog.properties: logger configuration when using apache SimpleLog. + +(6) The file jdo_check.xml includes the checkstyle configuration. It is borrowed +from the sun_checks.xml, but does not use all of the sun rules and customizes +some other rules. The checkstyle configuration is not yet finished. + +(7) Mevenide is a nice maven plugin for IDEs (see http://mevenide.codehaus.org). +You find download instructions in http://mevenide.codehaus.org/download.html. +For Netbeans, once you installed the plugin, you should be able to open an +existing maven project by File -> Open Project -> Open Project Folder. +Navigate to a directoy including a maven project (e.g. api11) and choose this +directory. Netbeans will create a project folder. If you right-click the Maven +project you can examine the contents of the project.xml (see Properties) or +execute goals. Added: incubator/jdo/trunk/jdo_checks.xml URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/jdo_checks.xml?view=auto&rev=158172 ============================================================================== --- incubator/jdo/trunk/jdo_checks.xml (added) +++ incubator/jdo/trunk/jdo_checks.xml Fri Mar 18 16:40:20 2005 @@ -0,0 +1,92 @@ +<?xml version="1.0"?> +<!-- +/* + * Copyright 2005 The Apache Software Foundation. + * + * 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. + */ + --> + +<!DOCTYPE module PUBLIC + "-//Puppy Crawl//DTD Check Configuration 1.1//EN" + "http://www.puppycrawl.com/dtds/configuration_1_1.dtd"> + +<module name="Checker"> + + <!-- Checks that a package.html file exists for each package. --> + <!-- See http://checkstyle.sf.net/config_javadoc.html#PackageHtml --> + <module name="PackageHtml"/> + + <!-- Checks whether files end with a Unix-style new line. --> + <!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile --> + <module name="NewlineAtEndOfFile"> + <property name="lineSeparator" value="lf"/> + </module> + + <!-- Checks that property files contain the same keys. --> + <!-- See http://checkstyle.sf.net/config_misc.html#Translation --> + <module name="Translation"/> + + + <module name="TreeWalker"> + + <property name="cacheFile" value="${checkstyle.cache.file}"/> + + <!-- Checks for Javadoc comments. --> + <!-- See http://checkstyle.sf.net/config_javadoc.html --> + <module name="JavadocType"/> + + <!-- Checks for Naming Conventions. --> + <!-- See http://checkstyle.sf.net/config_naming.html --> + <module name="LocalFinalVariableName"/> + <module name="LocalVariableName"/> + <module name="MemberName"/> + <module name="MemberName"> + <property name="format" value="^[a-z_][a-zA-Z0-9_]*$"/> + </module> + <module name="MethodName"/> + <module name="PackageName"/> + <module name="ParameterName"/> + <module name="StaticVariableName"/> + <module name="TypeName"/> + + <!-- Checks for imports --> + <!-- See http://checkstyle.sf.net/config_import.html --> + <module name="AvoidStarImport"> + <property name="excludes" value="java.io,java.util"/> + </module> + <module name="IllegalImport"/> <!-- defaults to sun.* packages --> + <module name="RedundantImport"/> + <module name="UnusedImports"/> + + <!-- Checks for Size Violations. --> + <!-- See http://checkstyle.sf.net/config_sizes.html --> + <module name="FileLength"/> + <module name="LineLength"> + <property name="max" value="100"/> + <property name="ignorePattern" value="^.*NOI18N *$"/> + </module> + <module name="MethodLength"/> + <module name="ParameterNumber"/> + + <!-- Checks for common coding problems --> + <!-- See http://checkstyle.sf.net/config_coding.html --> + <module name="DoubleCheckedLocking"/> + + <!-- Miscellaneous other checks. --> + <!-- See http://checkstyle.sf.net/config_misc.html --> + <module name="ArrayTypeStyle"/> + + </module> + +</module> Added: incubator/jdo/trunk/project.properties URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/project.properties?view=auto&rev=158172 ============================================================================== --- incubator/jdo/trunk/project.properties (added) +++ incubator/jdo/trunk/project.properties Fri Mar 18 16:40:20 2005 @@ -0,0 +1,19 @@ +# +# Copyright 2005 The Apache Software Foundation +# +# 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. +# + +# Make sure the compiled class still work with J2SE 1.3 +maven.compile.target = 1.3 + Added: incubator/jdo/trunk/project.xml URL: http://svn.apache.org/viewcvs/incubator/jdo/trunk/project.xml?view=auto&rev=158172 ============================================================================== --- incubator/jdo/trunk/project.xml (added) +++ incubator/jdo/trunk/project.xml Fri Mar 18 16:40:20 2005 @@ -0,0 +1,74 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + + Copyright 2005 The Apache Software Foundation + + 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. + +--> + +<project> + <pomVersion>3</pomVersion> + <!-- ============== --> + <!-- Identification --> + <!-- ============== --> + <name>Java Data Objects (JDO)</name> + <groupId>jdo</groupId> + <organization> + <name>Apache Software Foundation</name> + <url>http://www.apache.org</url> + <logo>http://incubator.apache.org/images/apache-incubator-logo.png</logo> + </organization> + <inceptionYear>2005</inceptionYear> + <shortDescription>Java Data Object (JDO)</shortDescription> + <description>The Java Data Objects (JDO) API is a standard interface-based +Java model abstraction of persistence, developed as Java Specification +Request 12 JSR 12 under the auspices of the Java Community Process.</description> + <url>http://wiki.apache.org/jdo</url> + <mailingLists> + <mailingList> + <name>User List</name> + <subscribe>[EMAIL PROTECTED]</subscribe> + <unsubscribe>[EMAIL PROTECTED]</unsubscribe> + </mailingList> + <mailingList> + <name>Dev List</name> + <subscribe>[EMAIL PROTECTED]</subscribe> + <unsubscribe>[EMAIL PROTECTED]</unsubscribe> + </mailingList> + </mailingLists> + <!-- ========== --> + <!-- Developers --> + <!-- ========== --> + <developers> + <developer> + <name>Craig Russell</name> + <email>[EMAIL PROTECTED]</email> + <timezone>-8</timezone> + <organization>Sun Micrsystems</organization> + </developer> + <developer> + <name>Michael Bouschen</name> + <email>[EMAIL PROTECTED]</email> + <organization>[EMAIL PROTECTED] Engineering GmbH</organization> + <timezone>1</timezone> + </developer> + <developer> + <name>Michelle Caisse</name> + <email>[EMAIL PROTECTED]</email> + <organization>Sun Micrsystems</organization> + <timezone>-8</timezone> + </developer> + </developers> +</project> +