docs: @Override
      public void afterGettingConnection(Subject subject, ConnectionRequestInfo reqInfo, Object credentialToken) throws ResourceException {
  
          final Object credToken = credentialToken;
  
          if (tc.isEntryEnabled())
              Tr.entry(this, tc, "afterGettingConnection", getSubjectString(subject), reqInfo, credentialToken);
  
          if (credToken != null) {
  
              try {
                  if (System.getSecurityManager() != null) {
                      AccessController.doPrivileged(
                                                    new PrivilegedExceptionAction() {
                                                        @Override
                                                        public Object run() throws Exception {
                                                            ThreadIdentityManager.resetChecked(credToken);
                                                            return null;
                                                        }
                                                    });
                  } else {
                      ThreadIdentityManager.resetChecked(credToken);
                  }
  
              } catch (PrivilegedActionException pae) {
                  FFDCFilter.processException(pae, "com.ibm.ejs.j2c.ThreadIdentitySecurityHelper.afterGettingConnection", "37", this);
                  Tr.error(tc, "FAILED_DOPRIVILEGED_J2CA0060", pae);
                  Exception e = pae.getException();
                  ResourceException re = new ResourceException("ThreadIdentitySecurityHelper.afterGettingConnection() failed attempting to restore user identity to the OS Thread");
                  re.initCause(e);
                  throw re;
  
              } catch (IllegalStateException ise) {
                  FFDCFilter.processException(ise, "com.ibm.ejs.j2c.ThreadIdentitySecurityHelper.afterGettingConnection", "38", this);
                  Object[] parms = new Object[] { "ThreadIdentitySecurityHelper.afterGettingConnection()", ise };
                  Tr.error(tc, "ILLEGAL_STATE_EXCEPTION_J2CA0079", parms);
                  ResourceException re = new ResourceException("ThreadIdentitySecurityHelper.afterGettingConnection() failed attempting to restore user identity to the OS Thread");
                  re.initCause(ise);
                  throw re;
              } catch (ThreadIdentityException tie) {
                  FFDCFilter.processException(tie, "com.ibm.ejs.j2c.ThreadIdentitySecurityHelper.afterGettingConnection", "39", this);
                  ResourceException re = new ResourceException("ThreadIdentitySecurityHelper.afterGettingConnection() failed attempting to restore user identity to the OS Thread");
                  re.initCause(tie);
                  throw re;
              }
  
              if (tc.isDebugEnabled()) {
                  Tr.debug(tc, "afterGettingConnection() restored OS thread identity");
              }
          }
  
          if (tc.isEntryEnabled())
              Tr.exit(this, tc, "afterGettingConnection");
      }