docs: private void addToServerContextBindingMap(String interfaceName,
                                                String bindingName)
                      throws NameAlreadyBoundException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
              Tr.debug(tc, "addToServerContextBindingMap : " + interfaceName +
                           ", binding : " + bindingName);
  
          BindingData bdata = ivServerContextBindingMap.get(bindingName);
  
          if (bdata == null)
          {
              bdata = new BindingData();
              ivServerContextBindingMap.put(bindingName, bdata);
          }
  
          if (bdata.ivExplicitBean == null)
          {
              bdata.ivExplicitBean = ivHomeRecord.j2eeName;
              bdata.ivExplicitInterface = interfaceName;
  
              if (bdata.ivImplicitBeans != null &&
                  bdata.ivImplicitBeans.size() > 1)
              {
                  ivEjbContextAmbiguousMap.remove(interfaceName);
              }
          }
          else
          {
              J2EEName j2eeName = ivHomeRecord.j2eeName;
              if (bdata.ivExplicitBean.equals(j2eeName))
              {
                  Tr.error(tc, "NAME_ALREADY_BOUND_FOR_SAME_EJB_CNTR0173E",
                           new Object[] { interfaceName,
                                         j2eeName.getComponent(),
                                         j2eeName.getModule(),
                                         j2eeName.getApplication(),
                                         bindingName,
                                         bdata.ivExplicitInterface }); // d479669
                  String message = "The " + interfaceName + " interface of the " +
                                   j2eeName.getComponent() + " bean in the " +
                                   j2eeName.getModule() + " module of the " +
                                   j2eeName.getApplication() + " application " +
                                   "cannot be bound to the " + bindingName + " name location. " +
                                   "The " + bdata.ivExplicitInterface + " interface of the " +
                                   "same bean has already been bound to the " + bindingName +
                                   " name location.";
                  throw new NameAlreadyBoundException(message);
              }
              else
              {
                  Tr.error(tc, "NAME_ALREADY_BOUND_FOR_EJB_CNTR0172E",
                           new Object[] { interfaceName,
                                         j2eeName.getComponent(),
                                         j2eeName.getModule(),
                                         j2eeName.getApplication(),
                                         bindingName,
                                         bdata.ivExplicitInterface,
                                         bdata.ivExplicitBean.getComponent(),
                                         bdata.ivExplicitBean.getModule(),
                                         bdata.ivExplicitBean.getApplication() }); // d479669
                  String message = "The " + interfaceName + " interface of the " +
                                   j2eeName.getComponent() + " bean in the " +
                                   j2eeName.getModule() + " module of the " +
                                   j2eeName.getApplication() + " application " +
                                   "cannot be bound to the " + bindingName + " name location. " +
                                   "The " + bdata.ivExplicitInterface + " interface of the " +
                                   bdata.ivExplicitBean.getComponent() + " bean in the " +
                                   bdata.ivExplicitBean.getModule() + " module of the " +
                                   bdata.ivExplicitBean.getApplication() + " application " +
                                   "has already been bound to the " + bindingName + " name location.";
                  throw new NameAlreadyBoundException(message);
              }
          }
      }