code: @Override
      public String getSubscribeId(String fname) throws PortalException {
  
          // see if a given subscribe id is already in the map
          String subId = mFnameMap.get(fname);
          if (subId == null) {
              // see if a given subscribe id is already in the layout
              subId = man.getSubscribeId(fname);
          }
  
          // obtain a description of the transient channel and
          // assign a new transient channel id
          if (subId == null) {
              try {
                  IPortletDefinition chanDef =
                          PortletDefinitionRegistryLocator.getPortletDefinitionRegistry()
                                  .getPortletDefinitionByFname(fname);
                  if (chanDef != null) {
                      // assign a new id
                      subId = getNextSubscribeId();
                      mFnameMap.put(fname, subId);
                      mSubIdMap.put(subId, fname);
                      mChanMap.put(subId, chanDef);
                  }
              } catch (Exception e) {
                  log.error(
                          "TransientUserLayoutManagerWrapper::getSubscribeId() : "
                                  + "an exception encountered while trying to obtain "
                                  + "ChannelDefinition for fname \""
                                  + fname
                                  + "\" : "
                                  + e);
                  subId = null;
              }
          }
          return subId;
      }
docs: Given an functional name, return its subscribe id.
  
  @param fname the functional name to lookup
  @return the fname's subscribe id.