Package org.hibernate.metamodel.domain

Examples of org.hibernate.metamodel.domain.SingularAttribute


    }
  }

  private void bindComponent(ComponentAttributeSource attributeSource, AttributeBindingContainer container) {
    final String attributeName = attributeSource.getName();
    SingularAttribute attribute = container.getAttributeContainer().locateComponentAttribute( attributeName );
    if ( attribute == null ) {
      final Component component = new Component(
          attributeSource.getPath(),
          attributeSource.getClassName(),
          attributeSource.getClassReference(),
          null // component inheritance not YET supported
      );
      attribute = container.getAttributeContainer().createComponentAttribute( attributeName, component );
    }
    ComponentAttributeBinding componentAttributeBinding = container.makeComponentAttributeBinding( attribute );

    if ( StringHelper.isNotEmpty( attributeSource.getParentReferenceAttributeName() ) ) {
      final SingularAttribute parentReferenceAttribute =
          componentAttributeBinding.getComponent()
              .createSingularAttribute( attributeSource.getParentReferenceAttributeName() );
      componentAttributeBinding.setParentReference( parentReferenceAttribute );
    }
View Full Code Here


  }

  private BasicAttributeBinding doBasicSingularAttributeBindingCreation(
      SingularAttributeSource attributeSource,
      AttributeBindingContainer attributeBindingContainer) {
    final SingularAttribute existingAttribute = attributeBindingContainer.getAttributeContainer()
        .locateSingularAttribute( attributeSource.getName() );
    final SingularAttribute attribute;
    if ( existingAttribute != null ) {
      attribute = existingAttribute;
    }
    else if ( attributeSource.isVirtualAttribute() ) {
      attribute = attributeBindingContainer.getAttributeContainer().createVirtualSingularAttribute(
View Full Code Here

    resolvedType = determineSingularTypeFromDescriptor( attributeBinding.getHibernateTypeDescriptor() );
    if ( resolvedType == null ) {
      if ( ! attributeBinding.getAttribute().isSingular() ) {
        throw new AssertionFailure( "SingularAttributeBinding object has a plural attribute: " + attributeBinding.getAttribute().getName() );
      }
      final SingularAttribute singularAttribute = ( SingularAttribute ) attributeBinding.getAttribute();
      if ( singularAttribute.getSingularAttributeType() != null ) {
        resolvedType = getHeuristicType(
            singularAttribute.getSingularAttributeType().getClassName(), new Properties()
        );
      }
    }
    if ( resolvedType != null ) {
      pushHibernateTypeInformationDownIfNeeded( attributeBinding, resolvedType );
View Full Code Here

  }

  private void pushHibernateTypeInformationDownIfNeeded(SingularAttributeBinding attributeBinding, Type resolvedHibernateType) {

    final HibernateTypeDescriptor hibernateTypeDescriptor = attributeBinding.getHibernateTypeDescriptor();
    final SingularAttribute singularAttribute = SingularAttribute.class.cast( attributeBinding.getAttribute() );
    final Value value = attributeBinding.getValue();
    if ( ! singularAttribute.isTypeResolved() && hibernateTypeDescriptor.getJavaTypeName() != null ) {
      singularAttribute.resolveType( metadata.makeJavaType( hibernateTypeDescriptor.getJavaTypeName() ) );
    }

    // sql type information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    this.pushHibernateTypeInformationDownIfNeeded(
        hibernateTypeDescriptor, value, resolvedHibernateType
View Full Code Here

    resolvedType = determineSingularTypeFromDescriptor( attributeBinding.getHibernateTypeDescriptor() );
    if ( resolvedType == null ) {
      if ( ! attributeBinding.getAttribute().isSingular() ) {
        throw new AssertionFailure( "SingularAttributeBinding object has a plural attribute: " + attributeBinding.getAttribute().getName() );
      }
      final SingularAttribute singularAttribute = ( SingularAttribute ) attributeBinding.getAttribute();
      if ( singularAttribute.getSingularAttributeType() != null ) {
        resolvedType = getHeuristicType(
            singularAttribute.getSingularAttributeType().getClassName(), new Properties()
        );
      }
    }
    if ( resolvedType != null ) {
      pushHibernateTypeInformationDownIfNeeded( attributeBinding, resolvedType );
View Full Code Here

  }

  private void pushHibernateTypeInformationDownIfNeeded(SingularAttributeBinding attributeBinding, Type resolvedHibernateType) {

    final HibernateTypeDescriptor hibernateTypeDescriptor = attributeBinding.getHibernateTypeDescriptor();
    final SingularAttribute singularAttribute = SingularAttribute.class.cast( attributeBinding.getAttribute() );
    final Value value = attributeBinding.getValue();
    if ( ! singularAttribute.isTypeResolved() && hibernateTypeDescriptor.getJavaTypeName() != null ) {
      singularAttribute.resolveType( metadata.makeJavaType( hibernateTypeDescriptor.getJavaTypeName() ) );
    }

    // sql type information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    this.pushHibernateTypeInformationDownIfNeeded(
        hibernateTypeDescriptor, value, resolvedHibernateType
View Full Code Here

    resolvedType = determineSingularTypeFromDescriptor( attributeBinding.getHibernateTypeDescriptor() );
    if ( resolvedType == null ) {
      if ( ! attributeBinding.getAttribute().isSingular() ) {
        throw new AssertionFailure( "SingularAttributeBinding object has a plural attribute: " + attributeBinding.getAttribute().getName() );
      }
      final SingularAttribute singularAttribute = ( SingularAttribute ) attributeBinding.getAttribute();
      if ( singularAttribute.getSingularAttributeType() != null ) {
        resolvedType = getHeuristicType(
            singularAttribute.getSingularAttributeType().getClassName(), new Properties()
        );
      }
    }
    if ( resolvedType != null ) {
      pushHibernateTypeInformationDownIfNeeded( attributeBinding, resolvedType );
View Full Code Here

  }

  private void pushHibernateTypeInformationDownIfNeeded(SingularAttributeBinding attributeBinding, Type resolvedHibernateType) {

    final HibernateTypeDescriptor hibernateTypeDescriptor = attributeBinding.getHibernateTypeDescriptor();
    final SingularAttribute singularAttribute = SingularAttribute.class.cast( attributeBinding.getAttribute() );
    final Value value = attributeBinding.getValue();
    if ( ! singularAttribute.isTypeResolved() && hibernateTypeDescriptor.getJavaTypeName() != null ) {
      singularAttribute.resolveType( metadata.makeJavaType( hibernateTypeDescriptor.getJavaTypeName() ) );
    }

    // sql type information ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    this.pushHibernateTypeInformationDownIfNeeded(
        hibernateTypeDescriptor, value, resolvedHibernateType
View Full Code Here

  }

  protected void bindSimpleAttribute(Element propertyElement, SimpleAttributeBinding attributeBinding, EntityBinding entityBinding, String attributeName) {
    if ( attributeBinding.getAttribute() == null ) {
      // attribute has not been bound yet
      SingularAttribute attribute = entityBinding.getEntity().getOrCreateSingularAttribute( attributeName );
      attributeBinding.setAttribute( attribute );
      basicAttributeBinding( propertyElement, attributeBinding );
    }

    if ( attributeBinding.getValue() == null ) {
View Full Code Here

    MappedAttribute idAttribute = entityClass.getMappedAttribute( idName );
    if ( !( idAttribute instanceof SimpleAttribute ) ) {
      throw new AssertionFailure( "Unexpected attribute type for id attribute" );
    }

    SingularAttribute attribute = entityBinding.getEntity().getOrCreateComponentAttribute( idName );


    SimpleAttributeBinding attributeBinding = entityBinding.makeSimpleIdAttributeBinding( attribute );

    attributeBinding.initialize( new AttributeBindingStateImpl( (SimpleAttribute) idAttribute ) );
View Full Code Here

TOP

Related Classes of org.hibernate.metamodel.domain.SingularAttribute

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.