Polish Javadoc
This commit is contained in:
		
							parent
							
								
									f29bfd9769
								
							
						
					
					
						commit
						b6364e3665
					
				| 
						 | 
				
			
			@ -28,10 +28,10 @@ import org.springframework.lang.Nullable;
 | 
			
		|||
/**
 | 
			
		||||
 * An adapter for a target {@link DataSource}, designed to apply sharding keys, if specified,
 | 
			
		||||
 * to every standard {@code #getConnection} call, returning a direct connection to the shard
 | 
			
		||||
 * corresponding to the specified sharding key value. All other methods are simply delegated
 | 
			
		||||
 * to the corresponding methods of the target DataSource.
 | 
			
		||||
 * corresponding to the specified sharding key value. All other methods simply delegate
 | 
			
		||||
 * to the corresponding methods of the target {@code DataSource}.
 | 
			
		||||
 *
 | 
			
		||||
 * <p>The target {@link DataSource} must implement the {@link #createConnectionBuilder} method;
 | 
			
		||||
 * <p>The target {@code DataSource} must implement the {@link #createConnectionBuilder} method;
 | 
			
		||||
 * otherwise, a {@link java.sql.SQLFeatureNotSupportedException} will be thrown when attempting
 | 
			
		||||
 * to acquire shard connections.
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -40,7 +40,7 @@ import org.springframework.lang.Nullable;
 | 
			
		|||
 *
 | 
			
		||||
 * <pre class="code">
 | 
			
		||||
 * ShardingKeyDataSourceAdapter dataSourceAdapter = new ShardingKeyDataSourceAdapter(dataSource);
 | 
			
		||||
 * dataSourceAdapter.setShardingKeyProvider(() -> dataSource.createShardingKeyBuilder()
 | 
			
		||||
 * dataSourceAdapter.setShardingKeyProvider(() -> dataSource.createShardingKeyBuilder()
 | 
			
		||||
 *     .subkey(SecurityContextHolder.getContext().getAuthentication().getName(), JDBCType.VARCHAR).build());
 | 
			
		||||
 * </pre>
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			@ -58,17 +58,20 @@ public class ShardingKeyDataSourceAdapter extends DelegatingDataSource {
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Create a new instance of ShardingKeyDataSourceAdapter, wrapping the given {@link DataSource}.
 | 
			
		||||
	 * @param dataSource the target DataSource to be wrapped
 | 
			
		||||
	 * Create a new instance of {@code ShardingKeyDataSourceAdapter}, wrapping the
 | 
			
		||||
	 * given {@link DataSource}.
 | 
			
		||||
	 * @param dataSource the target {@code DataSource} to be wrapped
 | 
			
		||||
	 */
 | 
			
		||||
	public ShardingKeyDataSourceAdapter(DataSource dataSource) {
 | 
			
		||||
		super(dataSource);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Create a new instance of ShardingKeyDataSourceAdapter, wrapping the given {@link DataSource}.
 | 
			
		||||
	 * @param dataSource the target DataSource to be wrapped
 | 
			
		||||
	 * @param shardingKeyProvider the ShardingKeyProvider used to get the sharding keys
 | 
			
		||||
	 * Create a new instance of {@code ShardingKeyDataSourceAdapter}, wrapping the
 | 
			
		||||
	 * given {@link DataSource}.
 | 
			
		||||
	 * @param dataSource the target {@code DataSource} to be wrapped
 | 
			
		||||
	 * @param shardingKeyProvider the {@code ShardingKeyProvider} used to get the
 | 
			
		||||
	 * sharding keys
 | 
			
		||||
	 */
 | 
			
		||||
	public ShardingKeyDataSourceAdapter(DataSource dataSource, ShardingKeyProvider shardingKeyProvider) {
 | 
			
		||||
		super(dataSource);
 | 
			
		||||
| 
						 | 
				
			
			@ -87,8 +90,9 @@ public class ShardingKeyDataSourceAdapter extends DelegatingDataSource {
 | 
			
		|||
	/**
 | 
			
		||||
	 * Obtain a connection to the database shard using the provided sharding key
 | 
			
		||||
	 * and super sharding key (if available).
 | 
			
		||||
	 * <p>The sharding key is obtained from the {@link ShardingKeyProvider}.
 | 
			
		||||
	 * @return a Connection object representing a direct shard connection
 | 
			
		||||
	 * <p>The sharding key is obtained from the configured
 | 
			
		||||
	 * {@link #setShardingKeyProvider ShardingKeyProvider}.
 | 
			
		||||
	 * @return a {@code Connection} object representing a direct shard connection
 | 
			
		||||
	 * @throws SQLException if an error occurs while creating the connection
 | 
			
		||||
	 * @see #createConnectionBuilder()
 | 
			
		||||
	 */
 | 
			
		||||
| 
						 | 
				
			
			@ -100,11 +104,12 @@ public class ShardingKeyDataSourceAdapter extends DelegatingDataSource {
 | 
			
		|||
	/**
 | 
			
		||||
	 * Obtain a connection to the database shard using the provided username and password,
 | 
			
		||||
	 * considering the sharding keys (if available) and the given credentials.
 | 
			
		||||
	 * <p>The sharding key is obtained from the {@link ShardingKeyProvider}.
 | 
			
		||||
	 * <p>The sharding key is obtained from the configured
 | 
			
		||||
	 * {@link #setShardingKeyProvider ShardingKeyProvider}.
 | 
			
		||||
	 * @param username the database user on whose behalf the connection is being made
 | 
			
		||||
	 * @param password the user's password
 | 
			
		||||
	 * @return a Connection object representing a direct shard connection.
 | 
			
		||||
	 * @throws SQLException if an error occurs while creating the connection.
 | 
			
		||||
	 * @return a {@code Connection} object representing a direct shard connection
 | 
			
		||||
	 * @throws SQLException if an error occurs while creating the connection
 | 
			
		||||
	 */
 | 
			
		||||
	@Override
 | 
			
		||||
	public Connection getConnection(String username, String password) throws SQLException {
 | 
			
		||||
| 
						 | 
				
			
			@ -112,9 +117,9 @@ public class ShardingKeyDataSourceAdapter extends DelegatingDataSource {
 | 
			
		|||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Create a new instance of {@link ConnectionBuilder} using the target DataSource's
 | 
			
		||||
	 * {@code createConnectionBuilder()} method, and sets the appropriate sharding keys
 | 
			
		||||
	 * from the {@link ShardingKeyProvider}.
 | 
			
		||||
	 * Create a new instance of {@link ConnectionBuilder} using the target {@code DataSource}'s
 | 
			
		||||
	 * {@code createConnectionBuilder()} method and set the appropriate sharding keys
 | 
			
		||||
	 * from the configured {@link #setShardingKeyProvider ShardingKeyProvider}.
 | 
			
		||||
	 * @return a ConnectionBuilder object representing a builder for direct shard connections
 | 
			
		||||
	 * @throws SQLException if an error occurs while creating the ConnectionBuilder
 | 
			
		||||
	 */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue