mirror of
https://github.com/rectorphp/rector.git
synced 2024-08-12 19:40:23 +00:00
Merge pull request #1609 from shyim/elasticsearch-dsl
Add ElasticSearchDSL package
This commit is contained in:
commit
8f0f829960
@ -73,7 +73,8 @@
|
||||
"Rector\\NetteTesterToPHPUnit\\": "packages/NetteTesterToPHPUnit/src",
|
||||
"Rector\\Nette\\": "packages/Nette/src",
|
||||
"Rector\\SOLID\\": "packages/SOLID/src",
|
||||
"Rector\\Legacy\\": "packages/Legacy/src"
|
||||
"Rector\\Legacy\\": "packages/Legacy/src",
|
||||
"Rector\\ElasticSearchDSL\\": "packages/ElasticSearchDSL/src"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
@ -109,7 +110,8 @@
|
||||
"Rector\\NetteTesterToPHPUnit\\Tests\\": "packages/NetteTesterToPHPUnit/tests",
|
||||
"Rector\\Nette\\Tests\\": "packages/Nette/tests",
|
||||
"Rector\\SOLID\\Tests\\": "packages/SOLID/tests",
|
||||
"Rector\\Legacy\\Tests\\": "packages/Legacy/tests"
|
||||
"Rector\\Legacy\\Tests\\": "packages/Legacy/tests",
|
||||
"Rector\\ElasticSearchDSL\\Tests\\": "packages/ElasticSearchDSL/tests"
|
||||
},
|
||||
"classmap": [
|
||||
"packages/Symfony/tests/Rector/FrameworkBundle/AbstractToConstructorInjectionRectorSource",
|
||||
|
44
config/set/elasticsearch-dsl/elasticsearch-dsl50.yaml
Normal file
44
config/set/elasticsearch-dsl/elasticsearch-dsl50.yaml
Normal file
@ -0,0 +1,44 @@
|
||||
# https://github.com/ongr-io/ElasticsearchDSL/blob/5.x/CHANGELOG.md
|
||||
services:
|
||||
Rector\ElasticSearchDSL\Rector\MethodCall\MigrateFilterToQueryRector: ~
|
||||
Rector\Rector\Class_\RenameClassRector:
|
||||
ONGR\ElasticsearchDSL\Query\BoolQuery: ONGR\ElasticsearchDSL\Query\Compound\BoolQuery
|
||||
ONGR\ElasticsearchDSL\Query\BoostingQuery: ONGR\ElasticsearchDSL\Query\Compound\BoostingQuery
|
||||
ONGR\ElasticsearchDSL\Query\ConstantScoreQuery: ONGR\ElasticsearchDSL\Query\Compound\ConstantScoreQuery
|
||||
ONGR\ElasticsearchDSL\Query\DisMaxQuery: ONGR\ElasticsearchDSL\Query\Compound\DisMaxQuery
|
||||
ONGR\ElasticsearchDSL\Query\FunctionScoreQuery: ONGR\ElasticsearchDSL\Query\Compound\FunctionScoreQuery
|
||||
ONGR\ElasticsearchDSL\Query\IndicesQuery: ONGR\ElasticsearchDSL\Query\Compound\IndicesQuery
|
||||
ONGR\ElasticsearchDSL\Query\MatchQuery: ONGR\ElasticsearchDSL\Query\FullText\MatchQuery
|
||||
ONGR\ElasticsearchDSL\Query\CommonTermsQuery: ONGR\ElasticsearchDSL\Query\FullText\CommonTermsQuery
|
||||
ONGR\ElasticsearchDSL\Query\MatchPhrasePrefixQuery: ONGR\ElasticsearchDSL\Query\FullText\MatchPhrasePrefixQuery
|
||||
ONGR\ElasticsearchDSL\Query\MatchPhraseQuery: ONGR\ElasticsearchDSL\Query\FullText\MatchPhraseQuery
|
||||
ONGR\ElasticsearchDSL\Query\MultiMatchQuery: ONGR\ElasticsearchDSL\Query\FullText\MultiMatchQuery
|
||||
ONGR\ElasticsearchDSL\Query\QueryStringQuery: ONGR\ElasticsearchDSL\Query\FullText\QueryStringQuery
|
||||
ONGR\ElasticsearchDSL\Query\SimpleQueryStringQuery: ONGR\ElasticsearchDSL\Query\FullText\SimpleQueryStringQuery
|
||||
ONGR\ElasticsearchDSL\Query\ExistsQuery: ONGR\ElasticsearchDSL\Query\TermLevel\ExistsQuery
|
||||
ONGR\ElasticsearchDSL\Query\PrefixQuery: ONGR\ElasticsearchDSL\Query\TermLevel\PrefixQuery
|
||||
ONGR\ElasticsearchDSL\Query\RangeQuery: ONGR\ElasticsearchDSL\Query\TermLevel\RangeQuery
|
||||
ONGR\ElasticsearchDSL\Query\TermQuery: ONGR\ElasticsearchDSL\Query\TermLevel\TermQuery
|
||||
ONGR\ElasticsearchDSL\Query\TermsQuery: ONGR\ElasticsearchDSL\Query\TermLevel\TermsQuery
|
||||
ONGR\ElasticsearchDSL\Query\WildcardQuery: ONGR\ElasticsearchDSL\Query\TermLevel\WildcardQuery
|
||||
ONGR\ElasticsearchDSL\Query\FuzzyQuery: ONGR\ElasticsearchDSL\Query\TermLevel\FuzzyQuery
|
||||
ONGR\ElasticsearchDSL\Query\RegexpQuery: ONGR\ElasticsearchDSL\Query\TermLevel\RegexpQuery
|
||||
ONGR\ElasticsearchDSL\Query\TypeQuery: ONGR\ElasticsearchDSL\Query\TermLevel\TypeQuery
|
||||
ONGR\ElasticsearchDSL\Query\GeoBoundingBoxQuery: ONGR\ElasticsearchDSL\Query\Geo\GeoBoundingBoxQuery
|
||||
ONGR\ElasticsearchDSL\Query\GeoDistanceQuery: ONGR\ElasticsearchDSL\Query\Geo\GeoDistanceQuery
|
||||
ONGR\ElasticsearchDSL\Query\GeoDistanceRangeQuery: ONGR\ElasticsearchDSL\Query\Geo\GeoDistanceRangeQuery
|
||||
ONGR\ElasticsearchDSL\Query\GeoPolygonQuery: ONGR\ElasticsearchDSL\Query\Geo\GeoPolygonQuery
|
||||
ONGR\ElasticsearchDSL\Query\GeoShapeQuery: ONGR\ElasticsearchDSL\Query\Geo\GeoShapeQuery
|
||||
ONGR\ElasticsearchDSL\Query\HasChildQuery: ONGR\ElasticsearchDSL\Query\Joining\HasChildQuery
|
||||
ONGR\ElasticsearchDSL\Query\HasParentQuery: ONGR\ElasticsearchDSL\Query\Joining\HasParentQuery
|
||||
ONGR\ElasticsearchDSL\Query\NestedQuery: ONGR\ElasticsearchDSL\Query\Joining\NestedQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanContainingQuery: ONGR\ElasticsearchDSL\Query\Span\SpanContainingQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanFirstQuery: ONGR\ElasticsearchDSL\Query\Span\SpanFirstQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanMultiTermQuery: ONGR\ElasticsearchDSL\Query\Span\SpanMultiTermQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanNearQuery: ONGR\ElasticsearchDSL\Query\Span\SpanNearQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanNotQuery: ONGR\ElasticsearchDSL\Query\Span\SpanNotQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanOrQuery: ONGR\ElasticsearchDSL\Query\Span\SpanOrQuery
|
||||
ONGR\ElasticsearchDSL\Query\SpanWithinQuery: ONGR\ElasticsearchDSL\Query\Span\SpanWithinQuery
|
||||
ONGR\ElasticsearchDSL\Query\MoreLikeThisQuery: ONGR\ElasticsearchDSL\Query\Specialized\MoreLikeThisQuery
|
||||
ONGR\ElasticsearchDSL\Query\ScriptQuery: ONGR\ElasticsearchDSL\Query\Specialized\ScriptQuery
|
||||
ONGR\ElasticsearchDSL\Query\TemplateQuery: ONGR\ElasticsearchDSL\Query\Specialized\TemplateQuery
|
@ -1,4 +1,8 @@
|
||||
# See https://github.com/shopware/shopware/blob/5.6/UPGRADE-5.6.md
|
||||
|
||||
imports:
|
||||
- { resource: '../elasticsearch-dsl/elasticsearch-dsl50.yaml' }
|
||||
|
||||
services:
|
||||
Rector\Shopware\Rector\MethodCall\ReplaceEnlightResponseWithSymfonyResponseRector: ~
|
||||
Rector\Rector\MethodCall\RenameMethodCallRector:
|
||||
|
7
packages/ElasticSearchDSL/config/config.yaml
Normal file
7
packages/ElasticSearchDSL/config/config.yaml
Normal file
@ -0,0 +1,7 @@
|
||||
services:
|
||||
_defaults:
|
||||
public: true
|
||||
autowire: true
|
||||
|
||||
Rector\ElasticSearchDSL\:
|
||||
resource: '../src'
|
@ -0,0 +1,80 @@
|
||||
<?php declare(strict_types=1);
|
||||
|
||||
namespace Rector\ElasticSearchDSL\Rector\MethodCall;
|
||||
|
||||
use PhpParser\Node;
|
||||
use PhpParser\Node\Expr\MethodCall;
|
||||
use PhpParser\NodeDumper;
|
||||
use Rector\Rector\AbstractRector;
|
||||
use Rector\RectorDefinition\CodeSample;
|
||||
use Rector\RectorDefinition\RectorDefinition;
|
||||
/**
|
||||
* @see https://github.com/ongr-io/ElasticsearchDSL/blob/5.x/CHANGELOG.md
|
||||
*/
|
||||
final class MigrateFilterToQueryRector extends AbstractRector
|
||||
{
|
||||
public function getDefinition(): RectorDefinition
|
||||
{
|
||||
return new RectorDefinition('Migrates addFilter to addQuery', [
|
||||
new CodeSample(
|
||||
<<<'CODE_SAMPLE'
|
||||
class SomeClass
|
||||
{
|
||||
public function run()
|
||||
{
|
||||
$search = new \ONGR\ElasticsearchDSL\Search();
|
||||
|
||||
$search->addFilter(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2])
|
||||
);
|
||||
}
|
||||
}
|
||||
CODE_SAMPLE
|
||||
,
|
||||
<<<'CODE_SAMPLE'
|
||||
class SomeClass
|
||||
{
|
||||
public function run()
|
||||
{
|
||||
$search = new \ONGR\ElasticsearchDSL\Search();
|
||||
|
||||
$search->addQuery(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2]),
|
||||
\ONGR\ElasticsearchDSL\Query\Compound\BoolQuery::FILTER
|
||||
);
|
||||
}
|
||||
}
|
||||
CODE_SAMPLE
|
||||
|
||||
)
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return string[]
|
||||
*/
|
||||
public function getNodeTypes(): array
|
||||
{
|
||||
return [MethodCall::class];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param MethodCall $node
|
||||
*/
|
||||
public function refactor(Node $node): ?Node
|
||||
{
|
||||
if (! $this->isType($node, 'ONGR\ElasticsearchDSL\Search')) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (! $this->isName($node, 'addFilter')) {
|
||||
return null;
|
||||
}
|
||||
|
||||
$node->name = new Node\Identifier('addQuery');
|
||||
|
||||
$node->args[1] = new Node\Arg(new Node\Expr\ClassConstFetch(new Node\Name\FullyQualified('ONGR\ElasticsearchDSL\Query\Compound\BoolQuery'), new Node\Identifier('FILTER')));
|
||||
|
||||
return $node;
|
||||
}
|
||||
}
|
@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
namespace Rector\ElasticSearchDSL\Tests\Rector\MethodCall\MigrateFilterToQueryRector\Fixture;
|
||||
|
||||
class SomeClass
|
||||
{
|
||||
public function run()
|
||||
{
|
||||
$search = new \ONGR\ElasticsearchDSL\Search();
|
||||
|
||||
$search->addFilter(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2])
|
||||
);
|
||||
|
||||
$search->addQuery(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2]), \ONGR\ElasticsearchDSL\Query\Compound\BoolQuery::FILTER
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
-----
|
||||
<?php
|
||||
|
||||
namespace Rector\ElasticSearchDSL\Tests\Rector\MethodCall\MigrateFilterToQueryRector\Fixture;
|
||||
|
||||
class SomeClass
|
||||
{
|
||||
public function run()
|
||||
{
|
||||
$search = new \ONGR\ElasticsearchDSL\Search();
|
||||
|
||||
$search->addQuery(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2]), \ONGR\ElasticsearchDSL\Query\Compound\BoolQuery::FILTER
|
||||
);
|
||||
|
||||
$search->addQuery(
|
||||
new \ONGR\ElasticsearchDSL\Query\TermsQuery('categoryIds', [1, 2]), \ONGR\ElasticsearchDSL\Query\Compound\BoolQuery::FILTER
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,21 @@
|
||||
<?php declare(strict_types=1);
|
||||
|
||||
namespace Rector\ElasticSearchDSL\Tests\Rector\MethodCall\MigrateFilterToQueryRector;
|
||||
|
||||
use Rector\ElasticSearchDSL\Rector\MethodCall\MigrateFilterToQueryRector;
|
||||
use Rector\Testing\PHPUnit\AbstractRectorTestCase;
|
||||
|
||||
final class MigrateFilterToQueryRectorTest extends AbstractRectorTestCase
|
||||
{
|
||||
public function test(): void
|
||||
{
|
||||
$this->doTestFiles([
|
||||
__DIR__ . '/Fixture/fixture.php.inc'
|
||||
]);
|
||||
}
|
||||
|
||||
protected function getRectorClass(): string
|
||||
{
|
||||
return MigrateFilterToQueryRector::class;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user