mirror of
https://github.com/hibernate/hibernate-orm
synced 2025-02-23 19:57:08 +00:00
HHH-14529 Introduce JAXB bindings for JPA's orm.xml
Adapted from Steve's work on the unified JPA/ORM XML mapping. See:
4ff3795e60 (diff-b407928c3aa7ee1f231e0119ff70345caa5f6a83ed6348128c5159afbe3c6df2)
https://github.com/sebersole/hibernate-orm/compare/jandex-binding
Co-authored-by: Steve Ebersole <steve@hibernate.org>
This commit is contained in:
parent
252fb65f95
commit
2907c95cbd
@ -200,6 +200,11 @@ xjc {
|
||||
xjcBinding = file( 'src/main/xjb/hbm-mapping-bindings.xjb' )
|
||||
xjcExtensions = ['inheritance', 'simplify']
|
||||
}
|
||||
mapping {
|
||||
xsd = file( 'src/main/resources/org/hibernate/jpa/orm_2_2.xsd' )
|
||||
xjcBinding = file( 'src/main/xjb/mapping-bindings.xjb' )
|
||||
xjcExtensions = ['inheritance']
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.AccessType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA AccessType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class AccessTypeMarshalling {
|
||||
public static AccessType fromXml(String name) {
|
||||
return AccessType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(AccessType accessType) {
|
||||
return accessType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.DiscriminatorType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA DiscriminatorType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class DiscriminatorTypeMarshalling {
|
||||
public static DiscriminatorType fromXml(String name) {
|
||||
return DiscriminatorType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(DiscriminatorType discriminatorType) {
|
||||
return discriminatorType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.EnumType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA EnumType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class EnumTypeMarshalling {
|
||||
public static EnumType fromXml(String name) {
|
||||
return EnumType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(EnumType enumType) {
|
||||
return enumType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.FetchType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA FetchType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class FetchTypeMarshalling {
|
||||
public static FetchType fromXml(String name) {
|
||||
return FetchType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(FetchType fetchType) {
|
||||
return fetchType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.LockModeType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA LockModeType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class LockModeTypeMarshalling {
|
||||
public static LockModeType fromXml(String name) {
|
||||
return LockModeType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(LockModeType lockModeType) {
|
||||
return lockModeType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.ParameterMode;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA ParameterMode enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class ParameterModeMarshalling {
|
||||
public static ParameterMode fromXml(String name) {
|
||||
return ParameterMode.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(ParameterMode parameterMode) {
|
||||
return parameterMode.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,24 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.internal;
|
||||
|
||||
import javax.persistence.TemporalType;
|
||||
|
||||
/**
|
||||
* Marshalling support for dealing with JPA TemporalType enums. Plugged into JAXB for binding
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public class TemporalTypeMarshalling {
|
||||
public static TemporalType fromXml(String name) {
|
||||
return TemporalType.valueOf( name );
|
||||
}
|
||||
|
||||
public static String toXml(TemporalType temporalType) {
|
||||
return temporalType.name();
|
||||
}
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* JAXB for JPA's {@code orm.xml} mapping schema.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping;
|
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Common interface for JAXB bindings which are containers of attributes.
|
||||
*
|
||||
* @author Strong Liu
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface AttributesContainer {
|
||||
|
||||
List<JaxbTransient> getTransient();
|
||||
|
||||
List<JaxbBasic> getBasic();
|
||||
|
||||
List<JaxbElementCollection> getElementCollection();
|
||||
|
||||
List<JaxbEmbedded> getEmbedded();
|
||||
|
||||
List<JaxbManyToMany> getManyToMany();
|
||||
|
||||
List<JaxbManyToOne> getManyToOne();
|
||||
|
||||
List<JaxbOneToMany> getOneToMany();
|
||||
|
||||
List<JaxbOneToOne> getOneToOne();
|
||||
|
||||
}
|
@ -0,0 +1,57 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
import java.util.List;
|
||||
import javax.persistence.EnumType;
|
||||
import javax.persistence.TemporalType;
|
||||
|
||||
/**
|
||||
* Common interface for Jaxb bindings that represent persistent collection attributes.
|
||||
*
|
||||
* @author Brett Meyer
|
||||
*/
|
||||
public interface CollectionAttribute extends FetchableAttribute {
|
||||
|
||||
String getOrderBy();
|
||||
|
||||
void setOrderBy(String value);
|
||||
|
||||
JaxbOrderColumn getOrderColumn();
|
||||
|
||||
void setOrderColumn(JaxbOrderColumn value);
|
||||
|
||||
JaxbMapKey getMapKey();
|
||||
|
||||
void setMapKey(JaxbMapKey value);
|
||||
|
||||
JaxbMapKeyClass getMapKeyClass();
|
||||
|
||||
void setMapKeyClass(JaxbMapKeyClass value);
|
||||
|
||||
TemporalType getMapKeyTemporal();
|
||||
|
||||
void setMapKeyTemporal(TemporalType value);
|
||||
|
||||
EnumType getMapKeyEnumerated();
|
||||
|
||||
void setMapKeyEnumerated(EnumType value);
|
||||
|
||||
List<JaxbAttributeOverride> getMapKeyAttributeOverride();
|
||||
|
||||
List<JaxbConvert> getMapKeyConvert();
|
||||
|
||||
JaxbMapKeyColumn getMapKeyColumn();
|
||||
|
||||
void setMapKeyColumn(JaxbMapKeyColumn value);
|
||||
|
||||
List<JaxbMapKeyJoinColumn> getMapKeyJoinColumn();
|
||||
|
||||
JaxbForeignKey getMapKeyForeignKey();
|
||||
|
||||
void setMapKeyForeignKey(JaxbForeignKey value);
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
import javax.persistence.FetchType;
|
||||
|
||||
/**
|
||||
* Common interface for JAXB bindings that represent attributes with laziness and fetch style.
|
||||
*
|
||||
* @author Brett Meyer
|
||||
*/
|
||||
public interface FetchableAttribute {
|
||||
|
||||
FetchType getFetch();
|
||||
|
||||
void setFetch(FetchType value);
|
||||
|
||||
}
|
@ -0,0 +1,17 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
/**
|
||||
* Common interface for all the JAXB bindings representing lifecycle callbacks.
|
||||
*
|
||||
* @author Strong Liu
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface LifecycleCallback {
|
||||
String getMethodName();
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
import javax.persistence.AccessType;
|
||||
|
||||
/**
|
||||
* Common interface for JAXB bindings representing entities, mapped-superclasses and embeddables (JPA collective
|
||||
* calls these "managed types" in terms of its Metamodel api).
|
||||
*
|
||||
* @author Strong Liu
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface ManagedType {
|
||||
String getClazz();
|
||||
|
||||
void setClazz(String className);
|
||||
|
||||
Boolean isMetadataComplete();
|
||||
|
||||
void setMetadataComplete(Boolean isMetadataComplete);
|
||||
|
||||
AccessType getAccess();
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
import javax.persistence.AccessType;
|
||||
|
||||
/**
|
||||
* Common interface for JAXB bindings that represent persistent attributes.
|
||||
*
|
||||
* @author Strong Liu
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface PersistentAttribute {
|
||||
String getName();
|
||||
|
||||
AccessType getAccess();
|
||||
|
||||
void setAccess(AccessType accessType);
|
||||
}
|
@ -0,0 +1,23 @@
|
||||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
package org.hibernate.boot.jaxb.mapping.spi;
|
||||
|
||||
/**
|
||||
* Common interface for JAXB bindings that understand database schema (tables, sequences, etc).
|
||||
*
|
||||
* @author Strong Liu
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface SchemaAware {
|
||||
String getSchema();
|
||||
|
||||
void setSchema(String schema);
|
||||
|
||||
String getCatalog();
|
||||
|
||||
void setCatalog(String catalog);
|
||||
}
|
@ -17,6 +17,7 @@
|
||||
|
||||
import org.hibernate.EntityMode;
|
||||
import org.hibernate.MappingException;
|
||||
import org.hibernate.boot.model.CustomSql;
|
||||
import org.hibernate.boot.registry.classloading.spi.ClassLoadingException;
|
||||
import org.hibernate.boot.spi.MetadataBuildingContext;
|
||||
import org.hibernate.engine.OptimisticLockStyle;
|
||||
@ -744,6 +745,16 @@ public Iterator getUnjoinedPropertyIterator() {
|
||||
return properties.iterator();
|
||||
}
|
||||
|
||||
public void setCustomSqlInsert(CustomSql customSql) {
|
||||
if ( customSql != null ) {
|
||||
setCustomSQLInsert(
|
||||
customSql.getSql(),
|
||||
customSql.isCallable(),
|
||||
customSql.getCheckStyle()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public void setCustomSQLInsert(String customSQLInsert, boolean callable, ExecuteUpdateResultCheckStyle checkStyle) {
|
||||
this.customSQLInsert = customSQLInsert;
|
||||
this.customInsertCallable = callable;
|
||||
@ -762,6 +773,16 @@ public ExecuteUpdateResultCheckStyle getCustomSQLInsertCheckStyle() {
|
||||
return insertCheckStyle;
|
||||
}
|
||||
|
||||
public void setCustomSqlUpdate(CustomSql customSql) {
|
||||
if ( customSql != null ) {
|
||||
setCustomSQLUpdate(
|
||||
customSql.getSql(),
|
||||
customSql.isCallable(),
|
||||
customSql.getCheckStyle()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public void setCustomSQLUpdate(String customSQLUpdate, boolean callable, ExecuteUpdateResultCheckStyle checkStyle) {
|
||||
this.customSQLUpdate = customSQLUpdate;
|
||||
this.customUpdateCallable = callable;
|
||||
@ -780,6 +801,16 @@ public ExecuteUpdateResultCheckStyle getCustomSQLUpdateCheckStyle() {
|
||||
return updateCheckStyle;
|
||||
}
|
||||
|
||||
public void setCustomSqlDelete(CustomSql customSql) {
|
||||
if ( customSql != null ) {
|
||||
setCustomSQLDelete(
|
||||
customSql.getSql(),
|
||||
customSql.isCallable(),
|
||||
customSql.getCheckStyle()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
public void setCustomSQLDelete(String customSQLDelete, boolean callable, ExecuteUpdateResultCheckStyle checkStyle) {
|
||||
this.customSQLDelete = customSQLDelete;
|
||||
this.customDeleteCallable = callable;
|
||||
|
@ -13,6 +13,7 @@
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.Properties;
|
||||
import java.util.Objects;
|
||||
import javax.persistence.AttributeConverter;
|
||||
@ -399,6 +400,18 @@ public void setIdentifierGeneratorProperties(Properties identifierGeneratorPrope
|
||||
this.identifierGeneratorProperties = identifierGeneratorProperties;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the identifierGeneratorProperties.
|
||||
* @param identifierGeneratorProperties The identifierGeneratorProperties to set
|
||||
*/
|
||||
public void setIdentifierGeneratorProperties(Map identifierGeneratorProperties) {
|
||||
if ( identifierGeneratorProperties != null ) {
|
||||
Properties properties = new Properties();
|
||||
properties.putAll( identifierGeneratorProperties );
|
||||
setIdentifierGeneratorProperties( properties );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the identifierGeneratorStrategy.
|
||||
* @param identifierGeneratorStrategy The identifierGeneratorStrategy to set
|
||||
@ -679,6 +692,14 @@ public boolean isTypeSpecified() {
|
||||
public void setTypeParameters(Properties parameterMap) {
|
||||
this.typeParameters = parameterMap;
|
||||
}
|
||||
|
||||
public void setTypeParameters(Map<String, String> parameters) {
|
||||
if ( parameters != null ) {
|
||||
Properties properties = new Properties();
|
||||
properties.putAll( parameters );
|
||||
setTypeParameters( properties );
|
||||
}
|
||||
}
|
||||
|
||||
public Properties getTypeParameters() {
|
||||
return typeParameters;
|
||||
|
File diff suppressed because it is too large
Load Diff
164
hibernate-core/src/main/xjb/mapping-bindings.xjb
Normal file
164
hibernate-core/src/main/xjb/mapping-bindings.xjb
Normal file
@ -0,0 +1,164 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<bindings xmlns="http://java.sun.com/xml/ns/jaxb"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:inheritance="http://jaxb2-commons.dev.java.net/basic/inheritance"
|
||||
extensionBindingPrefixes="inheritance"
|
||||
version="2.1">
|
||||
|
||||
<bindings schemaLocation="../resources/org/hibernate/jpa/orm_2_2.xsd" node="/xsd:schema">
|
||||
<schemaBindings>
|
||||
<package name="org.hibernate.boot.jaxb.mapping.spi" />
|
||||
<nameXmlTransform>
|
||||
<typeName prefix="Jaxb" />
|
||||
<elementName prefix="Jaxb" />
|
||||
<modelGroupName prefix="Jaxb" />
|
||||
<anonymousTypeName prefix="Jaxb" />
|
||||
</nameXmlTransform>
|
||||
</schemaBindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='access-type']">
|
||||
<javaType name="javax.persistence.AccessType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.AccessTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.AccessTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='discriminator-type']">
|
||||
<javaType name="javax.persistence.DiscriminatorType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.DiscriminatorTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.DiscriminatorTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='enum-type']">
|
||||
<javaType name="javax.persistence.EnumType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.EnumTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.EnumTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='fetch-type']">
|
||||
<javaType name="javax.persistence.FetchType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.FetchTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.FetchTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='lock-mode-type']">
|
||||
<javaType name="javax.persistence.LockModeType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.LockModeTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.LockModeTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='parameter-mode']">
|
||||
<javaType name="javax.persistence.ParameterMode"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.ParameterModeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.ParameterModeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:simpleType[@name='temporal-type']">
|
||||
<javaType name="javax.persistence.TemporalType"
|
||||
parseMethod="org.hibernate.boot.jaxb.mapping.internal.TemporalTypeMarshalling.fromXml"
|
||||
printMethod="org.hibernate.boot.jaxb.mapping.internal.TemporalTypeMarshalling.toXml" />
|
||||
</bindings>
|
||||
|
||||
|
||||
<bindings node="//xsd:complexType[@name='secondary-table']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='table']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='join-table']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='collection-table']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='table-generator']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='sequence-generator']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.SchemaAware</inheritance:implements>
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:complexType[@name='entity']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.ManagedType</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='embeddable']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.ManagedType</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='mapped-superclass']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.ManagedType</inheritance:implements>
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:complexType[@name='id']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='version']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='basic']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='many-to-one']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.FetchableAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='one-to-many']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.CollectionAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='one-to-one']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.FetchableAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='embedded-id']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='embedded']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='many-to-many']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.CollectionAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='element-collection']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.PersistentAttribute</inheritance:implements>
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.CollectionAttribute</inheritance:implements>
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:complexType[@name='pre-persist']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='pre-remove']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='pre-update']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='post-load']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='post-remove']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='post-update']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='post-persist']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.LifecycleCallback</inheritance:implements>
|
||||
</bindings>
|
||||
|
||||
<bindings node="//xsd:complexType[@name='attributes']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.AttributesContainer</inheritance:implements>
|
||||
</bindings>
|
||||
<bindings node="//xsd:complexType[@name='embeddable-attributes']">
|
||||
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.AttributesContainer</inheritance:implements>
|
||||
</bindings>
|
||||
|
||||
</bindings>
|
||||
|
||||
<!-- All bindings need to be serializable for cached metadata sources. -->
|
||||
<globalBindings>
|
||||
<serializable />
|
||||
</globalBindings>
|
||||
|
||||
</bindings>
|
Loading…
x
Reference in New Issue
Block a user