docs: private JPAPUnitInfo getUniquePU(String modName) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              Tr.entry(tc, "getUniquePU", modName);
          JPAPUnitInfo rtnVal = null;
  
          JPAScopeInfo scopeInfo = null;
          synchronized (puScopes) {
              scopeInfo = puScopes.get(modName);
          }
          int totalPus = (scopeInfo != null) ? scopeInfo.getAllPuCount() : 0;
  
          switch (totalPus) {
              case 1: // found a unique PU in the module.
                  rtnVal = scopeInfo.getUniquePuInfo();
                  break;
  
              case 0: // no PU in module scope, look for unique PU in ear scope
                  synchronized (puScopes) {
                      scopeInfo = puScopes.get(EAR_SCOPE_MODULE_NAME);
                  }
                  totalPus = (scopeInfo != null) ? scopeInfo.getAllPuCount() : 0;
                  if (totalPus == 1) {
                      // found only one, use it.
                      rtnVal = scopeInfo.getUniquePuInfo();
                      break;
                  }
                  // fall through to indicate no unique PU is found.
              default:
                  // otherwise, can not determine what to use.
                  Tr.error(tc, "PU_NOT_SPECIFIED_AND_NO_UNIQUE_PU_FOUND_CWWJP0012E", applName, modName);
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              Tr.exit(tc, "getUniquePU", rtnVal);
          return rtnVal;
      }