Skip to content
This repository was archived by the owner on Apr 12, 2020. It is now read-only.

Commit 635162f

Browse files
committed
remove feature filter
1 parent b2f9efd commit 635162f

5 files changed

Lines changed: 8 additions & 94 deletions

File tree

src/Gitonomy/ChangeLog/Filter/FeatureFilter.php

Lines changed: 0 additions & 29 deletions
This file was deleted.

src/Gitonomy/ChangeLog/Filter/FilterFactory.php

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,9 @@ static function createFromRequest(Request $request)
1010
{
1111
$parameters = $request->query;
1212

13-
$version = $parameters->get('from_version', 0.0);
14-
$versionFilter = new VersionFilter($version);
13+
$version = $parameters->get('from_version', 0.0);
14+
$filter = new VersionFilter($version);
1515

16-
if ($parameters->has('levels')) {
17-
$levels = explode(',', $parameters->get('levels'));
18-
$featureFilter = new FeatureFilter($levels);
19-
20-
$versionFilter->setFeatureFilter($featureFilter);
21-
}
22-
23-
return new ChangeLogFilter($versionFilter);
16+
return new ChangeLogFilter($filter);
2417
}
2518
}

src/Gitonomy/ChangeLog/Filter/VersionFilter.php

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,13 @@
66

77
class VersionFilter
88
{
9-
protected $featureFilter;
109
protected $minimumVersion;
1110

1211
public function __construct($minimumVersion)
1312
{
1413
$this->minimumVersion = $minimumVersion;
1514
}
1615

17-
public function setFeatureFilter(FeatureFilter $featureFilter)
18-
{
19-
$this->featureFilter = $featureFilter;
20-
}
21-
2216
public function filter(Version $version)
2317
{
2418
if (!$this->isTrue($version)) {
@@ -28,11 +22,7 @@ public function filter(Version $version)
2822
$result = new Version($version->getVersion(), $version->getDate());
2923

3024
foreach ($version->getFeatures() as $feature) {
31-
if (null === $this->featureFilter) {
32-
$result->addFeature($feature);
33-
} elseif (null !== $filter = $this->featureFilter->filter($feature)) {
34-
$result->addFeature($filter);
35-
}
25+
$result->addFeature($feature);
3626
}
3727

3828
return $result;

src/Gitonomy/ChangeLog/Loader/GithubLoader.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
use Buzz\Browser;
66
use Buzz\Client\Curl;
77

8-
use Gitonomy\ChangeLog\Parser\Parser;
8+
use Gitonomy\ChangeLog\Parser\ChangeLogParser;
99

1010
class GithubLoader implements LoaderInterface
1111
{
@@ -22,7 +22,7 @@ public function load()
2222
}
2323

2424
$content = $response->getContent();
25-
$parser = new Parser();
25+
$parser = new ChangeLogParser();
2626

2727
return $parser->parse($content);
2828
}

src/Gitonomy/ChangeLog/Parser/Parser.php

Lines changed: 2 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -16,53 +16,13 @@
1616
use Gitonomy\ChangeLog\Node\Version;
1717
use Gitonomy\ChangeLog\Node\Feature;
1818

19-
class Parser
19+
abstract class Parser
2020
{
2121
protected $cursor;
2222
protected $content;
2323
protected $length;
2424

25-
public function parse($content)
26-
{
27-
$this->cursor = 0;
28-
$this->content = $content;
29-
$this->length = strlen($this->content);
30-
31-
$changeLog = new ChangeLog();
32-
33-
while (!$this->isFinished()) {
34-
35-
if ($this->expects('* ')) {
36-
$version = $this->consumeTo("\n");
37-
38-
preg_match('#v(?P<version>[^/]+) \((?P<date>[0-9]{4}-[0-9]{2}-[0-9]{2})\)#', $version, $versionData);
39-
40-
if (array() === $versionData) {
41-
$version = new Version($version);
42-
} else {
43-
$version = new Version($versionData['version'], $versionData['date']);
44-
}
45-
46-
$changeLog->addVersion($version);
47-
}
48-
49-
if ($this->expects(' * ')) {
50-
$feature = $this->consumeTo("\n");
51-
52-
preg_match('#(?P<level>\w+) (?P<feature>[^.]+)#', $feature, $featureData);
53-
54-
if (null === $version) {
55-
continue;
56-
}
57-
58-
$version->addFeature(new Feature($featureData['level'], $featureData['feature']));
59-
}
60-
61-
$this->consumeNewLine();
62-
}
63-
64-
return $changeLog;
65-
}
25+
abstract function parse($content);
6626

6727
public function isFinished()
6828
{

0 commit comments

Comments
 (0)