58 lines
No EOL
1 KiB
PHP
58 lines
No EOL
1 KiB
PHP
<?php
|
|
|
|
class wfScanEntrypoint {
|
|
|
|
private $file;
|
|
private $included;
|
|
|
|
public function __construct($file, $included = false) {
|
|
$this->file = $file;
|
|
$this->included = $included;
|
|
}
|
|
|
|
public function getKey() {
|
|
return $this->file->getRealPath();
|
|
}
|
|
|
|
public function setIncluded($included = true) {
|
|
$this->included = $included;
|
|
return $this;
|
|
}
|
|
|
|
public function isIncluded() {
|
|
return $this->included;
|
|
}
|
|
|
|
public function getFile() {
|
|
return $this->file;
|
|
}
|
|
|
|
public function addTo(&$entrypoints) {
|
|
$key = $this->getKey();
|
|
if (array_key_exists($key, $entrypoints)) {
|
|
if ($this->isIncluded())
|
|
$entrypoints[$key]->setIncluded();
|
|
}
|
|
else {
|
|
$entrypoints[$key] = $this;
|
|
}
|
|
}
|
|
|
|
public static function getScannedSkippedFiles($entrypoints) {
|
|
$scanned = array();
|
|
$skipped = array();
|
|
foreach ($entrypoints as $entrypoint) {
|
|
if ($entrypoint->isIncluded()) {
|
|
$scanned[] = $entrypoint->getFile();
|
|
}
|
|
else {
|
|
$skipped[] = $entrypoint->getFile();
|
|
}
|
|
}
|
|
return array(
|
|
'scanned' => $scanned,
|
|
'skipped' => $skipped
|
|
);
|
|
}
|
|
|
|
} |