further work on the API documentation
This commit is contained in:
parent
37042f9b77
commit
95cede87ed
|
@ -6,6 +6,9 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Internals for action processing.
|
||||
* The various concrete action implementations.
|
||||
* <p>
|
||||
* These actions are scheduled for execution by the concrete event
|
||||
* listeners defined in {@link org.hibernate.event.internal}.
|
||||
*/
|
||||
package org.hibernate.action.internal;
|
||||
|
|
|
@ -12,8 +12,9 @@ import org.hibernate.HibernateException;
|
|||
import org.hibernate.event.spi.EventSource;
|
||||
|
||||
/**
|
||||
* An operation which may be scheduled for later execution. Usually, the operation is a database
|
||||
* insert/update/delete, together with required second-level cache management.
|
||||
* An operation which may be scheduled for later execution. Usually, the
|
||||
* operation is a database insert/update/delete, together with required
|
||||
* second-level cache management.
|
||||
*
|
||||
* @author Gavin King
|
||||
* @author Steve Ebersole
|
||||
|
|
|
@ -6,8 +6,17 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Defines SPI hooks into the {@link org.hibernate.engine.spi.ActionQueue}, mainly for
|
||||
* registering custom {@link org.hibernate.action.spi.AfterTransactionCompletionProcess}
|
||||
* and {@link org.hibernate.action.spi.BeforeTransactionCompletionProcess} hooks.
|
||||
* This SPI package defines an abstraction over the notion of an "action"
|
||||
* which is scheduled for asynchronous execution by the event listeners.
|
||||
* Every action implements {@link org.hibernate.action.spi.Executable}.
|
||||
* <p>
|
||||
* The {@link org.hibernate.engine.spi.ActionQueue} is responsible for
|
||||
* scheduling and execution of the actions.
|
||||
* <p>
|
||||
* This package also defines the SPI callback interfaces for the
|
||||
* {@link org.hibernate.engine.spi.ActionQueue}, allowing registration of
|
||||
* custom {@link org.hibernate.action.spi.AfterTransactionCompletionProcess}
|
||||
* and {@link org.hibernate.action.spi.BeforeTransactionCompletionProcess}
|
||||
* processors.
|
||||
*/
|
||||
package org.hibernate.action.spi;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Built-in implementations of {@link org.hibernate.binder.AttributeBinder}.
|
||||
*/
|
||||
package org.hibernate.binder.internal;
|
|
@ -6,6 +6,6 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* The internals of archive scanning support
|
||||
* The internals of archive scanning support.
|
||||
*/
|
||||
package org.hibernate.boot.archive.internal;
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the service for processing and handling {@code cfg.xml} files.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
package org.hibernate.boot.cfgxml.internal;
|
|
@ -30,8 +30,8 @@ import org.jboss.logging.Logger;
|
|||
/**
|
||||
* Models the information gleaned from parsing a {@code cfg.xml} file.
|
||||
* <p>
|
||||
* A LoadedConfig is built via {@link #consume}. An aggregated representation
|
||||
* can be maintained through calls to {@link #merge}
|
||||
* A {@link LoadedConfig} is built via {@link #consume}. An aggregated
|
||||
* representation can be maintained through calls to {@link #merge}.
|
||||
*/
|
||||
public class LoadedConfig {
|
||||
private static final Logger log = Logger.getLogger( LoadedConfig.class );
|
||||
|
|
|
@ -14,7 +14,7 @@ import org.hibernate.internal.util.StringHelper;
|
|||
import org.hibernate.internal.util.config.ConfigurationException;
|
||||
|
||||
/**
|
||||
* Represents a {@code <mapping/>} element within a cfg.xml file.
|
||||
* Represents a {@code <mapping/>} element within a {@code cfg.xml} file.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html.
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI service for processing and handling {@code cfg.xml} files.
|
||||
*
|
||||
* @see org.hibernate.boot.cfgxml.spi.LoadedConfig
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
package org.hibernate.boot.cfgxml.spi;
|
|
@ -6,33 +6,11 @@
|
|||
*/
|
||||
package org.hibernate.boot.registry.selector.spi;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.concurrent.Callable;
|
||||
|
||||
import org.hibernate.boot.registry.selector.internal.LazyServiceResolver;
|
||||
import org.hibernate.dialect.Dialect;
|
||||
import org.hibernate.service.Service;
|
||||
|
||||
/**
|
||||
* Service which acts as a registry for named strategy implementations.
|
||||
* <p>
|
||||
* Strategies are more open ended than services, though a strategy managed here might very well also be a service. The
|
||||
* strategy is any interface that has multiple, (possibly short) named implementations.
|
||||
* <p>
|
||||
* StrategySelector manages resolution of particular implementation by (possibly short) name via the
|
||||
* {@link StrategySelector#selectStrategyImplementor} method, which is the main contract here. As indicated in the docs of that
|
||||
* method the given name might be either a short registered name or the implementation FQN. As an example, consider
|
||||
* resolving the {@link org.hibernate.resource.transaction.spi.TransactionCoordinatorBuilder} implementation to use. To use the
|
||||
* JDBC-based TransactionCoordinatorBuilder the passed name might be either {@code "jdbc"} or
|
||||
* {@code "org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorBuilderImpl"} (which is the FQN).
|
||||
* <p>
|
||||
* Strategy implementations can be managed by {@link StrategySelector#registerStrategyImplementor} and
|
||||
* {@link StrategySelector#unRegisterStrategyImplementor}. Originally designed to help the OSGi use case, though no longer used there.
|
||||
* <p>
|
||||
* The service also exposes a general typing API via {@link StrategySelector#resolveStrategy} and {@link StrategySelector#resolveDefaultableStrategy}
|
||||
* which accept implementation references rather than implementation names, allowing for a multitude of interpretations
|
||||
* of said "implementation reference". See the docs for {@link StrategySelector#resolveDefaultableStrategy} for details.
|
||||
*
|
||||
* @author Christian Beikov
|
||||
*/
|
||||
public interface DialectSelector extends Service, LazyServiceResolver<Dialect> {
|
||||
|
|
|
@ -14,18 +14,18 @@ import org.hibernate.service.Service;
|
|||
/**
|
||||
* Service which acts as a registry for named strategy implementations.
|
||||
* <p>
|
||||
* Strategies are more open ended than services, though a strategy managed here might very well also be a service. The
|
||||
* strategy is any interface that has multiple, (possibly short) named implementations.
|
||||
* Strategies are more open-ended than services, though a strategy managed here might very well also be a service.
|
||||
* The strategy is any interface that has multiple, (possibly short) named implementations.
|
||||
* <p>
|
||||
* StrategySelector manages resolution of particular implementation by (possibly short) name via the
|
||||
* {@code StrategySelector} manages resolution of particular implementation by (possibly short) name via the
|
||||
* {@link #selectStrategyImplementor} method, which is the main contract here. As indicated in the docs of that
|
||||
* method the given name might be either a short registered name or the implementation FQN. As an example, consider
|
||||
* resolving the {@link org.hibernate.resource.transaction.spi.TransactionCoordinatorBuilder} implementation to use. To use the
|
||||
* JDBC-based TransactionCoordinatorBuilder the passed name might be either {@code "jdbc"} or
|
||||
* {@code "org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorBuilderImpl"} (which is the FQN).
|
||||
* resolving the {@link org.hibernate.resource.transaction.spi.TransactionCoordinatorBuilder} implementation to use.
|
||||
* To use the JDBC-based {@code TransactionCoordinatorBuilder} the passed name might be either {@code "jdbc"} or
|
||||
* {@code "org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorBuilderImpl"}.
|
||||
* <p>
|
||||
* Strategy implementations can be managed by {@link #registerStrategyImplementor} and
|
||||
* {@link #unRegisterStrategyImplementor}. Originally designed to help the OSGi use case, though no longer used there.
|
||||
* Strategy implementations can be managed by {@link #registerStrategyImplementor} and {@link #unRegisterStrategyImplementor}.
|
||||
* Originally designed to help the OSGi use case, though no longer used there.
|
||||
* <p>
|
||||
* The service also exposes a general typing API via {@link #resolveStrategy} and {@link #resolveDefaultableStrategy}
|
||||
* which accept implementation references rather than implementation names, allowing for a multitude of interpretations
|
||||
|
|
11
hibernate-core/src/main/java/org/hibernate/cache/cfg/internal/package-info.java
vendored
Normal file
11
hibernate-core/src/main/java/org/hibernate/cache/cfg/internal/package-info.java
vendored
Normal file
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the second-level cache configuration SPI.
|
||||
*/
|
||||
package org.hibernate.cache.cfg.internal;
|
|
@ -19,7 +19,7 @@ import org.hibernate.service.spi.ServiceRegistryImplementor;
|
|||
import org.jboss.logging.Logger;
|
||||
|
||||
/**
|
||||
* The standard ConfigurationService implementation
|
||||
* The standard {@link ConfigurationService} implementation.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -13,7 +13,7 @@ import org.hibernate.engine.config.spi.ConfigurationService;
|
|||
import org.hibernate.service.spi.ServiceRegistryImplementor;
|
||||
|
||||
/**
|
||||
* The ServiceInitiator for the ConfigurationService
|
||||
* The {@link org.hibernate.service.spi.ServiceInitiator} for the {@link ConfigurationService}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,6 +6,6 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Internal support for the configuration service implementation
|
||||
* The built-in implementation of the configuration service.
|
||||
*/
|
||||
package org.hibernate.engine.config.internal;
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Package for the configuration service, which provides access to configuration settings as part of a
|
||||
* ServiceRegistry
|
||||
* Contains the configuration service, which provides access to
|
||||
* settings via a {@link org.hibernate.service.ServiceRegistry}.
|
||||
*/
|
||||
package org.hibernate.engine.config;
|
||||
|
|
|
@ -10,7 +10,7 @@ package org.hibernate.engine.config.spi;
|
|||
import static org.hibernate.engine.config.spi.ConfigurationService.Converter;
|
||||
|
||||
/**
|
||||
* Standard set of setting converters
|
||||
* Standard set of setting converters.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* SPI Package for the configuration service.
|
||||
* Defines the SPI of the configuration service.
|
||||
* <p>
|
||||
* Provides access to settings via a {@link org.hibernate.service.ServiceRegistry}.
|
||||
*/
|
||||
package org.hibernate.engine.config.spi;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
/**
|
||||
* Support for many of the internal workings of Hibernate.
|
||||
*
|
||||
* <p>
|
||||
* See also the {@link org.hibernate.internal} package.
|
||||
*/
|
||||
package org.hibernate.engine.internal;
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* A range of container-specific implementations of
|
||||
* {@link org.hibernate.engine.transaction.jta.platform.spi.JtaPlatform}.
|
||||
*/
|
||||
package org.hibernate.engine.transaction.jta.platform.internal;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the event listener registration service.
|
||||
*/
|
||||
package org.hibernate.event.service.internal;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Support for the event listener registration service.
|
||||
*/
|
||||
package org.hibernate.event.service;
|
|
@ -11,8 +11,9 @@ import org.hibernate.event.spi.EventType;
|
|||
import org.hibernate.service.Service;
|
||||
|
||||
/**
|
||||
* Service for accessing each {@link EventListenerGroup} by {@link EventType}, as well as convenience
|
||||
* methods for managing the listeners registered in each {@link EventListenerGroup}.
|
||||
* Service for accessing each {@link EventListenerGroup} by {@link EventType},
|
||||
* along with convenience methods for managing the listeners registered in
|
||||
* each {@link EventListenerGroup}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI for the event listener registration service.
|
||||
*
|
||||
* @see org.hibernate.event.service.spi.EventListenerRegistry
|
||||
*/
|
||||
package org.hibernate.event.service.spi;
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Implements and extends the JPA-defined {@link jakarta.persistence.EntityGraph entity graph} API.
|
||||
* Implements and extends the JPA-defined {@linkplain jakarta.persistence.EntityGraph entity graph} API.
|
||||
*
|
||||
* @apiNote This entire package (including sub-packages) is considered incubating
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for id generator factories.
|
||||
*/
|
||||
package org.hibernate.id.factory.internal;
|
|
@ -0,0 +1,18 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Defines a {@linkplain org.hibernate.service.Service service} for creating
|
||||
* id generators.
|
||||
* <p>
|
||||
* This is an older mechanism for instantiating and configuring id generators
|
||||
* which predates the existence of {@link org.hibernate.generator.Generator}.
|
||||
* It is used when id generators are identified by stringly-typed names.
|
||||
*
|
||||
* @see org.hibernate.id.factory.IdentifierGeneratorFactory
|
||||
*/
|
||||
package org.hibernate.id.factory;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Contains an SPI for id generator factories.
|
||||
*/
|
||||
package org.hibernate.id.factory.spi;
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Contains a framework of strategies for retrieving database-generated ids.
|
||||
*
|
||||
* @see org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
|
||||
*/
|
||||
package org.hibernate.id.insert;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Contains the {@link org.hibernate.id.uuid.UuidGenerator}.
|
||||
*/
|
||||
package org.hibernate.id.uuid;
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for extensions which integrate with Hibernate via the
|
||||
* {@link org.hibernate.service.Service} mechanism.
|
||||
*/
|
||||
package org.hibernate.integrator.internal;
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implements the SPI for basic-value conversions.
|
||||
*
|
||||
* @see org.hibernate.metamodel.model.convert.spi.BasicValueConverter
|
||||
*/
|
||||
package org.hibernate.metamodel.model.convert.internal;
|
|
@ -6,11 +6,15 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Support for basic-value conversions. The main contract is
|
||||
* Support for basic-value conversions. The main contract is
|
||||
* {@link org.hibernate.metamodel.model.convert.spi.BasicValueConverter}.
|
||||
*
|
||||
* <p>
|
||||
* All basic value conversions are defined by this package including:
|
||||
* * Enum conversions - {@link org.hibernate.metamodel.model.convert.spi.EnumValueConverter}
|
||||
* * AttributeConverter - {@link org.hibernate.metamodel.model.convert.spi.JpaAttributeConverter}
|
||||
* <ul>
|
||||
* <li>Java {@code enum} conversions via
|
||||
* {@link org.hibernate.metamodel.model.convert.spi.EnumValueConverter}
|
||||
* <li>support for {@link jakarta.persistence.AttributeConverter} via
|
||||
* {@link org.hibernate.metamodel.model.convert.spi.JpaAttributeConverter}
|
||||
* </ul>
|
||||
*/
|
||||
package org.hibernate.metamodel.model.convert;
|
||||
|
|
|
@ -13,13 +13,12 @@ import org.hibernate.type.descriptor.jdbc.JdbcType;
|
|||
|
||||
/**
|
||||
* Support for basic-value conversions.
|
||||
*
|
||||
* Conversions might be defined by:
|
||||
*
|
||||
* * a custom JPA {@link jakarta.persistence.AttributeConverter},
|
||||
* * implicitly, based on the Java type (e.g., enums)
|
||||
* * etc
|
||||
*
|
||||
* <p>
|
||||
* Conversions might be determined by:
|
||||
* <ul>
|
||||
* <li>a custom JPA {@link jakarta.persistence.AttributeConverter}, or
|
||||
* <li>implicitly, based on the Java type, for example, for Java {@code enum}s.
|
||||
* </ul>
|
||||
* @param <D> The Java type we can use to represent the domain (object) type
|
||||
* @param <R> The Java type we can use to represent the relational type
|
||||
*
|
||||
|
|
|
@ -20,7 +20,7 @@ import org.hibernate.type.descriptor.jdbc.JdbcType;
|
|||
import static org.hibernate.metamodel.model.convert.internal.EnumHelper.getEnumeratedValues;
|
||||
|
||||
/**
|
||||
* BasicValueConverter extension for enum-specific support
|
||||
* {@link BasicValueConverter} extension for enum-specific support
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -12,7 +12,7 @@ import org.hibernate.resource.beans.spi.ManagedBean;
|
|||
import org.hibernate.type.descriptor.java.JavaType;
|
||||
|
||||
/**
|
||||
* BasicValueConverter extension for AttributeConverter-specific support
|
||||
* {@link BasicValueConverter} extension for {@link AttributeConverter}-specific support
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI for basic-value conversions.
|
||||
*
|
||||
* @see org.hibernate.metamodel.model.convert.spi.BasicValueConverter
|
||||
*/
|
||||
package org.hibernate.metamodel.model.convert.spi;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for the runtime domain metamodel.
|
||||
*/
|
||||
package org.hibernate.metamodel.model.domain.internal;
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI for the runtime domain metamodel.
|
||||
*
|
||||
* @see org.hibernate.metamodel.model.domain.spi.JpaMetamodelImplementor
|
||||
*/
|
||||
package org.hibernate.metamodel.model.domain.spi;
|
|
@ -8,12 +8,12 @@
|
|||
/**
|
||||
* Defines support for performing mutation operations against collections.
|
||||
*
|
||||
* @apiNote The names used here are logical. E.g. "inserting a row" may actually
|
||||
* execute an UPDATE statement instead of an INSERT. This is generally
|
||||
* delineated based on whether there is a collection table involved or
|
||||
* not. In standard Hibernate terms, this breaks down to the distinction
|
||||
* between {@link org.hibernate.persister.collection.BasicCollectionPersister}
|
||||
* and {@link org.hibernate.persister.collection.OneToManyPersister}.
|
||||
* @apiNote The names used here are logical. E.g. "inserting a row" may actually
|
||||
* execute an UPDATE statement instead of an INSERT. This is generally
|
||||
* delineated based on whether there is a collection table involved or
|
||||
* not. In terms of our usual model, this breaks down to the distinction
|
||||
* between {@link org.hibernate.persister.collection.BasicCollectionPersister}
|
||||
* and {@link org.hibernate.persister.collection.OneToManyPersister}.
|
||||
*/
|
||||
@Incubating
|
||||
package org.hibernate.persister.collection.mutation;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Built-in implementation of the SPI for integrating entity and collection persisters.
|
||||
*/
|
||||
package org.hibernate.persister.internal;
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Contains various implementations of
|
||||
* {@link org.hibernate.property.access.spi.PropertyAccessStrategy}.
|
||||
*/
|
||||
package org.hibernate.property.access.internal;
|
|
@ -15,7 +15,7 @@ import java.util.Map;
|
|||
import org.hibernate.engine.spi.SharedSessionContractImplementor;
|
||||
|
||||
/**
|
||||
* The contract for getting value for a persistent property from its container/owner
|
||||
* The contract for getting the value of a persistent attribute from its container/owner.
|
||||
*
|
||||
* @author Gavin King
|
||||
* @author Steve Ebersole
|
||||
|
|
|
@ -9,10 +9,10 @@ package org.hibernate.property.access.spi;
|
|||
import org.hibernate.metamodel.spi.ManagedTypeRepresentationStrategy;
|
||||
|
||||
/**
|
||||
* Describes access to a particular persistent property in terms of getting and setting
|
||||
* values.
|
||||
* Defines how a given persistent attribute is accessed by exposing
|
||||
* a {@link Getter} and a {@link Setter} for the attribute.
|
||||
* <p>
|
||||
* Instances are obtained from {@link PropertyAccessStrategy}
|
||||
* Instances are obtained from a {@link PropertyAccessStrategy}.
|
||||
*
|
||||
* @see ManagedTypeRepresentationStrategy
|
||||
*
|
||||
|
@ -21,21 +21,21 @@ import org.hibernate.metamodel.spi.ManagedTypeRepresentationStrategy;
|
|||
*/
|
||||
public interface PropertyAccess {
|
||||
/**
|
||||
* Access to the PropertyAccessStrategy that created this PropertyAccess
|
||||
* Access to the {@link PropertyAccessStrategy} that created this instance.
|
||||
*
|
||||
* @return The PropertyAccessStrategy that created this PropertyAccess
|
||||
* @return The {@code PropertyAccessStrategy}
|
||||
*/
|
||||
PropertyAccessStrategy getPropertyAccessStrategy();
|
||||
|
||||
/**
|
||||
* Obtain the delegate for getting values for the described persistent property
|
||||
* Obtain the delegate for getting values of the persistent attribute.
|
||||
*
|
||||
* @return The property getter
|
||||
*/
|
||||
Getter getGetter();
|
||||
|
||||
/**
|
||||
* Obtain the delegate for setting values for the described persistent property
|
||||
* Obtain the delegate for setting values of the persistent attribute.
|
||||
*
|
||||
* @return The property setter
|
||||
*/
|
||||
|
|
|
@ -9,7 +9,7 @@ package org.hibernate.property.access.spi;
|
|||
import org.hibernate.HibernateException;
|
||||
|
||||
/**
|
||||
* Indicates a problem while building a PropertyAccess
|
||||
* Indicates a problem while building a {@link PropertyAccess}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -7,13 +7,14 @@
|
|||
package org.hibernate.property.access.spi;
|
||||
|
||||
/**
|
||||
* Describes a strategy for persistent property access (field, JavaBean-style property, etc).
|
||||
*
|
||||
* Describes a strategy for accessing a persistent attribute,
|
||||
* for example: field, JavaBean-style property, or whatever.
|
||||
* <p>
|
||||
* Acts as a factory for {@link PropertyAccess} instances.
|
||||
*/
|
||||
public interface PropertyAccessStrategy {
|
||||
/**
|
||||
* Build a PropertyAccess for the indicated property
|
||||
* Build a {@link PropertyAccess} for the indicated property
|
||||
*
|
||||
* @param containerJavaType The Java type that contains the property; may be {@code null} for non-pojo cases.
|
||||
* @param propertyName The property name
|
||||
|
|
|
@ -10,12 +10,12 @@ import org.hibernate.metamodel.RepresentationMode;
|
|||
import org.hibernate.service.Service;
|
||||
|
||||
/**
|
||||
* Contract for resolving the PropertyAccessStrategy to use.
|
||||
* <p>
|
||||
* todo : moving forward I'd prefer this not be a service, but instead a strategy on the MetadataBuildingContext or MetadataBuildingOptions
|
||||
* Contract for resolving the {@link PropertyAccessStrategy} to use.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
//TODO: moving forward I'd prefer this not be a service, but instead a
|
||||
// strategy on the MetadataBuildingContext or MetadataBuildingOptions
|
||||
public interface PropertyAccessStrategyResolver extends Service {
|
||||
/**
|
||||
* Resolve the PropertyAccessStrategy to use
|
||||
|
|
|
@ -10,7 +10,7 @@ import java.io.Serializable;
|
|||
import java.lang.reflect.Method;
|
||||
|
||||
/**
|
||||
* The contract for setting a persistent property value into its container/owner
|
||||
* The contract for setting the value of a persistent attribute on its container/owner.
|
||||
*
|
||||
* @author Gavin King
|
||||
* @author Steve Ebersole
|
||||
|
|
|
@ -6,6 +6,9 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Integration contracts related with {@link org.hibernate.property.access.spi.PropertyAccessStrategy}
|
||||
* An SPI abstracting how persistent attributes of an entity or embeddable type
|
||||
* are accessed by Hibernate.
|
||||
*
|
||||
* @see org.hibernate.property.access.spi.PropertyAccessStrategy
|
||||
*/
|
||||
package org.hibernate.property.access.spi;
|
||||
|
|
|
@ -6,10 +6,8 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Hibernate's support for JPA criteria queries.
|
||||
* <p>
|
||||
* Note JPA criteria are similar to Hibernate's legacy notion
|
||||
* of a detached criteria. Ultimately the criteria tree is transformed
|
||||
* into an SQM form and becomes a Query.
|
||||
* Support for JPA criteria queries.
|
||||
*
|
||||
* @see org.hibernate.query.criteria.HibernateCriteriaBuilder
|
||||
*/
|
||||
package org.hibernate.query.criteria;
|
||||
|
|
|
@ -10,8 +10,8 @@ import org.hibernate.query.criteria.HibernateCriteriaBuilder;
|
|||
import org.hibernate.service.Service;
|
||||
|
||||
/**
|
||||
* Interface which allows to extend {@link HibernateCriteriaBuilder}
|
||||
* with additional functionality by registering a {@link Service}
|
||||
* Interface which allows extension of {@link HibernateCriteriaBuilder}
|
||||
* with additional functionality by registering a {@link Service}.
|
||||
*
|
||||
* @author Marco Belladelli
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* SPI for extending {@link org.hibernate.query.criteria.HibernateCriteriaBuilder}
|
||||
* with additional functionality by registering a {@link org.hibernate.service.Service}.
|
||||
*/
|
||||
package org.hibernate.query.criteria.spi;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An implementation of the bean container SPI based on CDI.
|
||||
*/
|
||||
package org.hibernate.resource.beans.container.internal;
|
|
@ -6,6 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Package for integrating dependency-injection bean containers
|
||||
* This package provides support for integrating bean containers like CDI.
|
||||
* A "bean container" is usually based around dependency injection.
|
||||
*/
|
||||
package org.hibernate.resource.beans.container;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI abstracting over CDI-like bean containers.
|
||||
*/
|
||||
package org.hibernate.resource.beans.container.spi;
|
|
@ -18,7 +18,7 @@ import org.hibernate.resource.beans.spi.ManagedBeanRegistry;
|
|||
import org.hibernate.service.spi.Stoppable;
|
||||
|
||||
/**
|
||||
* Abstract support (template pattern) for ManagedBeanRegistry implementations
|
||||
* Abstract support (template pattern) for {@link ManagedBeanRegistry} implementations
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,9 +6,9 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Defines Hibernate's integration with CDI. Because CDI may or may not be available
|
||||
* a lot of this support is directed toward abstracting/encapsulating CDI. The
|
||||
* central contracts here from a consumption point-of-view are
|
||||
* Defines Hibernate's integration with CDI. Because CDI may or may not be available
|
||||
* a lot of this support is directed toward abstracting/encapsulating CDI. The central
|
||||
* contracts here from a client point of view are
|
||||
* {@link org.hibernate.resource.beans.spi.ManagedBean} and
|
||||
* {@link org.hibernate.resource.beans.spi.ManagedBeanRegistry} which may or may not
|
||||
* really be backed by CDI.
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Defines an SPI for integration with CDI-like containers.
|
||||
* <p>
|
||||
* Because CDI may or may not be available, much of this support
|
||||
* is directed toward abstracting/encapsulating CDI.
|
||||
* <p>
|
||||
* The central contracts here from a client point of view are
|
||||
* {@link org.hibernate.resource.beans.spi.ManagedBean} and
|
||||
* {@link org.hibernate.resource.beans.spi.ManagedBeanRegistry},
|
||||
* which may or may not really be backed by CDI.
|
||||
*/
|
||||
package org.hibernate.resource.beans.spi;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for managing JDBC connections and other heavyweight resources.
|
||||
*/
|
||||
package org.hibernate.resource.jdbc.internal;
|
|
@ -7,5 +7,8 @@
|
|||
|
||||
/**
|
||||
* A facility for managing JDBC connections and other heavyweight resources.
|
||||
*
|
||||
* @see org.hibernate.resource.jdbc.LogicalConnection
|
||||
* @see org.hibernate.resource.jdbc.ResourceRegistry
|
||||
*/
|
||||
package org.hibernate.resource.jdbc;
|
||||
|
|
|
@ -10,7 +10,7 @@ import org.hibernate.engine.spi.SessionFactoryImplementor;
|
|||
import org.hibernate.service.ServiceRegistry;
|
||||
|
||||
/**
|
||||
* Provides the JdbcSession implementation with contextual information it needs during its lifecycle.
|
||||
* Provides the {@code JdbcSession} with contextual information it needs during its lifecycle.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -10,12 +10,14 @@ import org.hibernate.engine.jdbc.connections.spi.JdbcConnectionAccess;
|
|||
import org.hibernate.resource.transaction.spi.TransactionCoordinator;
|
||||
|
||||
/**
|
||||
* Contract for something that controls a JdbcSessionContext. The name comes from the
|
||||
* design idea of a JdbcSession which encapsulates this information, which we will hopefully
|
||||
* get back to later.
|
||||
* Contract for something that controls a {@link JdbcSessionContext}.
|
||||
* <p>
|
||||
* The term "JDBC session" is taken from the SQL specification which
|
||||
* calls a connection and its associated transaction context a "session".
|
||||
*
|
||||
* The term "JDBC session" is taken from the SQL specification which calls a connection
|
||||
* and its associated transaction context a "session".
|
||||
* @apiNote The name comes from the design idea of a {@code JdbcSession}
|
||||
* which encapsulates this information, which we will hopefully
|
||||
* get back to later.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -13,7 +13,7 @@ import java.sql.Connection;
|
|||
import org.hibernate.resource.jdbc.LogicalConnection;
|
||||
|
||||
/**
|
||||
* SPI contract for LogicalConnection
|
||||
* SPI contract for {@link LogicalConnection}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -9,7 +9,7 @@ package org.hibernate.resource.jdbc.spi;
|
|||
import org.hibernate.resource.transaction.backend.jdbc.spi.JdbcResourceTransaction;
|
||||
|
||||
/**
|
||||
* Provides access to manage "transactionality" via the JDBC Connection
|
||||
* Provides access to manage "transactionality" via the JDBC {@link java.sql.Connection}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI for managing JDBC connections and other heavyweight resources,
|
||||
* based around the idea of a "JDBC session".
|
||||
*/
|
||||
package org.hibernate.resource.jdbc.spi;
|
|
@ -16,7 +16,7 @@ import org.hibernate.resource.transaction.spi.TransactionCoordinatorOwner;
|
|||
import org.hibernate.tool.schema.internal.exec.JdbcContext;
|
||||
|
||||
/**
|
||||
* Concrete builder for resource-local TransactionCoordinator instances.
|
||||
* Concrete builder for resource-local {@link TransactionCoordinator} instances.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -29,8 +29,8 @@ import org.hibernate.resource.transaction.spi.TransactionStatus;
|
|||
import static org.hibernate.internal.CoreLogging.messageLogger;
|
||||
|
||||
/**
|
||||
* An implementation of TransactionCoordinator based on managing a transaction through the JDBC Connection
|
||||
* via {@link JdbcResourceTransaction}
|
||||
* An implementation of {@link TransactionCoordinator} based on managing a
|
||||
* transaction through the JDBC Connection via {@link JdbcResourceTransaction}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* An implementation of {@link org.hibernate.resource.transaction.spi.TransactionCoordinator}
|
||||
* based on {@link org.hibernate.resource.transaction.backend.jdbc.spi.JdbcResourceTransaction}.
|
||||
*/
|
||||
package org.hibernate.resource.transaction.backend.jdbc.internal;
|
|
@ -9,12 +9,14 @@
|
|||
* Collectively models the concept of transaction coordination through the
|
||||
* "data store" specific notion of a transaction. In Hibernate ORM uses this
|
||||
* correlates to the JDBC notion of a transaction, which (unfortunately) is
|
||||
* not modeled by an actual contract. Instead JDBC models transaction control
|
||||
* via its Connection contract. Here we use
|
||||
* not modeled by an actual contract. Instead, JDBC models transaction control
|
||||
* via its Connection contract.
|
||||
* <p>
|
||||
* Here we use
|
||||
* {@link org.hibernate.resource.transaction.backend.jdbc.spi.JdbcResourceTransaction}
|
||||
* as the encapsulation for conceptual JDBC transaction. It also helps isolate the
|
||||
* {@link org.hibernate.resource.transaction} and {@link org.hibernate.resource.jdbc}
|
||||
* packages from circularity. Lastly it does somewhat allow for potentially abstracting
|
||||
* packages from circularity. Lastly, it does somewhat allow for potentially abstracting
|
||||
* non-JDBC data stores into this transaction handling utilizing its data store specific
|
||||
* transaction mechanism.
|
||||
*/
|
||||
|
|
|
@ -7,15 +7,17 @@
|
|||
package org.hibernate.resource.transaction.backend.jdbc.spi;
|
||||
|
||||
/**
|
||||
* Provides access to DataStoreTransaction (JDBC transaction stand-in) for use in building resource-local
|
||||
* TransactionCoordinator instances.
|
||||
* Provides access to {@link JdbcResourceTransaction} (JDBC transaction stand-in) for use in
|
||||
* building resource-local {@link org.hibernate.resource.transaction.spi.TransactionCoordinator}
|
||||
* instances.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
public interface JdbcResourceTransactionAccess {
|
||||
/**
|
||||
* Provides access to the resource local transaction of this data store, which is used by the TransactionCoordinator
|
||||
* to manage transactions against the data store when not using JTA.
|
||||
* Provides access to the resource local transaction of this data store, which is used by the
|
||||
* {@link org.hibernate.resource.transaction.spi.TransactionCoordinator} to manage transactions
|
||||
* against the data store when not using JTA.
|
||||
*
|
||||
* @return The resource-local transaction
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI which models the concept of a JDBC resource-level transaction.
|
||||
* <p>
|
||||
* JDBC itself provides no object which represents a transaction.
|
||||
*
|
||||
* @see org.hibernate.resource.transaction.backend.jdbc.spi.JdbcResourceTransaction
|
||||
*/
|
||||
package org.hibernate.resource.transaction.backend.jdbc.spi;
|
|
@ -6,16 +6,17 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Defines support for dealing with database results, accounting for mixed
|
||||
* result sets and update counts hiding the complexity of how this is exposed
|
||||
* via the JDBC API.
|
||||
* Defines support for dealing with results returned from database via JDBC.
|
||||
* <p>
|
||||
* Accounts for mixed result sets and update counts, hiding the complexity of how
|
||||
* this is exposed via the JDBC API.
|
||||
* <ul>
|
||||
* <li>{@link org.hibernate.result.Outputs} represents the overall group of results.
|
||||
* <li>{@link org.hibernate.result.Output} represents the mixed individual outcomes,
|
||||
* which might be either a {@link org.hibernate.result.ResultSetOutput} or
|
||||
* a {@link org.hibernate.result.UpdateCountOutput}.
|
||||
* </ul>
|
||||
*
|
||||
* <p>
|
||||
* <pre>
|
||||
* Outputs outputs = ...;
|
||||
* while ( outputs.goToNext() ) {
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for integrating pluggable services.
|
||||
*/
|
||||
package org.hibernate.service.internal;
|
|
@ -12,7 +12,7 @@ import static java.lang.annotation.ElementType.METHOD;
|
|||
import static java.lang.annotation.RetentionPolicy.RUNTIME;
|
||||
|
||||
/**
|
||||
* Annotation to allow services to request injection of other services
|
||||
* Annotation to allow services to request injection of other services.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -11,7 +11,7 @@ import org.hibernate.service.Service;
|
|||
import org.jboss.logging.Logger;
|
||||
|
||||
/**
|
||||
* Models a binding for a particular service
|
||||
* Models a binding for a particular service.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -10,7 +10,7 @@ import org.hibernate.service.Service;
|
|||
|
||||
/**
|
||||
* Contract for an initiator of services that target the specialized service registry
|
||||
* {@link SessionFactoryServiceRegistry}
|
||||
* {@link SessionFactoryServiceRegistry}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -7,8 +7,9 @@
|
|||
package org.hibernate.service.spi;
|
||||
|
||||
/**
|
||||
* Specialized {@link org.hibernate.service.ServiceRegistry} implementation that holds services which need access
|
||||
* to the {@link org.hibernate.SessionFactory} during initialization.
|
||||
* Specialized {@link org.hibernate.service.ServiceRegistry} implementation that
|
||||
* holds services which need access to the {@link org.hibernate.SessionFactory}
|
||||
* during initialization.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -9,9 +9,10 @@ package org.hibernate.service.spi;
|
|||
import org.hibernate.service.UnknownUnwrapTypeException;
|
||||
|
||||
/**
|
||||
* Optional contract for services that wrap stuff that to which it is useful to have access. For example, a service
|
||||
* that maintains a {@link javax.sql.DataSource} might want to expose access to the {@link javax.sql.DataSource} or
|
||||
* its {@link java.sql.Connection} instances.
|
||||
* Optional contract for services that wrap stuff that to which it is useful to have access.
|
||||
* <p>
|
||||
* For example, a service that maintains a {@link javax.sql.DataSource} might want to expose
|
||||
* access to the {@link javax.sql.DataSource} or its {@link java.sql.Connection} instances.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Package defining a SQL AST for use in creating and executing various JDBC operations
|
||||
* Package defining a SQL AST for use in creating and executing various JDBC operations.
|
||||
*/
|
||||
@Incubating
|
||||
package org.hibernate.sql.ast;
|
||||
|
|
|
@ -6,6 +6,6 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Package defining support for creating and consuming SQL AST
|
||||
* Package defining support for creating and consuming a SQL AST.
|
||||
*/
|
||||
package org.hibernate.sql.ast.spi;
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
/**
|
||||
* Package defining the SQL AST.
|
||||
* <p>
|
||||
* {@link org.hibernate.sql.ast.spi} defines support for creating and
|
||||
* consuming these trees.
|
||||
* The package {@link org.hibernate.sql.ast.spi} defines support for creating and consuming the AST.
|
||||
*/
|
||||
package org.hibernate.sql.ast.tree;
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for execution of SQL statements via JDBC.
|
||||
*/
|
||||
package org.hibernate.sql.exec.internal;
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* SPI for execution of SQL statements through JDBC. The statement to execute is
|
||||
* SPI for execution of SQL statements via JDBC. The statement to execute is
|
||||
* modelled by {@link org.hibernate.sql.exec.spi.JdbcOperationQuery} and is
|
||||
* executed via the corresponding executor.
|
||||
* <p>
|
||||
|
|
|
@ -22,7 +22,7 @@ import org.hibernate.sql.model.ValuesAnalysis;
|
|||
import org.hibernate.sql.model.jdbc.JdbcMutationOperation;
|
||||
|
||||
/**
|
||||
* Base TableMutation support
|
||||
* Base {@link TableMutation} support
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* SQL AST extensions for model mutations
|
||||
* SQL AST extensions for model mutations.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -6,6 +6,11 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Concrete implementations of
|
||||
* {@link org.hibernate.sql.model.ast.MutationGroup},
|
||||
* {@link org.hibernate.sql.model.MutationOperation}, and
|
||||
* {@link org.hibernate.sql.model.ast.TableMutation}.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
@Internal
|
||||
|
|
|
@ -6,8 +6,7 @@
|
|||
*/
|
||||
|
||||
/**
|
||||
* Extensions to {@link org.hibernate.sql.exec.spi.JdbcOperation} for
|
||||
* model mutations
|
||||
* Extensions to {@link org.hibernate.sql.exec.spi.JdbcOperation} for model mutations.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* The built-in implementation of the statistics collection service.
|
||||
*/
|
||||
package org.hibernate.stat.internal;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Implementation of the SPI for schema information extraction from the database via JDBC.
|
||||
*/
|
||||
package org.hibernate.tool.schema.extract.internal;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Defines an SPI for schema information extraction from the database via JDBC.
|
||||
*/
|
||||
package org.hibernate.tool.schema.extract.spi;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Support for exporting generated DDL to the database or to SQL scripts.
|
||||
*/
|
||||
package org.hibernate.tool.schema.internal.exec;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An implementation of the SPI for the tooling related to DDL generation, export, migration, and validation.
|
||||
*/
|
||||
package org.hibernate.tool.schema.internal;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* Support for reading SQL scripts supplied to the schema tooling.
|
||||
*/
|
||||
package org.hibernate.tool.schema.internal.script;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later
|
||||
* See the lgpl.txt file in the root directory or http://www.gnu.org/licenses/lgpl-2.1.html
|
||||
*/
|
||||
|
||||
/**
|
||||
* An SPI for the tooling related to DDL generation, export, migration, and validation.
|
||||
*/
|
||||
package org.hibernate.tool.schema.spi;
|
|
@ -0,0 +1,11 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Includes several general-purpose implementations of {@link org.hibernate.type.descriptor.sql.DdlType}.
|
||||
*/
|
||||
package org.hibernate.type.descriptor.sql.internal;
|
|
@ -0,0 +1,14 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* An API for working with abstract families of DDL types
|
||||
* parameterized by varying length, precision, and scale.
|
||||
*
|
||||
* @see org.hibernate.type.descriptor.sql.DdlType
|
||||
*/
|
||||
package org.hibernate.type.descriptor.sql;
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Defines a registry for {@link org.hibernate.type.descriptor.sql.DdlType}s.
|
||||
*
|
||||
* @see org.hibernate.type.descriptor.sql.spi.DdlTypeRegistry
|
||||
*/
|
||||
package org.hibernate.type.descriptor.sql.spi;
|
|
@ -73,18 +73,20 @@ import jakarta.persistence.TemporalType;
|
|||
import static org.hibernate.internal.CoreLogging.messageLogger;
|
||||
|
||||
/**
|
||||
* Defines a set of available Type instances as isolated from other configurations. The
|
||||
* isolation is defined by each instance of a TypeConfiguration.
|
||||
* Defines a set of available {@link Type} instances as isolated from other configurations.
|
||||
* The isolation is defined by each instance of a {@code TypeConfiguration}.
|
||||
* <p>
|
||||
* Note that each Type is inherently "scoped" to a TypeConfiguration. We only ever access
|
||||
* a Type through a TypeConfiguration - specifically the TypeConfiguration in effect for
|
||||
* the current persistence unit.
|
||||
* Note that each {@code Type} is inherently "scoped" to a {@code TypeConfiguration}. We only
|
||||
* ever access a {@code Type} via its {@code TypeConfiguration}, more specifically, via the
|
||||
* {@code TypeConfiguration} in effect for the current persistence unit.
|
||||
* <p>
|
||||
* Even though each Type instance is scoped to a TypeConfiguration, Types do not inherently
|
||||
* have access to that TypeConfiguration (mainly because Type is an extension contract - meaning
|
||||
* that Hibernate does not manage the full set of Types available in ever TypeConfiguration).
|
||||
* However Types will often want access to the TypeConfiguration, which can be achieved by the
|
||||
* Type simply implementing the {@link TypeConfigurationAware} interface.
|
||||
* Even though each {@code Type} instance is scoped to a {@code TypeConfiguration}, a {@code Type}
|
||||
* does not inherently have access to its {@code TypeConfiguration}, mainly because {@code Type}
|
||||
* is an extension contract and so Hibernate does not have full control over every {@code Type}
|
||||
* available in a {@code TypeConfiguration}.
|
||||
* <p>
|
||||
* However, a {@code Type} will often want access to the {@code TypeConfiguration}, which can be
|
||||
* achieved by the {@code Type} simply implementing the {@link TypeConfigurationAware} interface.
|
||||
*
|
||||
* @author Steve Ebersole
|
||||
*
|
||||
|
|
|
@ -7,9 +7,10 @@
|
|||
package org.hibernate.type.spi;
|
||||
|
||||
/**
|
||||
* Optional contract for Types that would like to be part of the scoping process of the
|
||||
* TypeConfiguration, specifically to receive access to the TypeConfiguration it is scoped
|
||||
* to. For additional information on TypeConfiguration scoping, see {@link TypeConfiguration}
|
||||
* Optional contract for {@link org.hibernate.type.Type}s which would like to be part of the scoping
|
||||
* process of the {@link TypeConfiguration}, that is, to receive access to the {@code TypeConfiguration}
|
||||
* to which they are scoped. For additional information on {@code TypeConfiguration} scoping, see
|
||||
* {@link TypeConfiguration}.
|
||||
* <p>
|
||||
* Note that it is illegal for a Type to implement TypeConfigurationAware and at the same time
|
||||
* be scoped to more than one TypeConfiguration. Hibernate will enforce this internally
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
/*
|
||||
* Hibernate, Relational Persistence for Idiomatic Java
|
||||
*
|
||||
* License: GNU Lesser General Public License (LGPL), version 2.1 or later.
|
||||
* See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Defines a registry for Hibernate {@link org.hibernate.type.Type}s.
|
||||
*
|
||||
* @see org.hibernate.type.spi.TypeConfiguration
|
||||
*/
|
||||
package org.hibernate.type.spi;
|
Loading…
Reference in New Issue