Code Duplication    Length = 12-14 lines in 2 locations

PHPDaemon/FS/File.php 2 locations

@@ 547-560 (lines=14) @@
544
	 * @param  string   &$buf
545
	 * @return callable
546
	 */
547
	protected function readAllGenHandler($cb, $size, &$offset, &$pri, &$buf) {
548
		return function ($file, $data) use ($cb, $size, &$offset, &$pri, &$buf) {
549
			$buf .= $data;
550
			$offset += strlen($data);
551
			$len = min($file->chunkSize, $size - $offset);
552
			if ($offset >= $size) {
553
				if ($cb) {
554
					$cb($file, $buf);
555
				}
556
				return;
557
			}
558
			eio_read($file->fd, $len, $offset, $pri, $this->readAllGenHandler($cb, $size, $offset, $pri, $buf), $this);
559
		};
560
	}
561
562
	/**
563
	 * Reads whole file
@@ 600-611 (lines=12) @@
597
	 * @param  integer  $pri
598
	 * @return callable
599
	 */
600
	protected function readAllChunkedGenHandler($cb, $chunkcb, $size, &$offset, $pri) {
601
		return function ($file, $data) use ($cb, $chunkcb, $size, &$offset, $pri) {
602
			$chunkcb($file, $data);
603
			$offset += strlen($data);
604
			$len = min($file->chunkSize, $size - $offset);
605
			if ($offset >= $size) {
606
				$cb($file, true);
607
				return;
608
			}
609
			eio_read($file->fd, $len, $offset, $pri, $this->readAllChunkedGenHandler($cb, $chunkcb, $size, $offset, $pri), $file);
610
		};
611
	}
612
613
	/**
614
	 * Reads file chunk-by-chunk