当前位置: 首页>>代码示例>>Java>>正文


Java ClassLoaderService类代码示例

本文整理汇总了Java中org.hibernate.boot.registry.classloading.spi.ClassLoaderService的典型用法代码示例。如果您正苦于以下问题:Java ClassLoaderService类的具体用法?Java ClassLoaderService怎么用?Java ClassLoaderService使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ClassLoaderService类属于org.hibernate.boot.registry.classloading.spi包,在下文中一共展示了ClassLoaderService类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: configure

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
@Override
public void configure(Map configurationValues) {
	ClassLoaderService classLoaderService = serviceRegistry.getService( ClassLoaderService.class );
	ConfigurationPropertyReader propertyReader = new ConfigurationPropertyReader(
			configurationValues,
			classLoaderService
	);

	try {
		this.config = new RedisConfiguration( propertyReader );
	}
	catch (Exception e) {
		// Wrap Exception in a ServiceException to make the stack trace more friendly
		// Otherwise a generic unable to request service is thrown
		throw log.unableToConfigureDatastoreProvider( e );
	}
}
 
开发者ID:hibernate,项目名称:hibernate-ogm-redis,代码行数:18,代码来源:RedisDatastoreProvider.java

示例2: initiateService

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
@Override
public BatchBuilder initiateService(Map configurationValues, ServiceRegistryImplementor registry) {
	final Object builder = configurationValues.get( BUILDER );
	if ( builder == null ) {
		return new BatchBuilderImpl(
				ConfigurationHelper.getInt( Environment.STATEMENT_BATCH_SIZE, configurationValues, 1 )
		);
	}

	if ( BatchBuilder.class.isInstance( builder ) ) {
		return (BatchBuilder) builder;
	}

	final String builderClassName = builder.toString();
	try {
		return (BatchBuilder) registry.getService( ClassLoaderService.class ).classForName( builderClassName ).newInstance();
	}
	catch (Exception e) {
		throw new ServiceException( "Could not build explicit BatchBuilder [" + builderClassName + "]", e );
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:22,代码来源:BatchBuilderInitiator.java

示例3: getImportedClassName

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
@Override
public String getImportedClassName(String className) {
	String result = imports.get( className );
	if ( result == null ) {
		try {
			serviceRegistry.getService( ClassLoaderService.class ).classForName( className );
			imports.put( className, className );
			return className;
		}
		catch ( ClassLoadingException cnfe ) {
			return null;
		}
	}
	else {
		return result;
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:18,代码来源:SessionFactoryImpl.java

示例4: buildSelector

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
/**
 * Builds the selector.
 *
 * @param classLoaderService The class loading service used to (attempt to) resolve any un-registered
 * strategy implementations.
 *
 * @return The selector.
 */
public StrategySelector buildSelector(ClassLoaderService classLoaderService) {
	final StrategySelectorImpl strategySelector = new StrategySelectorImpl( classLoaderService );

	// build the baseline...
	addDialects( strategySelector );
	addJtaPlatforms( strategySelector );
	addTransactionFactories( strategySelector );
	addMultiTableBulkIdStrategies( strategySelector );
	addEntityCopyObserverStrategies( strategySelector );

	// apply auto-discovered registrations
	for ( StrategyRegistrationProvider provider : classLoaderService.loadJavaServices( StrategyRegistrationProvider.class ) ) {
		for ( StrategyRegistration discoveredStrategyRegistration : provider.getStrategyRegistrations() ) {
			applyFromStrategyRegistration( strategySelector, discoveredStrategyRegistration );
		}
	}

	// apply customizations
	for ( StrategyRegistration explicitStrategyRegistration : explicitStrategyRegistrations ) {
		applyFromStrategyRegistration( strategySelector, explicitStrategyRegistration );
	}

	return strategySelector;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:33,代码来源:StrategySelectorBuilder.java

示例5: BootstrapServiceRegistryImpl

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
/**
 * Constructs a BootstrapServiceRegistryImpl.
 *
 * Do not use directly generally speaking.  Use {@link org.hibernate.boot.registry.BootstrapServiceRegistryBuilder}
 * instead.
 *
 * @param autoCloseRegistry See discussion on
 * {@link org.hibernate.boot.registry.BootstrapServiceRegistryBuilder#disableAutoClose}
 * @param classLoaderService The ClassLoaderService to use
 * @param providedIntegrators The group of explicitly provided integrators
 *
 * @see org.hibernate.boot.registry.BootstrapServiceRegistryBuilder
 */
public BootstrapServiceRegistryImpl(
		boolean autoCloseRegistry,
		ClassLoaderService classLoaderService,
		LinkedHashSet<Integrator> providedIntegrators) {
	this.autoCloseRegistry = autoCloseRegistry;

	this.classLoaderServiceBinding = new ServiceBinding<ClassLoaderService>(
			this,
			ClassLoaderService.class,
			classLoaderService
	);

	final StrategySelectorImpl strategySelector = new StrategySelectorImpl( classLoaderService );
	this.strategySelectorBinding = new ServiceBinding<StrategySelector>(
			this,
			StrategySelector.class,
			strategySelector
	);

	this.integratorServiceBinding = new ServiceBinding<IntegratorService>(
			this,
			IntegratorService.class,
			new IntegratorServiceImpl( providedIntegrators, classLoaderService )
	);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:39,代码来源:BootstrapServiceRegistryImpl.java

示例6: contribute

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
@Override
public void contribute(InFlightMetadataCollector metadataCollector, IndexView jandexIndex) {
    MetadataBuildingOptions options = metadataCollector.getMetadataBuildingOptions();
    ClassLoaderService classLoaderService = options.getServiceRegistry().getService(ClassLoaderService.class);

    final ClassLoaderAccess classLoaderAccess = new ClassLoaderAccessImpl(
            options.getTempClassLoader(),
            classLoaderService
    );

    this.metadataBuildingContext = new MetadataBuildingContextRootImpl(
            options,
            classLoaderAccess,
            metadataCollector
    );

        java.util.Collection<PersistentEntity> persistentEntities = hibernateMappingContext.getPersistentEntities();
    for (PersistentEntity persistentEntity : persistentEntities) {
        if(!persistentEntity.getJavaClass().isAnnotationPresent(Entity.class)) {
            if(ConnectionSourcesSupport.usesConnectionSource(persistentEntity, dataSourceName) && persistentEntity.isRoot()) {
                bindRoot((HibernatePersistentEntity) persistentEntity, metadataCollector, sessionFactoryName);
            }
        }
    }
}
 
开发者ID:grails,项目名称:gorm-hibernate5,代码行数:26,代码来源:GrailsDomainBinder.java

示例7: isBeanValidationApiAvailable

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
private boolean isBeanValidationApiAvailable(ClassLoaderService classLoaderService) {
	try {
		classLoaderService.classForName( BV_CHECK_CLASS );
		return true;
	}
	catch (Exception e) {
		return false;
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:10,代码来源:BeanValidationIntegrator.java

示例8: loadTypeSafeActivatorClass

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
private Class loadTypeSafeActivatorClass(ClassLoaderService classLoaderService) {
	try {
		return classLoaderService.classForName( ACTIVATOR_CLASS_NAME );
	}
	catch (Exception e) {
		throw new HibernateException( "Unable to load TypeSafeActivator class", e );
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:9,代码来源:BeanValidationIntegrator.java

示例9: createQueryCacheFactory

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
protected QueryCacheFactory createQueryCacheFactory(Properties properties, ServiceRegistry serviceRegistry) {
	String queryCacheFactoryClassName = ConfigurationHelper.getString(
			AvailableSettings.QUERY_CACHE_FACTORY, properties, StandardQueryCacheFactory.class.getName()
	);
	LOG.debugf( "Query cache factory: %s", queryCacheFactoryClassName );
	try {
		return (QueryCacheFactory) serviceRegistry.getService( ClassLoaderService.class )
				.classForName( queryCacheFactoryClassName )
				.newInstance();
	}
	catch (Exception e) {
		throw new HibernateException( "could not instantiate QueryCacheFactory: " + queryCacheFactoryClassName, e );
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:15,代码来源:SettingsFactory.java

示例10: createQueryTranslatorFactory

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
protected QueryTranslatorFactory createQueryTranslatorFactory(Properties properties, ServiceRegistry serviceRegistry) {
	String className = ConfigurationHelper.getString(
			AvailableSettings.QUERY_TRANSLATOR, properties, "org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory"
	);
	LOG.debugf( "Query translator: %s", className );
	try {
		return (QueryTranslatorFactory) serviceRegistry.getService( ClassLoaderService.class )
				.classForName( className )
				.newInstance();
	}
	catch ( Exception e ) {
		throw new HibernateException( "could not instantiate QueryTranslatorFactory: " + className, e );
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:15,代码来源:SettingsFactory.java

示例11: classForName

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
public static Class classForName(String className, ServiceRegistry serviceRegistry) {
	ClassLoaderService classLoaderService = serviceRegistry.getService( ClassLoaderService.class );
	try {
		return classLoaderService.classForName( className );
	}
	catch ( ClassLoadingException e ) {
		throw new MappingException( "Could not find class: " + className );
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:10,代码来源:Helper.java

示例12: getValue

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
public static <T> T getValue(AnnotationInstance annotation, String element, Class<T> type,
		ClassLoaderService classLoaderService) throws AssertionFailure {
	if ( Class.class.equals( type ) ) {
		throw new AssertionFailure(
				"Annotation parameters of type Class should be retrieved as strings (fully qualified class names)"
		);
	}

	if ( type.isPrimitive() ) {
		type = PrimitiveWrapperHelper.getDescriptorByPrimitiveType( type ).getWrapperClass();
	}

	// try getting the untyped value from Jandex
	AnnotationValue annotationValue = annotation.value( element );

	try {
		if ( annotationValue != null ) {
			return explicitAnnotationParameter( annotationValue, type );
		}
		else {
			return defaultAnnotationParameter( getDefaultValue( annotation, element, classLoaderService ), type );
		}
	}
	catch ( ClassCastException e ) {
		throw new AssertionFailure(
				String.format(
						"the annotation property %s of annotation %s is not of type %s",
						element,
						annotation.name(),
						type.getName()
				),
				e
		);
	}
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:36,代码来源:JandexHelper.java

示例13: indexForClass

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
/**
 * Creates a jandex index for the specified classes
 *
 * @param classLoaderService class loader service
 * @param classes the classes to index
 *
 * @return an annotation repository w/ all the annotation discovered in the specified classes
 */
public static Index indexForClass(ClassLoaderService classLoaderService, Class<?>... classes) {
	Indexer indexer = new Indexer();
	for ( Class<?> clazz : classes ) {
		InputStream stream = classLoaderService.locateResourceStream(
				clazz.getName().replace( '.', '/' ) + ".class"
		);
		try {
			indexer.index( stream );
		}
		catch ( IOException e ) {
			StringBuilder builder = new StringBuilder();
			builder.append( "[" );
			int count = 0;
			for ( Class<?> c : classes ) {
				builder.append( c.getName() );
				if ( count < classes.length - 1 ) {
					builder.append( "," );
				}
				count++;
			}
			builder.append( "]" );
			throw new HibernateException( "Unable to create annotation index for " + builder.toString() );
		}
	}
	return indexer.complete();
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:35,代码来源:JandexHelper.java

示例14: AnnotationBindingContextImpl

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
public AnnotationBindingContextImpl(MetadataImplementor metadata, Index index) {
	this.metadata = metadata;
	this.classLoaderService = new ValueHolder<ClassLoaderService>(
			new ValueHolder.DeferredInitializer<ClassLoaderService>() {
				@Override
				public ClassLoaderService initialize() {
					return AnnotationBindingContextImpl.this.metadata
							.getServiceRegistry()
							.getService( ClassLoaderService.class );
				}
			}
	);
	this.index = index;
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:15,代码来源:AnnotationBindingContextImpl.java

示例15: getTarget

import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; //导入依赖的package包/类
static AnnotationTarget getTarget(ServiceRegistry serviceRegistry, ClassInfo classInfo, String name, TargetType type) {
	Class clazz = serviceRegistry.getService( ClassLoaderService.class ).classForName( classInfo.toString() );
	switch ( type ) {
		case FIELD:
			Field field = getField( clazz, name );
			if ( field == null ) {
				throw new HibernateException(
						"Unable to load field "
								+ name
								+ " of class " + clazz.getName()
				);
			}

			return FieldInfo.create(
					classInfo, name, getType( field.getType() ), (short) ( field.getModifiers() )
			);
		case METHOD:
			Method method = getMethod( clazz, name );
			if ( method == null ) {
				throw new HibernateException(
						"Unable to load method "
								+ name
								+ " of class " + clazz.getName()
				);
			}
			return getMethodInfo( classInfo, method );
		case PROPERTY:
			method = getterMethod( clazz, name );
			if ( method == null ) {
				throw new HibernateException(
						"Unable to load property "
								+ name
								+ " of class " + clazz.getName()
				);
			}
			return getMethodInfo( classInfo, method );

	}
	throw new HibernateException( "" );
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:41,代码来源:MockHelper.java


注:本文中的org.hibernate.boot.registry.classloading.spi.ClassLoaderService类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。