code: @Override
      public boolean offer(final E e)
      {
          if (null == e)
          {
              throw new NullPointerException();
          }
          final LinkedQueueNode<E> nextNode = newNode(e);
          lpProducerNode().soNext(nextNode);
          spProducerNode(nextNode);
          return true;
      }
docs: {@inheritDoc} <br>
  <p>
  IMPLEMENTATION NOTES:<br>
  Offer is allowed from a SINGLE thread.<br>
  Offer allocates a new node (holding the offered value) and:
  <ol>
  <li>Sets that node as the producerNode.next
  <li>Sets the new node as the producerNode
  </ol>
  From this follows that producerNode.next is always null and for all other nodes node.next is not null.
  
  @see MessagePassingQueue#offer(Object)
  @see java.util.Queue#offer(java.lang.Object)