HHH-14529 Add common interface for JaxbEntity and JaxbMappedSuperclass

This commit is contained in:
Yoann Rodière 2021-03-26 13:05:57 +01:00
parent 8ab3a2f7e9
commit bbc25cf28b
2 changed files with 68 additions and 0 deletions

View File

@ -0,0 +1,66 @@
/*
* 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 representing entities and mapped-superclasses.
*/
public interface EntityOrMappedSuperclass extends ManagedType {
String getDescription();
void setDescription(String value);
JaxbIdClass getIdClass();
void setIdClass(JaxbIdClass value);
JaxbEmptyType getExcludeDefaultListeners();
void setExcludeDefaultListeners(JaxbEmptyType value);
JaxbEmptyType getExcludeSuperclassListeners();
void setExcludeSuperclassListeners(JaxbEmptyType value);
JaxbEntityListeners getEntityListeners();
void setEntityListeners(JaxbEntityListeners value);
JaxbPrePersist getPrePersist();
void setPrePersist(JaxbPrePersist value);
JaxbPostPersist getPostPersist();
void setPostPersist(JaxbPostPersist value);
JaxbPreRemove getPreRemove();
void setPreRemove(JaxbPreRemove value);
JaxbPostRemove getPostRemove();
void setPostRemove(JaxbPostRemove value);
JaxbPreUpdate getPreUpdate();
void setPreUpdate(JaxbPreUpdate value);
JaxbPostUpdate getPostUpdate();
void setPostUpdate(JaxbPostUpdate value);
JaxbPostLoad getPostLoad();
void setPostLoad(JaxbPostLoad value);
JaxbAttributes getAttributes();
void setAttributes(JaxbAttributes value);
}

View File

@ -81,12 +81,14 @@
<bindings node="//xsd:complexType[@name='entity']">
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.ManagedType</inheritance:implements>
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.EntityOrMappedSuperclass</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>
<inheritance:implements>org.hibernate.boot.jaxb.mapping.spi.EntityOrMappedSuperclass</inheritance:implements>
</bindings>
<bindings node="//xsd:complexType[@name='id']">