public boolean offer(E e){
  buffer.offer(e);
  if (consumer != null) {
    consumer.wakeUp();
  }
  return true;
}

public boolean offer ( E e ) { buffer . offer ( e ) ; if ( consumer != null ) { consumer . wakeUp ( ) ; } return true ; }
since it is an unbounded queue , the offer will always return true .
