code: public final boolean isReconfigurable(WSConnectionRequestInfoImpl cri, boolean reauth) 
      {
          // The CRI is only reconfigurable if all fields which cannot be changed already match.
          // Although sharding keys can sometimes be changed via connection.setShardingKey,
          // the spec does not guarantee that this method will allow all sharding keys
          // (even ones that are known to be valid) to be set on any connection.  It leaves open
          // the possibility that the JDBC driver implementation can decide not to allow switching
          // between certain sharding keys.  Given that we don't have any way of knowing in
          // advance that a switching will be accepted (without preemptively trying to change it),
          // we must consider sharding keys to be non-reconfigurable for the purposes of
          // selecting a connection from the pool.
  
          if (reauth) 
          {
              return ivConfigID == cri.ivConfigID;
          } else {
              return match(ivUserName, cri.ivUserName) &&
                     match(ivPassword, cri.ivPassword) &&
                     match(ivShardingKey, cri.ivShardingKey) &&
                     match(ivSuperShardingKey, cri.ivSuperShardingKey) &&
                     ivConfigID == cri.ivConfigID;
          }
  
      }
docs: Indicates whether a Connection with this CRI may be reconfigured to the specific CRI.
  
  @param cri The CRI to test against.
  
  @return true if a connection with the CRI represented by this class can be reconfigured
  to the specified CRI.