下面列出了org.hibernate.mapping.PersistentClass#addSubclass ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private void bindDiscriminatorSubclassEntities(
AbstractEntitySourceImpl entitySource,
PersistentClass superEntityDescriptor) {
for ( IdentifiableTypeSource subType : entitySource.getSubTypes() ) {
final SingleTableSubclass subEntityDescriptor = new SingleTableSubclass( superEntityDescriptor, metadataBuildingContext );
bindDiscriminatorSubclassEntity( (SubclassEntitySourceImpl) subType, subEntityDescriptor );
superEntityDescriptor.addSubclass( subEntityDescriptor );
entitySource.getLocalMetadataBuildingContext().getMetadataCollector().addEntityBinding( subEntityDescriptor );
}
}
private void bindJoinedSubclassEntities(
AbstractEntitySourceImpl entitySource,
PersistentClass superEntityDescriptor) {
for ( IdentifiableTypeSource subType : entitySource.getSubTypes() ) {
final JoinedSubclass subEntityDescriptor = new JoinedSubclass( superEntityDescriptor, metadataBuildingContext );
bindJoinedSubclassEntity( (JoinedSubclassEntitySourceImpl) subType, subEntityDescriptor );
superEntityDescriptor.addSubclass( subEntityDescriptor );
entitySource.getLocalMetadataBuildingContext().getMetadataCollector().addEntityBinding( subEntityDescriptor );
}
}
private void bindUnionSubclassEntities(
EntitySource entitySource,
PersistentClass superEntityDescriptor) {
for ( IdentifiableTypeSource subType : entitySource.getSubTypes() ) {
final UnionSubclass subEntityDescriptor = new UnionSubclass( superEntityDescriptor, metadataBuildingContext );
bindUnionSubclassEntity( (SubclassEntitySourceImpl) subType, subEntityDescriptor );
superEntityDescriptor.addSubclass( subEntityDescriptor );
entitySource.getLocalMetadataBuildingContext().getMetadataCollector().addEntityBinding( subEntityDescriptor );
}
}
private static void handleUnionSubclass(PersistentClass model, Mappings mappings,
Element subnode, java.util.Map inheritedMetas) throws MappingException {
UnionSubclass subclass = new UnionSubclass( model );
bindUnionSubclass( subnode, subclass, mappings, inheritedMetas );
model.addSubclass( subclass );
mappings.addClass( subclass );
}
private static void handleJoinedSubclass(PersistentClass model, Mappings mappings,
Element subnode, java.util.Map inheritedMetas) throws MappingException {
JoinedSubclass subclass = new JoinedSubclass( model );
bindJoinedSubclass( subnode, subclass, mappings, inheritedMetas );
model.addSubclass( subclass );
mappings.addClass( subclass );
}
private static void handleSubclass(PersistentClass model, Mappings mappings, Element subnode,
java.util.Map inheritedMetas) throws MappingException {
Subclass subclass = new SingleTableSubclass( model );
bindSubclass( subnode, subclass, mappings, inheritedMetas );
model.addSubclass( subclass );
mappings.addClass( subclass );
}