Package org.hibernate.mapping

Examples of org.hibernate.mapping.Value


      Element subnode = (Element) iter.next();
      String name = subnode.getName();
      String propertyName = subnode.attributeValue( "name" );

      CollectionType collectType = CollectionType.collectionTypeFromString( name );
      Value value = null;
      if ( collectType != null ) {
        Collection collection = collectType.create(
            subnode,
            StringHelper.qualify( entityName, propertyName ),
            persistentClass,
View Full Code Here


      // If this is not a persistent property, with the same access type as currently checked,
      // it's not audited as well.
      // If the property was already defined by the subclass, is ignored by superclasses
      if ((persistentProperties.contains(property.getName()) && (!auditedPropertiesHolder
          .contains(property.getName())))) {
        Value propertyValue = persistentPropertiesSource.getProperty(property.getName()).getValue();
        if (propertyValue instanceof Component) {
          this.addFromComponentProperty(property, accessType, (Component)propertyValue, allClassAudited);
        } else {
          this.addFromNotComponentProperty(property, accessType, allClassAudited);
        }
      } else if (propertiesGroupMapping.containsKey(property.getName())) {
        // Retrieve embedded component name based on class field.
        final String embeddedName = propertiesGroupMapping.get(property.getName());
        if (!auditedPropertiesHolder.contains(embeddedName)) {
          // Manage properties mapped within <properties> tag.
          Value propertyValue = persistentPropertiesSource.getProperty(embeddedName).getValue();
          this.addFromPropertiesGroup(embeddedName, property, accessType, (Component)propertyValue, allClassAudited);
        }
      }
    }
  }
View Full Code Here

    }
  }

  public void bindDiscriminatorValue() {
    if ( StringHelper.isEmpty( discriminatorValue ) ) {
      Value discriminator = persistentClass.getDiscriminator();
      if ( discriminator == null ) {
        persistentClass.setDiscriminatorValue( name );
      }
      else if ( "character".equals( discriminator.getType().getName() ) ) {
        throw new AnnotationException(
            "Using default @DiscriminatorValue for a discriminator of type CHAR is not safe"
        );
      }
      else if ( "integer".equals( discriminator.getType().getName() ) ) {
        persistentClass.setDiscriminatorValue( String.valueOf( name.hashCode() ) );
      }
      else {
        persistentClass.setDiscriminatorValue( name ); //Spec compliant
      }
View Full Code Here

    while ( iter.hasNext() ) {
      Element subnode = (Element) iter.next();
      String name = subnode.getName();
      String propertyName = subnode.attributeValue( "name" );

      Value value = null;
      if ( "many-to-one".equals( name ) ) {
        value = new ManyToOne( mappings, table );
        bindManyToOne( subnode, (ManyToOne) value, propertyName, true, mappings );
      }
      else if ( "any".equals( name ) ) {
View Full Code Here

      String propertyName = getPropertyName( subnode );
      String subpath = propertyName == null ? null : StringHelper
        .qualify( path, propertyName );

      CollectionType collectType = CollectionType.collectionTypeFromString( name );
      Value value = null;
      if ( collectType != null ) {
        Collection collection = collectType.create(
            subnode,
            subpath,
            component.getOwner(),
View Full Code Here

      Element subnode = (Element) iter.next();
      String name = subnode.getName();
      String propertyName = subnode.attributeValue( "name" );

      CollectionType collectType = CollectionType.collectionTypeFromString( name );
      Value value = null;
      if ( collectType != null ) {
        Collection collection = collectType.create(
            subnode,
            StringHelper.qualify( entityName, propertyName ),
            persistentClass,
View Full Code Here

      final Property property = associatedClass.getRecursiveProperty( columns[0].getMappedBy() );
      Iterator mappedByColumns;
      if ( property.getValue() instanceof Collection ) {
        Collection collection = ( (Collection) property.getValue() );
        Value element = collection.getElement();
        if ( element == null ) {
          throw new AnnotationException(
              "Illegal use of mappedBy on both sides of the relationship: "
                  + associatedClass.getEntityName() + "." + mappedByProperty
          );
        }
        mappedByColumns = element.getColumnIterator();
      }
      else {
        mappedByColumns = property.getValue().getColumnIterator();
      }
      while ( mappedByColumns.hasNext() ) {
View Full Code Here

    }
    return followers;
  }

  private Iterator getSubPropertyIterator(PersistentClass pc, String reducedName) {
    Value value = pc.getRecursiveProperty( reducedName ).getValue();
    Iterator parentPropIter;
    if ( value instanceof Component ) {
      Component comp = (Component) value;
      parentPropIter = comp.getPropertyIterator();
    }
View Full Code Here

        throw new AnnotationException(
            "Map key property not found: " + collType + "." + mapKeyPropertyName
        );
      }
      org.hibernate.mapping.Map map = (org.hibernate.mapping.Map) this.collection;
      Value indexValue = createFormulatedValue(
          mapProperty.getValue(), map, targetPropertyName, associatedClass, mappings
      );
      map.setIndex( indexValue );
    }
    else {
View Full Code Here

      Value value,
      Collection collection,
      String targetPropertyName,
      PersistentClass associatedClass,
      Mappings mappings) {
    Value element = collection.getElement();
    String fromAndWhere = null;
    if ( !( element instanceof OneToMany ) ) {
      String referencedPropertyName = null;
      if ( element instanceof ToOne ) {
        referencedPropertyName = ( (ToOne) element ).getReferencedPropertyName();
      }
      else if ( element instanceof DependantValue ) {
        //TODO this never happen I think
        if ( propertyName != null ) {
          referencedPropertyName = collection.getReferencedPropertyName();
        }
        else {
          throw new AnnotationException( "SecondaryTable JoinColumn cannot reference a non primary key" );
        }
      }
      Iterator referencedEntityColumns;
      if ( referencedPropertyName == null ) {
        referencedEntityColumns = associatedClass.getIdentifier().getColumnIterator();
      }
      else {
        Property referencedProperty = associatedClass.getRecursiveProperty( referencedPropertyName );
        referencedEntityColumns = referencedProperty.getColumnIterator();
      }
      String alias = "$alias$";
      StringBuilder fromAndWhereSb = new StringBuilder( " from " )
          .append( associatedClass.getTable().getName() )
              //.append(" as ") //Oracle doesn't support it in subqueries
          .append( " " )
          .append( alias ).append( " where " );
      Iterator collectionTableColumns = element.getColumnIterator();
      while ( collectionTableColumns.hasNext() ) {
        Column colColumn = (Column) collectionTableColumns.next();
        Column refColumn = (Column) referencedEntityColumns.next();
        fromAndWhereSb.append( alias ).append( '.' ).append( refColumn.getQuotedName() )
            .append( '=' ).append( colColumn.getQuotedName() ).append( " and " );
View Full Code Here

TOP

Related Classes of org.hibernate.mapping.Value

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.