Package org.hibernate.metamodel.binding

Examples of org.hibernate.metamodel.binding.IdGenerator


          JandexHelper.getValue( parameterAnnotation, "name", String.class ),
          JandexHelper.getValue( parameterAnnotation, "value", String.class )
      );
    }
    metadata.addIdGenerator(
        new IdGenerator(
            name,
            JandexHelper.getValue( generator, "strategy", String.class ),
            parameterMap
        )
    );
View Full Code Here


      parameterMap.put(
          SequenceHiLoGenerator.MAX_LO,
          String.valueOf( JandexHelper.getValue( generator, "allocationSize", Integer.class ) - 1 )
      );
    }
    metadata.addIdGenerator( new IdGenerator( name, strategy, parameterMap ) );
    LOG.tracef( "Add sequence generator with name: %s", name );
  }
View Full Code Here

      );
    }
    if ( JandexHelper.getValue( generator, "uniqueConstraints", AnnotationInstance[].class ).length > 0 ) {
      LOG.ignoringTableGeneratorConstraints( name );
    }
    metadata.addIdGenerator( new IdGenerator( name, strategy, parameterMap ) );
    LOG.tracef( "Add table generator with name: %s", name );
  }
View Full Code Here

    }
    return checkCondition;
  }

  private IdGenerator checkGeneratedValueAnnotation() {
    IdGenerator generator = null;
    AnnotationInstance generatedValueAnnotation = JandexHelper.getSingleAnnotation(
        annotations(),
        JPADotNames.GENERATED_VALUE
    );
    if ( generatedValueAnnotation != null ) {
      String name = JandexHelper.getValue( generatedValueAnnotation, "generator", String.class );
      if ( StringHelper.isNotEmpty( name ) ) {
        generator = getContext().getMetadataImplementor().getIdGenerator( name );
        if ( generator == null ) {
          throw new MappingException( String.format( "Unable to find named generator %s", name ), null );
        }
      }
      else {
        GenerationType genType = JandexHelper.getEnumValue(
            generatedValueAnnotation,
            "strategy",
            GenerationType.class
        );
        String strategy = TypeEnumConversionHelper.generationTypeToGeneratorStrategyName(
            genType,
            getContext().getMetadataImplementor().getOptions().useNewIdentifierGenerators()
        );
        generator = new IdGenerator( null, strategy, null );
      }
    }
    return generator;
  }
View Full Code Here

      state.addValueState( new ColumnRelationalStateImpl( attr, meta ) );
    }
    attributeBinding.initialize( state );
    Map<String, String> parms = new HashMap<String, String>( 1 );
    parms.put( IdentifierGenerator.ENTITY_NAME, entityBinding.getEntity().getName() );
    IdGenerator generator = new IdGenerator( "NAME", "assigned", parms );
    entityBinding.getEntityIdentifier().setIdGenerator( generator );
    // entityBinding.getEntityIdentifier().createIdentifierGenerator( meta.getIdentifierGeneratorFactory() );
  }
View Full Code Here

              idPropertyName
          )
      );
    }
    String generator = JandexHelper.getValueAsString( generatedValueAnn, "generator" );
    IdGenerator idGenerator = null;
    if ( StringHelper.isNotEmpty( generator ) ) {
      idGenerator = meta.getIdGenerator( generator );
      if ( idGenerator == null ) {
        throw new MappingException(
            String.format(
                "@GeneratedValue on %s.%s referring an undefined generator [%s]",
                entityClass.getName(),
                idName,
                generator
            )
        );
      }
      entityBinding.getEntityIdentifier().setIdGenerator( idGenerator );
    }
    GenerationType generationType = JandexHelper.getValueAsEnum(
        generatedValueAnn,
        "strategy",
        GenerationType.class
    );
    String strategy = IdGeneratorBinder.generatorType(
                generationType,
                meta.getOptions().useNewIdentifierGenerators()
        );
    if ( idGenerator != null && !strategy.equals( idGenerator.getStrategy() ) ) {
      //todo how to ?
      throw new MappingException(
          String.format(
              "Inconsistent Id Generation strategy of @GeneratedValue on %s.%s",
              entityClass.getName(),
              idName
          )
      );
    }
    if ( idGenerator == null ) {
      idGenerator = new IdGenerator( "NAME", strategy, new HashMap<String, String>() );
      entityBinding.getEntityIdentifier().setIdGenerator( idGenerator );
    }
//        entityBinding.getEntityIdentifier().createIdentifierGenerator( meta.getIdentifierGeneratorFactory() );
  }
View Full Code Here

    Map<String, String> prms = new HashMap<String, String>();
    for ( AnnotationInstance prm : JandexHelper.getValueAsArray( generator, "parameters" ) ) {
      prms.put( JandexHelper.getValueAsString( prm, "name" ), JandexHelper.getValueAsString( prm, "value" ) );
    }
    metadata.addIdGenerator(
        new IdGenerator(
            name,
            JandexHelper.getValueAsString( generator, "strategy" ),
            prms
        )
    );
View Full Code Here

      prms.put(
          SequenceHiLoGenerator.MAX_LO,
          String.valueOf( JandexHelper.getValueAsInt( generator, "allocationSize" ) - 1 )
      );
    }
    metadata.addIdGenerator( new IdGenerator( name, strategy, prms ) );
    LOG.tracef( "Add sequence generator with name: %s", name );
  }
View Full Code Here

      );
    }
    if ( JandexHelper.getValueAsArray( generator, "uniqueConstraints" ).length > 0 ) {
      LOG.ignoringTableGeneratorConstraints( name );
    }
    metadata.addIdGenerator( new IdGenerator( name, strategy, prms ) );
    LOG.tracef( "Add table generator with name: %s", name );
  }
View Full Code Here

        @Override
        public IdGenerator getIdentifierGeneratorDescriptor() {
          if ( entityElement().getId().getGenerator() != null ) {
            final String generatorName = entityElement().getId().getGenerator().getClazz();
            IdGenerator idGenerator = sourceMappingDocument().getMappingLocalBindingContext()
                .getMetadataImplementor()
                .getIdGenerator( generatorName );
            if ( idGenerator == null ) {
              idGenerator = new IdGenerator(
                  getEntityName() + generatorName,
                  generatorName,
                  Helper.extractParameters( entityElement().getId().getGenerator().getParam() )
              );
            }
View Full Code Here

TOP

Related Classes of org.hibernate.metamodel.binding.IdGenerator

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.