Hibernate SVN: r14525 - search/trunk/src/test/org/hibernate/search/test/analyzer/solr.
by hibernate-commits@lists.jboss.org
Author: epbernard
Date: 2008-04-23 13:09:33 -0400 (Wed, 23 Apr 2008)
New Revision: 14525
Modified:
search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java
Log:
Fix test encoding issue for solr
Modified: search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java
===================================================================
--- search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java 2008-04-23 02:31:14 UTC (rev 14524)
+++ search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java 2008-04-23 17:09:33 UTC (rev 14525)
@@ -13,7 +13,8 @@
public class SolrAnalyzerTest extends SearchTestCase {
public void testAnalyzerDef() throws Exception {
Team team = new Team();
- team.setDescription( "This is a D�scription" );
+ System.out.println("� = \u00E0");
+ team.setDescription( "This is a D\u00E0scription" );
team.setLocation( "Atlanta" );
team.setName( "ATL team" );
FullTextSession fts = Search.createFullTextSession( openSession() );
@@ -22,7 +23,7 @@
tx.commit();
fts.clear();
tx = fts.beginTransaction();
- TermQuery query = new TermQuery( new Term("description", "D�scription") );
+ TermQuery query = new TermQuery( new Term("description", "D\u00E0scription") );
assertEquals( "iso latin filter should work", 0, fts.createFullTextQuery( query ).list().size() );
query = new TermQuery( new Term("description", "is") );
assertEquals( "stop word filter should work", 0, fts.createFullTextQuery( query ).list().size() );
16 years, 8 months
Hibernate SVN: r14524 - in search/trunk: src/java/org/hibernate/search/annotations and 5 other directories.
by hibernate-commits@lists.jboss.org
Author: epbernard
Date: 2008-04-22 22:31:14 -0400 (Tue, 22 Apr 2008)
New Revision: 14524
Added:
search/trunk/lib/apache-solr-1.2.0.jar
search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDef.java
search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDefs.java
search/trunk/src/java/org/hibernate/search/annotations/TokenFilterDef.java
search/trunk/src/java/org/hibernate/search/annotations/TokenizerDef.java
search/trunk/src/java/org/hibernate/search/impl/InitContext.java
search/trunk/src/java/org/hibernate/search/util/DelegateNamedAnalyzer.java
search/trunk/src/test/org/hibernate/search/test/analyzer/solr/
search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java
search/trunk/src/test/org/hibernate/search/test/analyzer/solr/Team.java
search/trunk/src/test/org/hibernate/search/test/analyzer/solr/stoplist.properties
Modified:
search/trunk/lib/README.txt
search/trunk/src/java/org/hibernate/search/annotations/Analyzer.java
search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java
search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java
Log:
HSEARCH-186 Integrate Solr analyzer infrastructure
Modified: search/trunk/lib/README.txt
===================================================================
--- search/trunk/lib/README.txt 2008-04-22 15:04:59 UTC (rev 14523)
+++ search/trunk/lib/README.txt 2008-04-23 02:31:14 UTC (rev 14524)
@@ -8,6 +8,7 @@
hibernate core dependencies: required (see Hibernate Core for more information)
lucene-core-*.jar: required (used version 2.3.0)
jms.jar: optional (needed for JMS based clustering strategy, usually available with your application server)
+apache-solr-*.jar: optional (used version 1.2.0), needed if @AnalyzerDef is used
Test
====
Added: search/trunk/lib/apache-solr-1.2.0.jar
===================================================================
(Binary files differ)
Property changes on: search/trunk/lib/apache-solr-1.2.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: search/trunk/src/java/org/hibernate/search/annotations/Analyzer.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/annotations/Analyzer.java 2008-04-22 15:04:59 UTC (rev 14523)
+++ search/trunk/src/java/org/hibernate/search/annotations/Analyzer.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -8,13 +8,16 @@
import java.lang.annotation.Documented;
/**
- * Define an Analizer for a given entity, method, field or Field
+ * Define an Analyzer for a given entity, method, field or Field
* The order of precedence is as such:
* - @Field
* - field / method
* - entity
* - default
*
+ * Either describe an explicit implementation through the <code>impl</code> parameter
+ * or use an external @AnalyzerDef definition through the <code>def</code> parameter
+ *
* @author Emmanuel Bernard
*/
@Retention( RetentionPolicy.RUNTIME )
@@ -23,4 +26,5 @@
public @interface Analyzer {
Class impl() default void.class;
+ String definition() default "";
}
Added: search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDef.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDef.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDef.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,39 @@
+//$
+package org.hibernate.search.annotations;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Documented;
+
+/**
+ * Reusable analyzer definition.
+ * An analyzer definition defines:
+ * - one tokenizer
+ * - optionally some filters
+ * Filters are applied in the order they are defined
+ *
+ * Reuses the Solr Tokenizer and Filter architecture
+ *
+ * @author Emmanuel Bernard
+ */
+@Retention( RetentionPolicy.RUNTIME )
+@Target( { ElementType.TYPE, ElementType.FIELD, ElementType.METHOD} )
+@Documented
+public @interface AnalyzerDef {
+ /**
+ * Reference name to be used on {#org.hibernate.search.annotations.Analyzer}
+ */
+ String name();
+
+ /**
+ * Tokenizer used
+ */
+ TokenizerDef tokenizer();
+
+ /**
+ * Filters used. The filters are applied in the defined order
+ */
+ TokenFilterDef[] filters() default {};
+}
Added: search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDefs.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDefs.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/annotations/AnalyzerDefs.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,20 @@
+package org.hibernate.search.annotations;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Documented;
+
+/**
+ * Reusable analyzer definitions.
+ * This annotation allows multiple definition declarations per element
+ *
+ * @author Emmanuel Bernard
+ */
+@Retention( RetentionPolicy.RUNTIME )
+@Target( { ElementType.TYPE, ElementType.FIELD, ElementType.METHOD} )
+@Documented
+public @interface AnalyzerDefs {
+ AnalyzerDef[] value();
+}
Added: search/trunk/src/java/org/hibernate/search/annotations/TokenFilterDef.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/annotations/TokenFilterDef.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/annotations/TokenFilterDef.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,30 @@
+//$
+package org.hibernate.search.annotations;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+import org.apache.solr.analysis.TokenFilterFactory;
+
+/**
+ * Define a TokenFilterFactory and its parameters
+ *
+ * @author Emmanuel Bernard
+ */
+@Retention( RetentionPolicy.RUNTIME )
+@Target( { ElementType.TYPE, ElementType.FIELD, ElementType.METHOD } )
+@Documented
+public @interface TokenFilterDef {
+ /**
+ * Defines the TokenFilterFactory implementation used
+ */
+ public abstract Class<? extends TokenFilterFactory> factory();
+
+ /**
+ * optional parameters passed to the TokenFilterFactory
+ */
+ public abstract Parameter[] params() default {};
+}
\ No newline at end of file
Added: search/trunk/src/java/org/hibernate/search/annotations/TokenizerDef.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/annotations/TokenizerDef.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/annotations/TokenizerDef.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,30 @@
+//$
+package org.hibernate.search.annotations;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Documented;
+
+import org.apache.solr.analysis.TokenizerFactory;
+
+/**
+ * Define a TokenizerFactory and its parameters
+ *
+ * @author Emmanuel Bernard
+ */
+@Retention( RetentionPolicy.RUNTIME )
+@Target( { ElementType.TYPE, ElementType.FIELD, ElementType.METHOD} )
+@Documented
+public @interface TokenizerDef {
+ /**
+ * Defines the TokenizerFactory implementation used
+ */
+ Class<? extends TokenizerFactory> factory();
+
+ /**
+ * optional parameters passed to the TokenizerFactory
+ */
+ Parameter[] params() default {};
+}
Modified: search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java 2008-04-22 15:04:59 UTC (rev 14523)
+++ search/trunk/src/java/org/hibernate/search/engine/DocumentBuilder.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -26,8 +26,10 @@
import org.hibernate.annotations.common.reflection.XMember;
import org.hibernate.annotations.common.reflection.XProperty;
import org.hibernate.annotations.common.util.ReflectHelper;
+import org.hibernate.annotations.common.util.StringHelper;
import org.hibernate.proxy.HibernateProxy;
import org.hibernate.search.SearchException;
+import org.hibernate.search.impl.InitContext;
import org.hibernate.search.annotations.Boost;
import org.hibernate.search.annotations.ClassBridge;
import org.hibernate.search.annotations.ClassBridges;
@@ -37,6 +39,8 @@
import org.hibernate.search.annotations.IndexedEmbedded;
import org.hibernate.search.annotations.Store;
import org.hibernate.search.annotations.TermVector;
+import org.hibernate.search.annotations.AnalyzerDefs;
+import org.hibernate.search.annotations.AnalyzerDef;
import org.hibernate.search.backend.AddLuceneWork;
import org.hibernate.search.backend.DeleteLuceneWork;
import org.hibernate.search.backend.LuceneWork;
@@ -79,7 +83,7 @@
private Similarity similarity;
- public DocumentBuilder(XClass clazz, Analyzer defaultAnalyzer, Similarity defaultSimilarity, DirectoryProvider[] directoryProviders,
+ public DocumentBuilder(XClass clazz, InitContext context, DirectoryProvider[] directoryProviders,
IndexShardingStrategy shardingStrategy, ReflectionManager reflectionManager) {
this.analyzer = new ScopedAnalyzer();
this.beanClass = clazz;
@@ -87,15 +91,15 @@
this.shardingStrategy = shardingStrategy;
//FIXME get rid of it when boost is stored?
this.reflectionManager = reflectionManager;
- this.similarity = defaultSimilarity;
+ this.similarity = context.getDefaultSimilarity();
if ( clazz == null ) throw new AssertionFailure( "Unable to build a DocumentBuilder with a null class" );
rootPropertiesMetadata = new PropertiesMetadata();
rootPropertiesMetadata.boost = getBoost( clazz );
- rootPropertiesMetadata.analyzer = defaultAnalyzer;
+ rootPropertiesMetadata.analyzer = context.getDefaultAnalyzer();
Set<XClass> processedClasses = new HashSet<XClass>();
processedClasses.add( clazz );
- initializeMembers( clazz, rootPropertiesMetadata, true, "", processedClasses );
+ initializeMembers( clazz, rootPropertiesMetadata, true, "", processedClasses, context );
//processedClasses.remove( clazz ); for the sake of completness
this.analyzer.setGlobalAnalyzer( rootPropertiesMetadata.analyzer );
if ( idKeywordName == null ) {
@@ -103,16 +107,23 @@
}
}
- private Analyzer getAnalyzer(XAnnotatedElement annotatedElement) {
+ private Analyzer getAnalyzer(XAnnotatedElement annotatedElement, InitContext context) {
org.hibernate.search.annotations.Analyzer analyzerAnn =
annotatedElement.getAnnotation( org.hibernate.search.annotations.Analyzer.class );
- return getAnalyzer( analyzerAnn );
+ return getAnalyzer( analyzerAnn, context );
}
- private Analyzer getAnalyzer(org.hibernate.search.annotations.Analyzer analyzerAnn) {
+ private Analyzer getAnalyzer(org.hibernate.search.annotations.Analyzer analyzerAnn, InitContext context) {
Class analyzerClass = analyzerAnn == null ? void.class : analyzerAnn.impl();
if ( analyzerClass == void.class ) {
- return null;
+ String definition = analyzerAnn == null ? "" : analyzerAnn.definition();
+ if ( StringHelper.isEmpty( definition ) ) {
+ return null;
+ }
+ else {
+
+ return context.buildLazyAnalyzer( definition );
+ }
}
else {
try {
@@ -130,7 +141,7 @@
}
private void initializeMembers(XClass clazz, PropertiesMetadata propertiesMetadata, boolean isRoot, String prefix,
- Set<XClass> processedClasses) {
+ Set<XClass> processedClasses, InitContext context) {
List<XClass> hierarchy = new ArrayList<XClass>();
for (XClass currClass = clazz; currClass != null; currClass = currClass.getSuperclass()) {
hierarchy.add( currClass );
@@ -142,23 +153,25 @@
* Override the default analyzer for the properties if the class hold one
* That's the reason we go down the hierarchy
*/
- Analyzer analyzer = getAnalyzer( currClass );
+ Analyzer analyzer = getAnalyzer( currClass, context );
+
if ( analyzer != null ) {
propertiesMetadata.analyzer = analyzer;
}
+ getAnalyzerDefs(currClass, context);
// Check for any ClassBridges annotation.
ClassBridges classBridgesAnn = currClass.getAnnotation( ClassBridges.class );
if ( classBridgesAnn != null ) {
ClassBridge[] cbs = classBridgesAnn.value();
for (ClassBridge cb : cbs) {
- bindClassAnnotation( prefix, propertiesMetadata, cb );
+ bindClassAnnotation( prefix, propertiesMetadata, cb, context );
}
}
// Check for any ClassBridge style of annotations.
ClassBridge classBridgeAnn = currClass.getAnnotation( ClassBridge.class );
if ( classBridgeAnn != null ) {
- bindClassAnnotation( prefix, propertiesMetadata, classBridgeAnn );
+ bindClassAnnotation( prefix, propertiesMetadata, classBridgeAnn, context );
}
//Get similarity
@@ -177,12 +190,12 @@
// so indexing a non property does not make sense
List<XProperty> methods = currClass.getDeclaredProperties( XClass.ACCESS_PROPERTY );
for (XProperty method : methods) {
- initializeMember( method, propertiesMetadata, isRoot, prefix, processedClasses );
+ initializeMember( method, propertiesMetadata, isRoot, prefix, processedClasses, context );
}
List<XProperty> fields = currClass.getDeclaredProperties( XClass.ACCESS_FIELD );
for (XProperty field : fields) {
- initializeMember( field, propertiesMetadata, isRoot, prefix, processedClasses );
+ initializeMember( field, propertiesMetadata, isRoot, prefix, processedClasses, context );
}
}
if ( isRoot && similarityClass != null ) {
@@ -196,6 +209,17 @@
}
}
+ private void getAnalyzerDefs(XAnnotatedElement annotatedElement, InitContext context) {
+ AnalyzerDefs defs = annotatedElement.getAnnotation( AnalyzerDefs.class );
+ if ( defs != null ) {
+ for (AnalyzerDef def : defs.value()) {
+ context.addAnalyzerDef( def );
+ }
+ }
+ AnalyzerDef def = annotatedElement.getAnnotation( AnalyzerDef.class );
+ context.addAnalyzerDef( def );
+ }
+
public String getIdentifierName() {
return idGetter.getName();
}
@@ -205,7 +229,7 @@
}
private void initializeMember(XProperty member, PropertiesMetadata propertiesMetadata, boolean isRoot,
- String prefix, Set<XClass> processedClasses) {
+ String prefix, Set<XClass> processedClasses, InitContext context) {
DocumentId documentIdAnn = member.getAnnotation( DocumentId.class );
if ( documentIdAnn != null ) {
@@ -239,7 +263,7 @@
propertiesMetadata.fieldBridges.add( BridgeFactory.guessType( null, member, reflectionManager ) );
// Field > property > entity analyzer
Analyzer analyzer = null; //no field analyzer
- if ( analyzer == null ) analyzer = getAnalyzer( member );
+ if ( analyzer == null ) analyzer = getAnalyzer( member, context );
if ( analyzer == null ) analyzer = propertiesMetadata.analyzer;
if ( analyzer == null ) throw new AssertionFailure( "Analizer should not be undefined" );
this.analyzer.addScopedAnalyzer( fieldName, analyzer );
@@ -249,7 +273,7 @@
org.hibernate.search.annotations.Field fieldAnn =
member.getAnnotation( org.hibernate.search.annotations.Field.class );
if ( fieldAnn != null ) {
- bindFieldAnnotation( member, propertiesMetadata, prefix, fieldAnn );
+ bindFieldAnnotation( member, propertiesMetadata, prefix, fieldAnn, context );
}
}
{
@@ -257,10 +281,11 @@
member.getAnnotation( org.hibernate.search.annotations.Fields.class );
if ( fieldsAnn != null ) {
for (org.hibernate.search.annotations.Field fieldAnn : fieldsAnn.value()) {
- bindFieldAnnotation( member, propertiesMetadata, prefix, fieldAnn );
+ bindFieldAnnotation( member, propertiesMetadata, prefix, fieldAnn, context );
}
}
}
+ getAnalyzerDefs( member, context );
IndexedEmbedded embeddedAnn = member.getAnnotation( IndexedEmbedded.class );
if ( embeddedAnn != null ) {
@@ -297,10 +322,10 @@
propertiesMetadata.embeddedPropertiesMetadata.add( metadata );
metadata.boost = getBoost( member );
//property > entity analyzer
- Analyzer analyzer = getAnalyzer( member );
+ Analyzer analyzer = getAnalyzer( member, context );
metadata.analyzer = analyzer != null ? analyzer : propertiesMetadata.analyzer;
String localPrefix = buildEmbeddedPrefix( prefix, embeddedAnn, member );
- initializeMembers( elementClass, metadata, false, localPrefix, processedClasses );
+ initializeMembers( elementClass, metadata, false, localPrefix, processedClasses, context );
/**
* We will only index the "expected" type but that's OK, HQL cannot do downcasting either
*/
@@ -338,7 +363,7 @@
}
}
- private void bindClassAnnotation(String prefix, PropertiesMetadata propertiesMetadata, ClassBridge ann) {
+ private void bindClassAnnotation(String prefix, PropertiesMetadata propertiesMetadata, ClassBridge ann, InitContext context) {
//FIXME name should be prefixed
String fieldName = prefix + ann.name();
propertiesMetadata.classNames.add( fieldName );
@@ -348,13 +373,13 @@
propertiesMetadata.classBridges.add( BridgeFactory.extractType( ann ) );
propertiesMetadata.classBoosts.add( ann.boost().value() );
- Analyzer analyzer = getAnalyzer( ann.analyzer() );
+ Analyzer analyzer = getAnalyzer( ann.analyzer(), context );
if ( analyzer == null ) analyzer = propertiesMetadata.analyzer;
if ( analyzer == null ) throw new AssertionFailure( "Analyzer should not be undefined" );
this.analyzer.addScopedAnalyzer( fieldName, analyzer );
}
- private void bindFieldAnnotation(XProperty member, PropertiesMetadata propertiesMetadata, String prefix, org.hibernate.search.annotations.Field fieldAnn) {
+ private void bindFieldAnnotation(XProperty member, PropertiesMetadata propertiesMetadata, String prefix, org.hibernate.search.annotations.Field fieldAnn, InitContext context) {
setAccessible( member );
propertiesMetadata.fieldGetters.add( member );
String fieldName = prefix + BinderHelper.getAttributeName( member, fieldAnn.name() );
@@ -365,8 +390,8 @@
propertiesMetadata.fieldBridges.add( BridgeFactory.guessType( fieldAnn, member, reflectionManager ) );
// Field > property > entity analyzer
- Analyzer analyzer = getAnalyzer( fieldAnn.analyzer() );
- if ( analyzer == null ) analyzer = getAnalyzer( member );
+ Analyzer analyzer = getAnalyzer( fieldAnn.analyzer(), context );
+ if ( analyzer == null ) analyzer = getAnalyzer( member, context );
if ( analyzer == null ) analyzer = propertiesMetadata.analyzer;
if ( analyzer == null ) throw new AssertionFailure( "Analizer should not be undefined" );
this.analyzer.addScopedAnalyzer( fieldName, analyzer );
Added: search/trunk/src/java/org/hibernate/search/impl/InitContext.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/impl/InitContext.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/impl/InitContext.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,193 @@
+//$
+package org.hibernate.search.impl;
+
+import java.util.Map;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Collections;
+
+import org.hibernate.search.annotations.AnalyzerDef;
+import org.hibernate.search.annotations.TokenizerDef;
+import org.hibernate.search.annotations.Parameter;
+import org.hibernate.search.annotations.TokenFilterDef;
+import org.hibernate.search.SearchException;
+import org.hibernate.search.Environment;
+import org.hibernate.search.util.DelegateNamedAnalyzer;
+import org.hibernate.cfg.Configuration;
+import org.hibernate.util.ReflectHelper;
+import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.apache.lucene.search.Similarity;
+import org.apache.solr.analysis.TokenizerFactory;
+import org.apache.solr.analysis.TokenizerChain;
+import org.apache.solr.analysis.TokenFilterFactory;
+
+/**
+ * @author Emmanuel Bernard
+ */
+public class InitContext {
+ private Map<String, AnalyzerDef> analyzerDefs = new HashMap<String, AnalyzerDef>();
+ private List<DelegateNamedAnalyzer> lazyAnalyzers = new ArrayList<DelegateNamedAnalyzer>();
+ private final Analyzer defaultAnalyzer;
+ private final Similarity defaultSimilarity;
+
+ public InitContext(Configuration cfg) {
+ defaultAnalyzer = initAnalyzer(cfg);
+ defaultSimilarity = initSimilarity(cfg);
+ }
+
+ public void addAnalyzerDef(AnalyzerDef ann) {
+ //FIXME somehow remember where the analyzerDef comes from and raise an exception if an analyzerDef
+ //with the same name from two different places are added
+ //multiple adding from the same place is required to deal with inheritance hierarchy processed multiple times
+ if ( ann != null && analyzerDefs.put( ann.name(), ann ) != null ) {
+ //throw new SearchException("Multiple AnalyzerDef with the same name: " + name);
+ }
+ }
+
+ public Analyzer buildLazyAnalyzer(String name) {
+ final DelegateNamedAnalyzer delegateNamedAnalyzer = new DelegateNamedAnalyzer( name );
+ lazyAnalyzers.add(delegateNamedAnalyzer);
+ return delegateNamedAnalyzer;
+ }
+
+ public List<DelegateNamedAnalyzer> getLazyAnalyzers() {
+ return lazyAnalyzers;
+ }
+
+ /**
+ * Initilises the Lucene analyzer to use by reading the analyzer class from the configuration and instantiating it.
+ *
+ * @param cfg
+ * The current configuration.
+ * @return The Lucene analyzer to use for tokenisation.
+ */
+ private Analyzer initAnalyzer(Configuration cfg) {
+ Class analyzerClass;
+ String analyzerClassName = cfg.getProperty( Environment.ANALYZER_CLASS);
+ if (analyzerClassName != null) {
+ try {
+ analyzerClass = ReflectHelper.classForName(analyzerClassName);
+ } catch (Exception e) {
+ return buildLazyAnalyzer( analyzerClassName );
+// throw new SearchException("Lucene analyzer class '" + analyzerClassName + "' defined in property '"
+// + Environment.ANALYZER_CLASS + "' could not be found.", e);
+ }
+ } else {
+ analyzerClass = StandardAnalyzer.class;
+ }
+ // Initialize analyzer
+ Analyzer defaultAnalyzer;
+ try {
+ defaultAnalyzer = (Analyzer) analyzerClass.newInstance();
+ } catch (ClassCastException e) {
+ throw new SearchException("Lucene analyzer does not implement " + Analyzer.class.getName() + ": "
+ + analyzerClassName, e);
+ } catch (Exception e) {
+ throw new SearchException("Failed to instantiate lucene analyzer with type " + analyzerClassName, e);
+ }
+ return defaultAnalyzer;
+ }
+
+ /**
+ * Initilises the Lucene similarity to use
+ */
+ private Similarity initSimilarity(Configuration cfg) {
+ Class similarityClass;
+ String similarityClassName = cfg.getProperty(Environment.SIMILARITY_CLASS);
+ if (similarityClassName != null) {
+ try {
+ similarityClass = ReflectHelper.classForName(similarityClassName);
+ } catch (Exception e) {
+ throw new SearchException("Lucene Similarity class '" + similarityClassName + "' defined in property '"
+ + Environment.SIMILARITY_CLASS + "' could not be found.", e);
+ }
+ }
+ else {
+ similarityClass = null;
+ }
+
+ // Initialize similarity
+ if ( similarityClass == null ) {
+ return Similarity.getDefault();
+ }
+ else {
+ Similarity defaultSimilarity;
+ try {
+ defaultSimilarity = (Similarity) similarityClass.newInstance();
+ } catch (ClassCastException e) {
+ throw new SearchException("Lucene similarity does not extend " + Similarity.class.getName() + ": "
+ + similarityClassName, e);
+ } catch (Exception e) {
+ throw new SearchException("Failed to instantiate lucene similarity with type " + similarityClassName, e);
+ }
+ return defaultSimilarity;
+ }
+ }
+
+ public Analyzer getDefaultAnalyzer() {
+ return defaultAnalyzer;
+ }
+
+ public Similarity getDefaultSimilarity() {
+ return defaultSimilarity;
+ }
+
+ public void initLazyAnalyzers() {
+ Map<String, Analyzer> initializedAnalizers = new HashMap<String, Analyzer>( analyzerDefs.size() );
+
+ for (DelegateNamedAnalyzer namedAnalyzer : lazyAnalyzers) {
+ String name = namedAnalyzer.getName();
+ if ( initializedAnalizers.containsKey( name ) ) {
+ namedAnalyzer.setDelegate( initializedAnalizers.get( name ) );
+ }
+ else {
+ if ( analyzerDefs.containsKey( name ) ) {
+ final Analyzer analyzer = buildAnalyzer( analyzerDefs.get( name ) );
+ namedAnalyzer.setDelegate( analyzer );
+ initializedAnalizers.put( name, analyzer );
+ }
+ else {
+ //exception
+ throw new SearchException("Analyzer found with an unknown definition: " + name);
+ }
+ }
+ }
+ }
+
+ private Analyzer buildAnalyzer(AnalyzerDef analyzerDef) {
+ TokenizerDef token = analyzerDef.tokenizer();
+ TokenizerFactory tokenFactory = (TokenizerFactory) instantiate( token.factory() );
+ tokenFactory.init( getMapOfParameters( token.params() ) );
+
+ final int length = analyzerDef.filters().length;
+ TokenFilterFactory[] filters = new TokenFilterFactory[length];
+ for ( int index = 0 ; index < length ; index++ ) {
+ TokenFilterDef filterDef = analyzerDef.filters()[index];
+ filters[index] = (TokenFilterFactory) instantiate( filterDef.factory() );
+ filters[index].init( getMapOfParameters( filterDef.params() ) );
+ }
+ return new TokenizerChain(tokenFactory, filters);
+ }
+
+ private Object instantiate(Class clazz) {
+ try {
+ return clazz.newInstance();
+ }
+ catch (IllegalAccessException e) {
+ throw new SearchException( "Unable to instantiate class: " + clazz, e );
+ }
+ catch (InstantiationException e) {
+ throw new SearchException( "Unable to instantiate class: " + clazz, e );
+ }
+ }
+
+ private Map<String, String> getMapOfParameters(Parameter[] params) {
+ Map<String, String> mapOfParams = new HashMap<String, String>( params.length );
+ for (Parameter param : params) {
+ mapOfParams.put( param.name(), param.value() );
+ }
+ return Collections.unmodifiableMap( mapOfParams );
+ }
+}
Modified: search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java 2008-04-22 15:04:59 UTC (rev 14523)
+++ search/trunk/src/java/org/hibernate/search/impl/SearchFactoryImpl.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -13,9 +13,6 @@
import java.util.WeakHashMap;
import java.util.concurrent.locks.ReentrantLock;
-import org.apache.lucene.analysis.Analyzer;
-import org.apache.lucene.analysis.standard.StandardAnalyzer;
-import org.apache.lucene.search.Similarity;
import org.hibernate.annotations.common.reflection.ReflectionManager;
import org.hibernate.annotations.common.reflection.XClass;
import org.hibernate.annotations.common.reflection.java.JavaReflectionManager;
@@ -46,7 +43,6 @@
import org.hibernate.search.store.DirectoryProvider;
import org.hibernate.search.store.DirectoryProviderFactory;
import org.hibernate.search.store.optimization.OptimizerStrategy;
-import org.hibernate.util.ReflectHelper;
/**
* @author Emmanuel Bernard
@@ -90,11 +86,8 @@
public SearchFactoryImpl(Configuration cfg) {
//yuk
ReflectionManager reflectionManager = getReflectionManager( cfg );
- //InitContext context = new InitContext();
- //Analyzer analyzer = initAnalyzer(cfg, context);
- Analyzer analyzer = initAnalyzer(cfg);
- Similarity similarity = initSimilarity(cfg);
- initDocumentBuilders(cfg, reflectionManager, analyzer, similarity);
+ InitContext context = new InitContext(cfg);
+ initDocumentBuilders(cfg, reflectionManager, context );
Set<Class> indexedClasses = documentBuilders.keySet();
for (DocumentBuilder builder : documentBuilders.values()) {
@@ -250,13 +243,10 @@
getBackendQueueProcessorFactory().getProcessor( queue ).run();
}
- private void initDocumentBuilders(Configuration cfg, ReflectionManager reflectionManager, Analyzer analyzer, Similarity similarity) {
+ private void initDocumentBuilders(Configuration cfg, ReflectionManager reflectionManager, InitContext context) {
Iterator iter = cfg.getClassMappings();
DirectoryProviderFactory factory = new DirectoryProviderFactory();
- //Map<String, AnalyzerDef> analyzerDefs = new HashMap<String, AnalyzerDef>();
-
- //cfg.getClass().getAnnotation( AnalyzerDef.class );
- //TODO SOlr.......
+
while (iter.hasNext()) {
PersistentClass clazz = (PersistentClass) iter.next();
Class<?> mappedClass = clazz.getMappedClass();
@@ -267,88 +257,21 @@
DirectoryProviderFactory.DirectoryProviders providers = factory.createDirectoryProviders( mappedXClass, cfg, this );
final DocumentBuilder<Object> documentBuilder = new DocumentBuilder<Object>(
- mappedXClass, analyzer, similarity, providers.getProviders(), providers.getSelectionStrategy(),
+ mappedXClass, context, providers.getProviders(), providers.getSelectionStrategy(),
reflectionManager
);
documentBuilders.put( mappedClass, documentBuilder );
}
bindFilterDefs(mappedXClass);
+ //TODO should analyzer def for classes at tyher sqme level???
}
}
}
+ context.initLazyAnalyzers();
factory.startDirectoryProviders();
}
- /**
- * Initilises the Lucene analyzer to use by reading the analyzer class from the configuration and instantiating it.
- *
- * @param cfg
- * The current configuration.
- * @return The Lucene analyzer to use for tokenisation.
- */
- private Analyzer initAnalyzer(Configuration cfg) {
- Class analyzerClass;
- String analyzerClassName = cfg.getProperty(Environment.ANALYZER_CLASS);
- if (analyzerClassName != null) {
- try {
- analyzerClass = ReflectHelper.classForName(analyzerClassName);
- } catch (Exception e) {
- throw new SearchException("Lucene analyzer class '" + analyzerClassName + "' defined in property '"
- + Environment.ANALYZER_CLASS + "' could not be found.", e);
- }
- } else {
- analyzerClass = StandardAnalyzer.class;
- }
- // Initialize analyzer
- Analyzer defaultAnalyzer;
- try {
- defaultAnalyzer = (Analyzer) analyzerClass.newInstance();
- } catch (ClassCastException e) {
- throw new SearchException("Lucene analyzer does not implement " + Analyzer.class.getName() + ": "
- + analyzerClassName, e);
- } catch (Exception e) {
- throw new SearchException("Failed to instantiate lucene analyzer with type " + analyzerClassName, e);
- }
- return defaultAnalyzer;
- }
-
- /**
- * Initilises the Lucene similarity to use
- */
- private Similarity initSimilarity(Configuration cfg) {
- Class similarityClass;
- String similarityClassName = cfg.getProperty(Environment.SIMILARITY_CLASS);
- if (similarityClassName != null) {
- try {
- similarityClass = ReflectHelper.classForName(similarityClassName);
- } catch (Exception e) {
- throw new SearchException("Lucene Similarity class '" + similarityClassName + "' defined in property '"
- + Environment.SIMILARITY_CLASS + "' could not be found.", e);
- }
- }
- else {
- similarityClass = null;
- }
-
- // Initialize similarity
- if ( similarityClass == null ) {
- return Similarity.getDefault();
- }
- else {
- Similarity defaultSimilarity;
- try {
- defaultSimilarity = (Similarity) similarityClass.newInstance();
- } catch (ClassCastException e) {
- throw new SearchException("Lucene similarity does not extend " + Similarity.class.getName() + ": "
- + similarityClassName, e);
- } catch (Exception e) {
- throw new SearchException("Failed to instantiate lucene similarity with type " + similarityClassName, e);
- }
- return defaultSimilarity;
- }
- }
-
private void buildFilterCachingStrategy(Properties properties) {
String impl = properties.getProperty( Environment.FILTER_CACHING_STRATEGY );
if ( StringHelper.isEmpty( impl ) || "mru".equalsIgnoreCase( impl ) ) {
@@ -363,10 +286,10 @@
throw new SearchException( "Unable to find filterCachingStrategy class: " + impl, e );
}
catch (IllegalAccessException e) {
- throw new SearchException( "Unable to instanciate filterCachingStrategy class: " + impl, e );
+ throw new SearchException( "Unable to instantiate filterCachingStrategy class: " + impl, e );
}
catch (InstantiationException e) {
- throw new SearchException( "Unable to instanciate filterCachingStrategy class: " + impl, e );
+ throw new SearchException( "Unable to instantiate filterCachingStrategy class: " + impl, e );
}
}
filterCachingStrategy.initialize( properties );
Added: search/trunk/src/java/org/hibernate/search/util/DelegateNamedAnalyzer.java
===================================================================
--- search/trunk/src/java/org/hibernate/search/util/DelegateNamedAnalyzer.java (rev 0)
+++ search/trunk/src/java/org/hibernate/search/util/DelegateNamedAnalyzer.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,46 @@
+//$
+package org.hibernate.search.util;
+
+import java.io.IOException;
+import java.io.Reader;
+
+import org.apache.lucene.analysis.Analyzer;
+import org.apache.lucene.analysis.TokenStream;
+
+/**
+ * delegate to a named analyzer
+ * delegated Analyzers are lazily configured
+ *
+ * @author Emmanuel Bernard
+ */
+public class DelegateNamedAnalyzer extends Analyzer {
+ private String name;
+ private Analyzer delegate;
+
+ public DelegateNamedAnalyzer(String name) {
+ this.name = name;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setDelegate(Analyzer delegate) {
+ this.delegate = delegate;
+ this.name = null; //unique init
+ }
+
+ public TokenStream tokenStream(String fieldName, Reader reader) {
+ return delegate.tokenStream( fieldName, reader );
+ }
+
+ @Override
+ public TokenStream reusableTokenStream(String fieldName, Reader reader) throws IOException {
+ return delegate.reusableTokenStream( fieldName, reader );
+ }
+
+ @Override
+ public int getPositionIncrementGap(String fieldName) {
+ return delegate.getPositionIncrementGap( fieldName );
+ }
+}
Added: search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java
===================================================================
--- search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java (rev 0)
+++ search/trunk/src/test/org/hibernate/search/test/analyzer/solr/SolrAnalyzerTest.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,41 @@
+package org.hibernate.search.test.analyzer.solr;
+
+import org.hibernate.search.test.SearchTestCase;
+import org.hibernate.search.FullTextSession;
+import org.hibernate.search.Search;
+import org.hibernate.Transaction;
+import org.apache.lucene.search.TermQuery;
+import org.apache.lucene.index.Term;
+
+/**
+ * @author Emmanuel Bernard
+ */
+public class SolrAnalyzerTest extends SearchTestCase {
+ public void testAnalyzerDef() throws Exception {
+ Team team = new Team();
+ team.setDescription( "This is a D�scription" );
+ team.setLocation( "Atlanta" );
+ team.setName( "ATL team" );
+ FullTextSession fts = Search.createFullTextSession( openSession() );
+ Transaction tx = fts.beginTransaction();
+ fts.persist( team );
+ tx.commit();
+ fts.clear();
+ tx = fts.beginTransaction();
+ TermQuery query = new TermQuery( new Term("description", "D�scription") );
+ assertEquals( "iso latin filter should work", 0, fts.createFullTextQuery( query ).list().size() );
+ query = new TermQuery( new Term("description", "is") );
+ assertEquals( "stop word filter should work", 0, fts.createFullTextQuery( query ).list().size() );
+ query = new TermQuery( new Term("description", "dascription") );
+ assertEquals( 1, fts.createFullTextQuery( query ).list().size() );
+ fts.delete( fts.createFullTextQuery( query ).list().get( 0 ) );
+ tx.commit();
+ fts.close();
+ }
+
+ protected Class[] getMappings() {
+ return new Class[] {
+ Team.class
+ };
+ }
+}
Added: search/trunk/src/test/org/hibernate/search/test/analyzer/solr/Team.java
===================================================================
--- search/trunk/src/test/org/hibernate/search/test/analyzer/solr/Team.java (rev 0)
+++ search/trunk/src/test/org/hibernate/search/test/analyzer/solr/Team.java 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,81 @@
+package org.hibernate.search.test.analyzer.solr;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.GeneratedValue;
+
+import org.hibernate.search.annotations.Indexed;
+import org.hibernate.search.annotations.DocumentId;
+import org.hibernate.search.annotations.Field;
+import org.hibernate.search.annotations.AnalyzerDef;
+import org.hibernate.search.annotations.TokenizerDef;
+import org.hibernate.search.annotations.TokenFilterDef;
+import org.hibernate.search.annotations.Parameter;
+import org.hibernate.search.annotations.Analyzer;
+import org.apache.solr.analysis.StandardTokenizerFactory;
+import org.apache.solr.analysis.ISOLatin1AccentFilterFactory;
+import org.apache.solr.analysis.LowerCaseFilterFactory;
+import org.apache.solr.analysis.StopFilterFactory;
+
+/**
+ * @author Emmanuel Bernard
+ */
+@Entity
+@Indexed
+@AnalyzerDef(name="customanalyzer",
+ tokenizer = @TokenizerDef(factory = StandardTokenizerFactory.class),
+ filters = {
+ @TokenFilterDef(factory = ISOLatin1AccentFilterFactory.class),
+ @TokenFilterDef(factory = LowerCaseFilterFactory.class),
+ @TokenFilterDef(factory = StopFilterFactory.class, params = {
+ @Parameter(name="words", value= "org/hibernate/search/test/analyzer/solr/stoplist.properties" ),
+ @Parameter(name="ignoreCase", value="true")
+ })
+})
+public class Team {
+ @Id
+ @DocumentId
+ @GeneratedValue
+ private Integer id;
+
+ @Field
+ private String name;
+
+ @Field
+ private String location;
+
+ @Field @Analyzer(definition = "customanalyzer")
+ private String description;
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getLocation() {
+ return location;
+ }
+
+ public void setLocation(String location) {
+ this.location = location;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+}
Added: search/trunk/src/test/org/hibernate/search/test/analyzer/solr/stoplist.properties
===================================================================
--- search/trunk/src/test/org/hibernate/search/test/analyzer/solr/stoplist.properties (rev 0)
+++ search/trunk/src/test/org/hibernate/search/test/analyzer/solr/stoplist.properties 2008-04-23 02:31:14 UTC (rev 14524)
@@ -0,0 +1,33 @@
+a
+an
+and
+are
+as
+at
+be
+but
+by
+for
+if
+in
+into
+is
+it
+no
+not
+of
+on
+or
+such
+that
+the
+their
+then
+there
+these
+they
+this
+to
+was
+will
+with
\ No newline at end of file
16 years, 8 months
Hibernate SVN: r14521 - in core/trunk: cache-ehcache and 19 other directories.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:55:03 -0400 (Mon, 21 Apr 2008)
New Revision: 14521
Added:
core/trunk/distribution/pom.xml
core/trunk/parent/pom.xml
core/trunk/tutorials/pom.xml
Modified:
core/trunk/cache-ehcache/pom.xml
core/trunk/cache-jbosscache/pom.xml
core/trunk/cache-jbosscache2/pom.xml
core/trunk/cache-oscache/pom.xml
core/trunk/cache-swarmcache/pom.xml
core/trunk/connection-c3p0/pom.xml
core/trunk/connection-proxool/pom.xml
core/trunk/core/pom.xml
core/trunk/distribution/src/assembly/dist.xml
core/trunk/distribution/src/assembly/hibernate-all.xml
core/trunk/documentation/jbosscache2/pom.xml
core/trunk/documentation/manual/pom.xml
core/trunk/documentation/pom.xml
core/trunk/jmx/pom.xml
core/trunk/pom.xml
core/trunk/testing/pom.xml
core/trunk/testsuite/pom.xml
core/trunk/tutorials/eg/pom.xml
core/trunk/tutorials/web/pom.xml
Log:
initial layout mods for distribution module based on hibernate.clone work
Modified: core/trunk/cache-ehcache/pom.xml
===================================================================
--- core/trunk/cache-ehcache/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/cache-ehcache/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate Ehcache Integration</name>
Modified: core/trunk/cache-jbosscache/pom.xml
===================================================================
--- core/trunk/cache-jbosscache/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/cache-jbosscache/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jbosscache</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate JBossCache Integration</name>
Modified: core/trunk/cache-jbosscache2/pom.xml
===================================================================
--- core/trunk/cache-jbosscache2/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/cache-jbosscache2/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jbosscache2</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate JBossCache2.x Integration</name>
Modified: core/trunk/cache-oscache/pom.xml
===================================================================
--- core/trunk/cache-oscache/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/cache-oscache/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-oscache</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate OSCache Integration</name>
Modified: core/trunk/cache-swarmcache/pom.xml
===================================================================
--- core/trunk/cache-swarmcache/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/cache-swarmcache/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-swarmcache</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate SwarmCache Integration</name>
Modified: core/trunk/connection-c3p0/pom.xml
===================================================================
--- core/trunk/connection-c3p0/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/connection-c3p0/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-c3p0</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate C3P0 ConnectionProvider</name>
Modified: core/trunk/connection-proxool/pom.xml
===================================================================
--- core/trunk/connection-proxool/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/connection-proxool/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-proxool</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate Proxool ConnectionProvider</name>
Modified: core/trunk/core/pom.xml
===================================================================
--- core/trunk/core/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/core/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate Core</name>
Added: core/trunk/distribution/pom.xml
===================================================================
--- core/trunk/distribution/pom.xml (rev 0)
+++ core/trunk/distribution/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
+ </parent>
+
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-distribution</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Hibernate Distribution</name>
+ <description>Builds the complete Hibernate distribution bundles</description>
+
+ <build>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-2</version>
+ <configuration>
+ <descriptors>
+ <descriptor>src/assembly/hibernate-all.xml</descriptor>
+ <descriptor>src/assembly/dist.xml</descriptor>
+ </descriptors>
+ </configuration>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+
+ <!--
+ The assemblies work off of dependency sets since the stuff to be
+ aggregated is no longer sub-modules after moving assembly itself
+ into this 'distribution' module.
+ -->
+ <dependencies>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-jmx</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-ehcache</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-jbosscache</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-jbosscache2</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-oscache</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-swarmcache</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-c3p0</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>hibernate-proxool</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+
+ <profiles>
+ <profile>
+ <!--
+ A profile used implicitly by the release plugin. Here we use
+ it to implicitly execute assembly building when deploy is executed
+ as part of release ( I think/hope :p )
+ -->
+ <id>release-profile</id>
+ <activation>
+ <property>
+ <name>performRelease</name>
+ <value>true</value>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <version>2.2-beta-2</version>
+ <executions>
+ <execution>
+ <phase>deploy</phase>
+ <goals>
+ <goal>single</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
+</project>
\ No newline at end of file
Modified: core/trunk/distribution/src/assembly/dist.xml
===================================================================
--- core/trunk/distribution/src/assembly/dist.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/distribution/src/assembly/dist.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
+
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
@@ -22,6 +23,7 @@
~ 51 Franklin Street, Fifth Floor
~ Boston, MA 02110-1301 USA
-->
+
<assembly xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/assembly-1.1.0-SNAPSHOT.xsd">
@@ -31,6 +33,10 @@
Hibernate did.
-->
+ <!-- todo : still need to account for documentation -->
+ <!-- todo : still need to account for tutorials -->
+ <!-- todo : still need to account for overall site stuff -->
+
<id>dist</id>
<formats>
<format>zip</format>
@@ -38,93 +44,112 @@
</formats>
<includeBaseDirectory>true</includeBaseDirectory>
- <includeSiteDirectory>true</includeSiteDirectory>
<files>
<file>
- <source>lgpl.txt</source>
+ <source>../lgpl.txt</source>
</file>
<file>
- <!-- todo : bundle only current changelog? that's supportable as a generated artifact... -->
- <!-- maven-changelog-plugin may already support this (^^) ... -->
- <source>changelog.txt</source>
+ <source>../hibernate_logo.gif</source>
</file>
<file>
+ <!-- todo : this should eventually become the release-notes bawany is working on -->
+ <source>../changelog.txt</source>
+ </file>
+ <file>
<source>target/${project.artifactId}-${project.version}-all.jar</source>
<destName>hibernate3.jar</destName>
</file>
+ <file>
+ <source>../testing/target/hibernate-testing-${project.version}.jar</source>
+ <destName>hibernate-testing.jar</destName>
+ </file>
</files>
- <fileSets>
- <fileSet>
- <outputDirectory>sources</outputDirectory>
- <useDefaultExcludes>true</useDefaultExcludes>
- <excludes>
- <exclude>**/target/**</exclude>
- </excludes>
- </fileSet>
- <!-- ugh! -->
- <fileSet>
- <directory>documentation/manual/en-US/target/docbook</directory>
- <outputDirectory>manual/en-US</outputDirectory>
+ <dependencySets>
+ <dependencySet>
+ <outputDirectory>lib/required</outputDirectory>
<includes>
- <include>**/**</include>
+ <include>antlr:antlr</include>
+
+ <include>cglib:cglib</include>
+ <include>asm:asm</include>
+ <include>asm:asm-attrs</include>
+
+ <include>commons-collections:commons-collections</include>
+
+ <include>dom4j:dom4j</include>
+
+ <include>javassist:javassist</include>
+
+ <include>org.slf4j:slf4j-api</include>
</includes>
- </fileSet>
- <fileSet>
- <directory>documentation/manual/fr-FR/target/docbook</directory>
- <outputDirectory>manual/fr-FR</outputDirectory>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/c3p0</outputDirectory>
<includes>
- <include>**/**</include>
+ <include>c3p0:c3p0</include>
</includes>
- </fileSet>
- </fileSets>
+ </dependencySet>
- <moduleSets>
- <!-- Handle the "code" related modules -->
- <moduleSet>
- <!-- this setting makes sure that sub modules of documentation are not picked up here -->
- <includeSubModules>false</includeSubModules>
+ <dependencySet>
+ <outputDirectory>lib/optional/proxool</outputDirectory>
<includes>
- <include>org.hibernate:*</include>
+ <include>proxool:proxool</include>
</includes>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/ehcache</outputDirectory>
+ <includes>
+ <include>net.sf.ehcache:ehcache</include>
+ </includes>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/jbosscache</outputDirectory>
+ <includes>
+ <include>jboss:jboss-cache</include>
+ <include>concurrent:concurrent:1.3.4</include>
+ <include>jboss:jboss-common:4.0.2</include>
+ <include>jboss:jboss-jmx:4.0.2</include>
+ <include>jboss:jboss-system:4.0.2</include>
+ <include>jgroups:jgroups-all:2.2.7</include>
+ </includes>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/jbosscache2</outputDirectory>
+ <includes>
+ <include>org.jboss.cache:jbosscache-core</include>
+ </includes>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/oscache</outputDirectory>
+ <includes>
+ <include>opensymphony:oscache</include>
+ </includes>
+ </dependencySet>
+
+ <dependencySet>
+ <outputDirectory>lib/optional/swarmcache</outputDirectory>
+ <includes>
+ <include>swarmcache:swarmcache</include>
+ </includes>
+ </dependencySet>
+ </dependencySets>
+
+ <fileSets>
+ <fileSet>
+ <directory>..</directory>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ <outputDirectory>project</outputDirectory>
<excludes>
- <!-- documentation handled in separate moduleSet -->
- <exclude>org.hibernate:hibernate-documentation</exclude>
- <!-- not included in the dist bundle -->
- <exclude>org.hibernate:hibernate-testsuite</exclude>
- <!-- not included in the dist bundle (for now; eventually will become part of documentation/tutorial) -->
- <exclude>org.hibernate:hibernate-eg</exclude>
+ <exclude>**/target/**</exclude>
</excludes>
- <binaries>
- <unpack>false</unpack>
- <includeDependencies>false</includeDependencies>
- <!-- drop version from JAR file name -->
- <outputFileNameMapping>${artifactId}.${extension}</outputFileNameMapping>
- <dependencySets>
- <dependencySet>
- <outputDirectory>lib</outputDirectory>
- <includes>
- <include>*:jar:*</include>
- </includes>
- <excludes>
- <exclude>org.hibernate:*</exclude>
- <exclude>*:sources</exclude>
- <exclude>*:javadoc</exclude>
- <!-- stuff jbosscache's pom pulls in -->
- <exclude>c3p0:c3p0:jar:0.9.0.4</exclude>
- <exclude>commons-logging:commons-logging:jar:1.1</exclude>
- <exclude>findbugs:annotations:*</exclude>
- <exclude>apache-httpclient:commons-httpclient:*</exclude>
- <exclude>apache-slide:*</exclude>
- <exclude>jdbm:jdbm:*</exclude>
- <exclude>org.beanshell:bsh:*</exclude>
- <exclude>sleepycat:je:*</exclude>
- </excludes>
- </dependencySet>
- </dependencySets>
- </binaries>
- </moduleSet>
- </moduleSets>
+ </fileSet>
+ </fileSets>
</assembly>
\ No newline at end of file
Modified: core/trunk/distribution/src/assembly/hibernate-all.xml
===================================================================
--- core/trunk/distribution/src/assembly/hibernate-all.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/distribution/src/assembly/hibernate-all.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
+
<!--
~ Hibernate, Relational Persistence for Idiomatic Java
~
- ~ Copyright (c) 2007, Red Hat Middleware LLC or third-party contributors as
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
~ indicated by the @author tags or express copyright attribution
- ~ statements applied by the authors. All third-party contributions are
+ ~ statements applied by the authors. All third-party contributions are
~ distributed under license by Red Hat Middleware LLC.
~
~ This copyrighted material is made available to anyone wishing to use, modify,
@@ -21,46 +22,31 @@
~ Free Software Foundation, Inc.
~ 51 Franklin Street, Fifth Floor
~ Boston, MA 02110-1301 USA
+ ~
-->
+
<assembly xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/assembly-1.1.0-SNAPSHOT.xsd">
<!--
- Produces a dist-style bundle similar to what previous (non-mavenized) versions of
- Hibernate did.
+ Take the 'core' resoures and build a jar, ala the legacy hibernate3.jar
-->
<id>all</id>
<formats>
<format>jar</format>
</formats>
+
<includeBaseDirectory>false</includeBaseDirectory>
<baseDirectory>hibernate-all</baseDirectory>
- <moduleSets>
- <!-- Handle the "code" related modules -->
- <moduleSet>
- <!-- this setting makes sure that sub modules of documentation are not picked up here -->
- <includeSubModules>false</includeSubModules>
+
+ <dependencySets>
+ <dependencySet>
+ <unpack>true</unpack>
<includes>
<include>org.hibernate:*</include>
</includes>
- <excludes>
- <!-- documentation handled in separate moduleSet -->
- <exclude>org.hibernate:hibernate-documentation</exclude>
- <!-- not included in the dist bundle -->
- <exclude>org.hibernate:hibernate-testsuite</exclude>
- <!-- not included in the dist bundle (for now; eventually will become part of documentation/tutorial) -->
- <exclude>org.hibernate:hibernate-eg</exclude>
- </excludes>
- <sources>
- <includeModuleDirectory>false</includeModuleDirectory>
- <fileSets>
- <fileSet>
- <directory>target/classes</directory>
- <outputDirectory>/</outputDirectory>
- </fileSet>
- </fileSets>
- </sources>
- </moduleSet>
- </moduleSets>
+ </dependencySet>
+ </dependencySets>
+
</assembly>
\ No newline at end of file
Modified: core/trunk/documentation/jbosscache2/pom.xml
===================================================================
--- core/trunk/documentation/jbosscache2/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/documentation/jbosscache2/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,13 +1,41 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
Modified: core/trunk/documentation/manual/pom.xml
===================================================================
--- core/trunk/documentation/manual/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/documentation/manual/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,3 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
@@ -3,9 +30,10 @@
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../../parent/pom.xml</relativePath>
</parent>
Modified: core/trunk/documentation/pom.xml
===================================================================
--- core/trunk/documentation/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/documentation/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,18 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
+<?xml version="1.0"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
-
+
<groupId>org.hibernate</groupId>
<artifactId>hibernate-documentation</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Hibernate Core - Documentation</name>
@@ -20,7 +47,7 @@
<modules>
<module>manual</module>
- <module>tutorial</module>
+ <module>jbosscache2</module>
</modules>
</project>
Modified: core/trunk/jmx/pom.xml
===================================================================
--- core/trunk/jmx/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/jmx/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jmx</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate JMX Module</name>
Added: core/trunk/parent/pom.xml
===================================================================
--- core/trunk/parent/pom.xml (rev 0)
+++ core/trunk/parent/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -0,0 +1,335 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-parent</artifactId>
+ <packaging>pom</packaging>
+ <version>3.3.0-SNAPSHOT</version>
+
+ <name>Hibernate Core Parent POM</name>
+ <description>The base POM for all Hibernate Core modules.</description>
+ <url>http://hibernate.org</url>
+
+ <organization>
+ <name>Hibernate.org</name>
+ <url>http://hibernate.org</url>
+ </organization>
+
+ <licenses>
+ <license>
+ <name>GNU Lesser General Public License</name>
+ <url>http://www.gnu.org/copyleft/lesser.html</url>
+ <comments>See discussion at http://hibernate.org/356.html for more details.</comments>
+ <distribution>repo</distribution>
+ </license>
+ </licenses>
+
+ <scm>
+ <!-- this is the cloned repo!!! -->
+ <connection>scm:svn:https://svn.jboss.org/repos/hibernate/core/trunk</connection>
+ <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/trunk</developerConnection>
+ <url>https://svn.jboss.org/repos/hibernate/core/trunk</url>
+ </scm>
+
+ <ciManagement>
+ <system>hudson</system>
+ <url>http://hudson.jboss.org/hudson/job/hibernate-testsuite/</url>
+ <notifiers>
+ <notifier>
+ <type>mail</type>
+ <address>hibernate-dev(a)lists.jboss.org</address>
+ </notifier>
+ </notifiers>
+ </ciManagement>
+
+ <issueManagement>
+ <system>jira</system>
+ <url>http://opensource.atlassian.com/projects/hibernate/browse/HHH</url>
+ </issueManagement>
+
+ <mailingLists>
+ <mailingList>
+ <name>Hibernate Announcements</name>
+ <post>hibernate-announce(a)lists.jboss.org</post>
+ <subscribe>https://lists.jboss.org/mailman/listinfo/hibernate-announce</subscribe>
+ <unsubscribe>https://lists.jboss.org/mailman/listinfo/hibernate-announce</unsubscribe>
+ <archive>http://lists.jboss.org/pipermail/hibernate-dev/</archive>
+ </mailingList>
+ <mailingList>
+ <name>Hibernate Commit Notificatons</name>
+ <post>hibernate-commits(a)lists.jboss.org</post>
+ <subscribe>https://lists.jboss.org/mailman/listinfo/hibernate-commits</subscribe>
+ <unsubscribe>https://lists.jboss.org/mailman/listinfo/hibernate-commits</unsubscribe>
+ <archive>http://lists.jboss.org/pipermail/hibernate-commits/</archive>
+ </mailingList>
+ <mailingList>
+ <name>Hibernate Developers</name>
+ <post>hibernate-dev(a)lists.jboss.org</post>
+ <subscribe>https://lists.jboss.org/mailman/listinfo/hibernate-dev</subscribe>
+ <unsubscribe>https://lists.jboss.org/mailman/listinfo/hibernate-dev</unsubscribe>
+ <archive>http://lists.jboss.org/pipermail/hibernate-dev/</archive>
+ <otherArchives>
+ <otherArchive>http://www.mail-archive.com/hibernate-dev%40lists.jboss.org/index.html</otherArchive>
+ </otherArchives>
+ </mailingList>
+ <mailingList>
+ <name>Hibernate Issue Notifications</name>
+ <post>hibernate-issues(a)lists.jboss.org</post>
+ <subscribe>https://lists.jboss.org/mailman/listinfo/hibernate-issues</subscribe>
+ <unsubscribe>https://lists.jboss.org/mailman/listinfo/hibernate-issues</unsubscribe>
+ <archive>http://lists.jboss.org/pipermail/hibernate-issues/</archive>
+ </mailingList>
+ </mailingLists>
+
+ <build>
+ <plugins>
+ <plugin>
+ <!-- require at least JDK 1.5 to run the build -->
+ <!-- ... -->
+ <!-- we need at least Maven 2.0.8 because of a bug fix affecting our antlr usage -->
+ <!-- 2.0.8 not released at this time, so I instead say anything greater that 2.0.7 -->
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <version>1.0-alpha-3</version>
+ <executions>
+ <execution>
+ <id>enforce-java</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requireJavaVersion>
+ <version>[1.5,)</version>
+ </requireJavaVersion>
+ <requireMavenVersion>
+ <version>(2.0.7,)</version>
+ </requireMavenVersion>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- by default, compile to JDK 1.4 compatibility (individual modules and/or user can override) -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <source>1.4</source>
+ <target>1.4</target>
+ </configuration>
+ </plugin>
+ <!-- add specification/implementation details to the manifests -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-URL>${pom.url}</Implementation-URL>
+ </manifestEntries>
+ </archive>
+ </configuration>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.4</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+ <extensions>
+ <extension>
+ <groupId>org.apache.maven.wagon</groupId>
+ <artifactId>wagon-webdav</artifactId>
+ <version>1.0-beta-2</version>
+ </extension>
+ </extensions>
+ </build>
+
+ <reporting>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.4.2</version>
+ <configuration>
+ <redirectTestOutputToFile>true</redirectTestOutputToFile>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-javadoc-plugin</artifactId>
+ <version>2.4</version>
+ <configuration>
+ <links>
+ <link>http://java.sun.com/j2se/1.4.2/docs/api/</link>
+ <link>http://java.sun.com/j2ee/1.4/docs/api/</link>
+ </links>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jxr-plugin</artifactId>
+ <version>2.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-pmd-plugin</artifactId>
+ <version>2.2</version>
+ <configuration>
+ <linkXref>true</linkXref>
+ <minimumTokens>100</minimumTokens>
+ <targetJdk>1.4</targetJdk>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>taglist-maven-plugin</artifactId>
+ <version>2.1</version>
+ <configuration>
+ <tags>
+ <tag>@FIXME</tag>
+ <tag>@fixme</tag>
+ <tag>FIXME</tag>
+ <tag>fixme</tag>
+ <tag>@TODO</tag>
+ <tag>@todo</tag>
+ <tag>TODO</tag>
+ <tag>todo</tag>
+ </tags>
+ </configuration>
+ </plugin>
+ <plugin>
+ <!-- Note: aggregate-able, may cause problems if we aggregate jxr and not this because of the xref links -->
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>javancss-maven-plugin</artifactId>
+ <version>2.0-beta-2</version>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>1.1.1</version>
+ <configuration>
+ <onlyAnalyze>org.hibernate.*</onlyAnalyze>
+ </configuration>
+ </plugin>
+ </plugins>
+ </reporting>
+
+ <profiles>
+ <profile>
+ <!--
+ A profile used implicitly by the release plugin. Here we use it to enable documentation building
+ as well as execution of the assembly plugin (to build the SourceForge dist).
+ -->
+ <id>release-profile</id>
+ <modules>
+ <module>documentation</module>
+ </modules>
+ </profile>
+
+ <!-- seperate profile for documentation activation -->
+ <profile>
+ <id>docs</id>
+ <modules>
+ <module>documentation</module>
+ </modules>
+ </profile>
+ </profiles>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-api</artifactId>
+ <version>1.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>antlr</groupId>
+ <artifactId>antlr</artifactId>
+ <version>2.7.6</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>3.1</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ </dependency>
+ <dependency>
+ <groupId>dom4j</groupId>
+ <artifactId>dom4j</artifactId>
+ <version>1.6.1</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <distributionManagement>
+ <repository>
+ <!-- Copy the dist to the local checkout of the JBoss maven2 repo ${maven.repository.root} -->
+ <!-- It is anticipated that ${maven.repository.root} be set in user's settings.xml -->
+ <!-- todo : replace this with direct svn access once the svnkit providers are available -->
+ <id>repository.jboss.org</id>
+ <url>file://${maven.repository.root}</url>
+ </repository>
+ <snapshotRepository>
+ <id>snapshots.jboss.org</id>
+ <name>JBoss Snapshot Repository</name>
+ <url>dav:https://snapshots.jboss.org/maven2</url>
+ </snapshotRepository>
+ </distributionManagement>
+
+</project>
\ No newline at end of file
Modified: core/trunk/pom.xml
===================================================================
--- core/trunk/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,3 +1,30 @@
+<?xml version="1.0"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -4,26 +31,20 @@
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>parent/pom.xml</relativePath>
</parent>
-
+
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<packaging>pom</packaging>
- <version>3.3.0-SNAPSHOT</version>
<name>Hibernate Core Aggregator</name>
<description>Aggregator of the Hibernate Core modules.</description>
- <url>http://hibernate.org</url>
- <scm>
- <connection>scm:svn:https://svn.jboss.org/repos/hibernate/core/trunk</connection>
- <developerConnection>scm:svn:https://svn.jboss.org/repos/hibernate/core/trunk</developerConnection>
- <url>https://svn.jboss.org/repos/hibernate/core/trunk</url>
- </scm>
-
<modules>
+ <module>parent</module>
<module>core</module>
<module>cache-ehcache</module>
<module>cache-jbosscache</module>
@@ -35,40 +56,23 @@
<module>jmx</module>
<module>testing</module>
<module>testsuite</module>
- <module>eg</module>
-<!-- Need to scope bytecode providers first
+ <module>tutorials</module>
+<!--
+ Need to scope bytecode providers first...
<module>bytecode-cglib</module>
<module>bytecode-javassist</module>
-->
+ <module>distribution</module>
</modules>
-
+
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.0-beta-7</version>
- <executions>
- <execution>
- <goals>
- <goal>perform</goal>
- </goals>
- <configuration>
- <autoVersionSubmodules>true</autoVersionSubmodules>
- <goals>install,site,assembly:single</goals>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.2-beta-2</version>
<configuration>
- <descriptors>
- <descriptor>src/assembly/hibernate-all.xml</descriptor>
- <descriptor>src/assembly/dist.xml</descriptor>
- </descriptors>
+ <autoVersionSubmodules>true</autoVersionSubmodules>
</configuration>
</plugin>
</plugins>
@@ -77,10 +81,16 @@
<profiles>
<profile>
<!--
- A profile used implicitly by the release plugin. Here we use it to enable documentation building
- as well as execution of the assembly plugin (to build the SourceForge dist).
+ A profile used implicitly by the release plugin. Here we use
+ it to enable documentation building.
-->
<id>release-profile</id>
+ <activation>
+ <property>
+ <name>performRelease</name>
+ <value>true</value>
+ </property>
+ </activation>
<modules>
<module>documentation</module>
</modules>
@@ -94,4 +104,5 @@
</modules>
</profile>
</profiles>
+
</project>
\ No newline at end of file
Modified: core/trunk/testing/pom.xml
===================================================================
--- core/trunk/testing/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/testing/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
-
+
<groupId>org.hibernate</groupId>
<artifactId>hibernate-testing</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate Testing</name>
Modified: core/trunk/testsuite/pom.xml
===================================================================
--- core/trunk/testsuite/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/testsuite/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,16 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+<?xml version="1.0"?>
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
</parent>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-testsuite</artifactId>
- <version>3.3.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Hibernate Testsuite</name>
Modified: core/trunk/tutorials/eg/pom.xml
===================================================================
--- core/trunk/tutorials/eg/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/tutorials/eg/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,3 +1,30 @@
+<?xml version="1.0"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -2,13 +29,11 @@
- <!-- todo : this module should eventually make its way over to documentation/tutorial -->
-
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-tutorials</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
+
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-eg</artifactId>
- <version>3.3.0-SNAPSHOT</version>
+ <artifactId>hibernate-tutorial-eg</artifactId>
<packaging>jar</packaging>
@@ -18,11 +43,4 @@
<name>Hibernate Example</name>
<description>A simple example of Hibernate functionality</description>
- <dependencies>
- <dependency>
- <groupId>${groupId}</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>${version}</version>
- </dependency>
- </dependencies>
</project>
\ No newline at end of file
Added: core/trunk/tutorials/pom.xml
===================================================================
--- core/trunk/tutorials/pom.xml (rev 0)
+++ core/trunk/tutorials/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -0,0 +1,371 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-parent</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../parent/pom.xml</relativePath>
+ </parent>
+
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-tutorials</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Hibernate Tutorials</name>
+ <description>Series of tutorials demonstrating Hibernate functionality</description>
+
+ <modules>
+ <module>eg</module>
+ <module>web</module>
+ </modules>
+
+ <dependencies>
+ <dependency>
+ <groupId>${groupId}</groupId>
+ <artifactId>hibernate-core</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <dependency>
+ <groupId>${groupId}</groupId>
+ <artifactId>hibernate-testing</artifactId>
+ <version>${version}</version>
+ </dependency>
+ <!-- these are optional on core... :( -->
+ <dependency>
+ <groupId>javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>3.4.GA</version>
+ </dependency>
+ <dependency>
+ <groupId>cglib</groupId>
+ <artifactId>cglib</artifactId>
+ <version>2.1_3</version>
+ </dependency>
+ <dependency>
+ <groupId>asm</groupId>
+ <artifactId>asm-attrs</artifactId>
+ <version>1.5.3</version>
+ </dependency>
+ <!-- optional dom4j dependency; needed here for dom4j (de)serialization -->
+ <dependency>
+ <groupId>jaxen</groupId>
+ <artifactId>jaxen</artifactId>
+ <version>1.1</version>
+ </dependency>
+ <!-- the tutorials use HSQLDB -->
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <version>1.8.0.2</version>
+ </dependency>
+ <!-- logging setup -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>99.0-does-not-exist</version>
+ </dependency>
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging-api</artifactId>
+ <version>99.0-does-not-exist</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>jcl104-over-slf4j</artifactId>
+ <version>1.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-log4j12</artifactId>
+ <version>1.4.2</version>
+ </dependency>
+ <dependency>
+ <groupId>log4j</groupId>
+ <artifactId>log4j</artifactId>
+ <version>1.2.14</version>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <testResources>
+ <testResource>
+ <filtering>false</filtering>
+ <directory>src/test/java</directory>
+ <includes>
+ <include>**/*.xml</include>
+ </includes>
+ </testResource>
+ <testResource>
+ <filtering>true</filtering>
+ <directory>src/test/resources</directory>
+ </testResource>
+ </testResources>
+
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <!-- HSQLDB is the default (eventually move to H2) -->
+ <profile>
+ <id>hsqldb</id>
+ <activation>
+ <activeByDefault>true</activeByDefault>
+ </activation>
+ <dependencies>
+ <dependency>
+ <groupId>hsqldb</groupId>
+ <artifactId>hsqldb</artifactId>
+ <version>1.8.0.2</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.HSQLDialect</db.dialect>
+ <jdbc.driver>org.hsqldb.jdbcDriver</jdbc.driver>
+ <jdbc.url>jdbc:hsqldb:target/test/db/hsqldb/hibernate</jdbc.url>
+ <jdbc.user>sa</jdbc.user>
+ <jdbc.pass />
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The H2 test envionment -->
+ <profile>
+ <id>h2</id>
+ <dependencies>
+ <dependency>
+ <groupId>org.h2database</groupId>
+ <artifactId>h2database</artifactId>
+ <version>1.0.20061217</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.H2Dialect</db.dialect>
+ <jdbc.driver>org.h2.Driver</jdbc.driver>
+ <jdbc.url>jdbc:h2:mem:target/test/db/h2/hibernate</jdbc.url>
+ <jdbc.user>sa</jdbc.user>
+ <jdbc.pass />
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!--
+ ###################################################################
+ Profiles naming db instances in the Red Hat QA/QE lab
+
+ First, those with OSS drivers
+ ###################################################################
+ -->
+
+ <!-- The MySQL5 test envionment -->
+ <profile>
+ <id>mysql5</id>
+ <dependencies>
+ <dependency>
+ <groupId>mysql</groupId>
+ <artifactId>mysql-connector-java</artifactId>
+ <version>5.0.5</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.MySQL5InnoDBDialect</db.dialect>
+ <jdbc.driver>com.mysql.jdbc.Driver</jdbc.driver>
+ <jdbc.url>jdbc:mysql://dev02.qa.atl.jboss.com/cruisecontrol</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The PostgreSQL test envionment -->
+ <profile>
+ <id>pgsql8</id>
+ <dependencies>
+ <dependency>
+ <groupId>postgresql</groupId>
+ <artifactId>postgresql</artifactId>
+ <version>8.2-504</version>
+ <classifier>jdbc3</classifier>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.PostgreSQLDialect</db.dialect>
+ <jdbc.driver>org.postgresql.Driver</jdbc.driver>
+ <jdbc.url>jdbc:postgresql://dev01.qa.atl.jboss.com:5432:cruisecontrol</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!--
+ ###################################################################
+ Then, those with commercial drivers
+ ###################################################################
+ -->
+
+ <!-- The Oracle9i test envionment -->
+ <profile>
+ <id>oracle9i</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.oracle</groupId>
+ <artifactId>ojdbc14</artifactId>
+ <!-- use the 10g drivers which are surprisingly largely bug free -->
+ <version>10.0.2.0</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.Oracle9iDialect</db.dialect>
+ <jdbc.driver>oracle.jdbc.driver.OracleDriver</jdbc.driver>
+ <jdbc.url>jdbc:oracle:thin:@dev20.qa.atl.jboss.com:1521:qa</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The Oracle10g test envionment -->
+ <profile>
+ <id>oracle10g</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.oracle</groupId>
+ <artifactId>ojdbc14</artifactId>
+ <!-- use the 10g drivers which are surprisingly largely bug free -->
+ <version>10.0.2.0</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.Oracle10gDialect</db.dialect>
+ <jdbc.driver>oracle.jdbc.driver.OracleDriver</jdbc.driver>
+ <jdbc.url>jdbc:oracle:thin:@dev01.qa.atl.jboss.com:1521:qadb01</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The DB2 8.x test envionment (using 9x drivers)-->
+ <profile>
+ <id>db2-8</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.ibm</groupId>
+ <artifactId>db2jcc</artifactId>
+ <version>3.1.57</version>
+ </dependency>
+ <dependency>
+ <groupId>com.ibm</groupId>
+ <artifactId>db2jcc_license_cu</artifactId>
+ <version>3.1.57</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.DB2Dialect</db.dialect>
+ <jdbc.driver>com.ibm.db2.jcc.DB2Driver</jdbc.driver>
+ <jdbc.url>jdbc:db2://dev32.qa.atl.jboss.com:50000/jbossqa</jdbc.url>
+ <jdbc.user>hiber</jdbc.user>
+ <jdbc.pass>hiber</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The Sybase 12 test envionment -->
+ <profile>
+ <id>sybase12</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.sybase</groupId>
+ <artifactId>jconnect</artifactId>
+ <version>6.0.5</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.SybaseDialect</db.dialect>
+ <jdbc.driver>com.sybase.jdbc3.jdbc.SybDriver</jdbc.driver>
+ <jdbc.url>jdbc:sybase:Tds:dev01.qa.atl.jboss.com:4100/cruisecontrol</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The SQLServer2005 (jTDS) test envionment -->
+ <profile>
+ <id>sqlserver-jtds</id>
+ <dependencies>
+ <dependency>
+ <groupId>net.sourceforge.jtds</groupId>
+ <artifactId>jtds</artifactId>
+ <version>1.2</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.SQLServerDialect</db.dialect>
+ <jdbc.driver>net.sourceforge.jtds.jdbc.Driver</jdbc.driver>
+ <jdbc.url>jdbc:jtds:sqlserver://dev30.qa.atl.jboss.com:3918/cruisecontrol</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation />
+ </properties>
+ </profile>
+
+ <!-- The SQLServer2005 (MS JDBC) test envionment -->
+ <profile>
+ <id>sqlserver-msjdbc</id>
+ <dependencies>
+ <dependency>
+ <groupId>com.microsoft.sqlserver</groupId>
+ <artifactId>msjdbc</artifactId>
+ <version>1.1</version>
+ </dependency>
+ </dependencies>
+ <properties>
+ <db.dialect>org.hibernate.dialect.SQLServerDialect</db.dialect>
+ <jdbc.driver>com.microsoft.sqlserver.jdbc.SQLServerDriver</jdbc.driver>
+ <jdbc.url>jdbc:sqlserver://dev30.qa.atl.jboss.com:3918</jdbc.url>
+ <jdbc.user>cruisecontrol</jdbc.user>
+ <jdbc.pass>cruisecontrol</jdbc.pass>
+ <jdbc.isolation>4096</jdbc.isolation>
+ </properties>
+ </profile>
+
+ </profiles>
+</project>
\ No newline at end of file
Modified: core/trunk/tutorials/web/pom.xml
===================================================================
--- core/trunk/tutorials/web/pom.xml 2008-04-22 00:30:37 UTC (rev 14520)
+++ core/trunk/tutorials/web/pom.xml 2008-04-22 00:55:03 UTC (rev 14521)
@@ -1,18 +1,45 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
+<?xml version="1.0"?>
+
+<!--
+ ~ Hibernate, Relational Persistence for Idiomatic Java
+ ~
+ ~ Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as
+ ~ indicated by the @author tags or express copyright attribution
+ ~ statements applied by the authors. All third-party contributions are
+ ~ distributed under license by Red Hat Middleware LLC.
+ ~
+ ~ This copyrighted material is made available to anyone wishing to use, modify,
+ ~ copy, or redistribute it subject to the terms and conditions of the GNU
+ ~ Lesser General Public License, as published by the Free Software Foundation.
+ ~
+ ~ This program is distributed in the hope that it will be useful,
+ ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ ~ or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ ~ for more details.
+ ~
+ ~ You should have received a copy of the GNU Lesser General Public License
+ ~ along with this distribution; if not, write to:
+ ~ Free Software Foundation, Inc.
+ ~ 51 Franklin Street, Fifth Floor
+ ~ Boston, MA 02110-1301 USA
+ ~
+ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
-
+
<parent>
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-core-parent</artifactId>
- <version>3</version>
+ <artifactId>hibernate-tutorials</artifactId>
+ <version>3.3.0-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
</parent>
-
+
<groupId>org.hibernate</groupId>
- <artifactId>hibernate-tutorial</artifactId>
- <version>3.3.0-SNAPSHOT</version>
+ <artifactId>hibernate-tutorial-web</artifactId>
<packaging>war</packaging>
<name>Hibernate Tutorial</name>
@@ -20,11 +47,6 @@
<dependencies>
<dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>${version}</version>
- </dependency>
- <dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.3</version>
16 years, 8 months
Hibernate SVN: r14520 - in core/trunk: tutorials and 1 other directory.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:30:37 -0400 (Mon, 21 Apr 2008)
New Revision: 14520
Added:
core/trunk/tutorials/web/
Removed:
core/trunk/documentation/tutorial/
Log:
moved the web tutorial to the new tutorials module
Copied: core/trunk/tutorials/web (from rev 14519, core/trunk/documentation/tutorial)
16 years, 8 months
Hibernate SVN: r14519 - in core/trunk: distribution and 1 other directory.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:20:04 -0400 (Mon, 21 Apr 2008)
New Revision: 14519
Added:
core/trunk/distribution/src/
Removed:
core/trunk/src/
Log:
move assembly/site stuff into dedicated 'distribution' module
Copied: core/trunk/distribution/src (from rev 14518, core/trunk/src)
16 years, 8 months
Hibernate SVN: r14518 - core/trunk.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:18:48 -0400 (Mon, 21 Apr 2008)
New Revision: 14518
Added:
core/trunk/parent/
Log:
pull parent pom inline
16 years, 8 months
Hibernate SVN: r14517 - in core/trunk: tutorials and 1 other directory.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:17:42 -0400 (Mon, 21 Apr 2008)
New Revision: 14517
Added:
core/trunk/tutorials/eg/
Removed:
core/trunk/eg/
Log:
moving eg to tutorials
Copied: core/trunk/tutorials/eg (from rev 14516, core/trunk/eg)
16 years, 8 months
Hibernate SVN: r14516 - core/trunk.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 20:15:39 -0400 (Mon, 21 Apr 2008)
New Revision: 14516
Added:
core/trunk/distribution/
core/trunk/tutorials/
Log:
layout change to account for working assembly building
16 years, 8 months
Hibernate SVN: r14586 - core/trunk/distribution/src/assembly.
by hibernate-commits@lists.jboss.org
Author: steve.ebersole(a)jboss.com
Date: 2008-04-21 19:32:31 -0400 (Mon, 21 Apr 2008)
New Revision: 14586
Modified:
core/trunk/distribution/src/assembly/hibernate-all.xml
Log:
add unpack option
Modified: core/trunk/distribution/src/assembly/hibernate-all.xml
===================================================================
--- core/trunk/distribution/src/assembly/hibernate-all.xml 2008-04-21 23:28:44 UTC (rev 14585)
+++ core/trunk/distribution/src/assembly/hibernate-all.xml 2008-04-21 23:32:31 UTC (rev 14586)
@@ -40,6 +40,7 @@
<dependencySets>
<dependencySet>
+ <unpack>true</unpack>
<includes>
<include>org.hibernate:*</include>
</includes>
16 years, 8 months