docs: public long updateEntry(UniqueKeyGenerator generator) throws PersistenceException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(tc, "updateEntry", "GeneratorName="+generator.getName());
  
          long currentLimit = 0L;
  
          // Do we know of this generator?
          if (_generators.containsKey(generator.getName()))
          {
              Transaction transaction = null;
  
              try
              {
                  transaction = _objectManager.getTransaction();
  
                  // Replace the ManagedObject for this generator
                  UniqueKeyGeneratorManagedObject mo = (UniqueKeyGeneratorManagedObject)_generators.get(generator.getName());
  
                  // Lock the token so we can make our changes.
                  transaction.lock(mo);
  
                  // Update the value in the managed object to the 
                  // new increased limit.
                  synchronized (mo)
                  {
                      currentLimit = mo.getGeneratorKeyLimit();
                      mo.setGeneratorKeyLimit(currentLimit + generator.getRange());
                  }
  
                  // Use replace to update the contents.
                  transaction.replace(mo);
                  transaction.commit(false);
              }
              catch (ObjectManagerException ome)
              {
                  com.ibm.ws.ffdc.FFDCFilter.processException(ome, "com.ibm.ws.sib.msgstore.persistence.objectManager.UniqueKeyRangeManager.updateEntry", "1:286:1.8", this);
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.event(tc, "Exception caught increasing range of unique key generator!", ome);
  
                  if (transaction != null)
                  {
                      try
                      {
                          // Clean up our ObjectManager work.
                          transaction.backout(false);
                      }
                      catch (ObjectManagerException e)
                      {
                          com.ibm.ws.ffdc.FFDCFilter.processException(e, "com.ibm.ws.sib.msgstore.persistence.objectManager.UniqueKeyRangeManager.updateEntry", "1:298:1.8", this);
                          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.event(tc, "Exception caught backing out unique key generator update!", e);
                      }
                  }
  
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "updateEntry");
                  throw new PersistenceException("Exception caught increasing range of unique key generator!", ome);
              }
          }
          else
          {
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.event(tc, "No UniqueKeyGenerator matching: "+generator.getName()+" found to update!");
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "updateEntry");
              throw new PersistenceException("No UniqueKeyGenerator matching: "+generator.getName()+" found to update!");
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(tc, "updateEntry", "return="+currentLimit);
          return currentLimit;
      }