Package org.hibernate.metamodel.binding

Examples of org.hibernate.metamodel.binding.IdGenerator


    final BasicAttributeBinding idAttributeBinding = doBasicSingularAttributeBindingCreation(
        identifierSource.getIdentifierAttributeSource(), entityBinding
    );

    entityBinding.getHierarchyDetails().getEntityIdentifier().setValueBinding( idAttributeBinding );
    IdGenerator generator = identifierSource.getIdentifierGeneratorDescriptor();
    if ( generator == null ) {
      Map<String, String> params = new HashMap<String, String>();
      params.put( IdentifierGenerator.ENTITY_NAME, entityBinding.getEntity().getName() );
      generator = new IdGenerator( "default_assign_identity_generator", "assigned", params );
    }
    entityBinding.getHierarchyDetails()
        .getEntityIdentifier()
        .setIdGenerator( generator );
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 refering an undefined generator [%s]",
                configuredClass.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",
              configuredClass.getName(),
              idName
          )
      );
    }
    else {
      idGenerator = new IdGenerator( "NAME", strategy, new HashMap<String, String>() );
      entityBinding.getEntityIdentifier().setIdGenerator( idGenerator );
    }
  }
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.