/** * @param \Kafka\Protocol\Fetch\Partition $partition */ public function onPartitionEof($partition) { $partitionId = $partition->key(); $topicName = $partition->getTopicName(); $offset = $partition->getMessageOffset(); $this->consumer->setFromOffset(true); $this->consumer->setPartition($topicName, $partitionId, $offset + 1); }
/** * implements Iterator function * * @access public * @return integer */ public function valid() { if (!$this->valid) { $this->partition->setMessageOffset($this->offset); // one partition iterator end \Kafka\Protocol\Fetch\Helper\Helper::onPartitionEof($this->partition); } return $this->valid; }
/** * on partition eof call * * @param \Kafka\Protocol\Fetch\Partition $partition * @access public * @return void */ public function onPartitionEof($partition) { $partitionId = $partition->key(); $topicName = $partition->getTopicName(); $offset = $partition->getMessageOffset() + 1; $offsetObject = new Offset($this->client, $this->group, $topicName, $partitionId); $offsetObject->setOffset($offset); }