code: public void bind(Object object, String name)
              throws ObjectNameNotUniqueException
      {
          /**
           * Is DB open? ODMG 3.0 says it has to be to call bind.
           */
          if (!this.isOpen())
          {
              throw new DatabaseClosedException("Database is not open. Must have an open DB to call bind.");
          }
          /**
           * Is Tx open? ODMG 3.0 says it has to be to call bind.
           */
          TransactionImpl tx = getTransaction();
          if (tx == null || !tx.isOpen())
          {
              throw new TransactionNotInProgressException("Tx is not open. Must have an open TX to call bind.");
          }
  
          tx.getNamedRootsMap().bind(object, name);
      }
docs: Associate a name with an object and make it persistent.
  An object instance may be bound to more than one name.
  Binding a previously transient object to a name makes that object persistent.
  @param object The object to be named.
  @param name The name to be given to the object.
  @exception org.odmg.ObjectNameNotUniqueException
  If an attempt is made to bind a name to an object and that name is already bound
  to an object.