public void deleteAdminObject(String jndiName) throws ConnectorRuntimeException {

    try {
      InitialContext ic = new InitialContext();
      ic.unbind(jndiName);
    } catch (NamingException ne) {
      ResourcesUtil resutil = ResourcesUtil.createInstance();
      if (resutil.adminObjectBelongsToSystemRar(jndiName)) {
        return;
      }
      if (ne instanceof NameNotFoundException) {
        _logger.log(Level.FINE, "rardeployment.admin_object_delete_failure", jndiName);
        _logger.log(Level.FINE, "", ne);
        return;
      }
      ConnectorRuntimeException cre =
          new ConnectorRuntimeException("Failed to delete admin object from jndi");
      cre.initCause(ne);
      _logger.log(Level.SEVERE, "rardeployment.admin_object_delete_failure", jndiName);
      _logger.log(Level.SEVERE, "", cre);
      throw cre;
    }
  }
  private void handlePoolRecreationForExistingProxies(ConnectorConnectionPool connConnPool) {

    recreatePool(connConnPool);

    Collection<BindableResource> resourcesList;
    if (!connConnPool.isApplicationScopedResource()) {
      resourcesList =
          JdbcResourcesUtil.getResourcesOfPool(domain.getResources(), connConnPool.getName());
    } else {
      PoolInfo poolInfo = connConnPool.getPoolInfo();
      Resources resources = ResourcesUtil.createInstance().getResources(poolInfo);
      resourcesList = JdbcResourcesUtil.getResourcesOfPool(resources, connConnPool.getName());
    }
    for (BindableResource bindableResource : resourcesList) {

      ResourceInfo resourceInfo = ConnectorsUtil.getResourceInfo(bindableResource);
      ConnectorRegistry.getInstance().updateResourceInfoVersion(resourceInfo);
    }
  }