code: public boolean offer(E e) {
          Objects.requireNonNull(e);
          final ReentrantLock lock = this.lock;
          lock.lock();
          try {
              if (count == items.length)
                  return false;
              else {
                  enqueue(e);
                  return true;
              }
          } finally {
              lock.unlock();
          }
      }
docs: Inserts the specified element at the tail of this queue if it is
  possible to do so immediately without exceeding the queue's capacity,
  returning {@code true} upon success and {@code false} if this queue
  is full.  This method is generally preferable to method {@link #add},
  which can fail to insert an element only by throwing an exception.
  
  @throws NullPointerException if the specified element is null