|
31 | 31 | use FD\LogViewer\Service\Matcher\ChannelTermMatcher; |
32 | 32 | use FD\LogViewer\Service\Matcher\DateAfterTermMatcher; |
33 | 33 | use FD\LogViewer\Service\Matcher\DateBeforeTermMatcher; |
| 34 | +use FD\LogViewer\Service\Matcher\KeyValueMatcher; |
34 | 35 | use FD\LogViewer\Service\Matcher\LogRecordMatcher; |
35 | 36 | use FD\LogViewer\Service\Matcher\SeverityTermMatcher; |
36 | 37 | use FD\LogViewer\Service\Matcher\WordTermMatcher; |
37 | 38 | use FD\LogViewer\Service\Parser\DateParser; |
38 | 39 | use FD\LogViewer\Service\Parser\ExpressionParser; |
| 40 | +use FD\LogViewer\Service\Parser\KeyValueParser; |
39 | 41 | use FD\LogViewer\Service\Parser\QuotedStringParser; |
40 | 42 | use FD\LogViewer\Service\Parser\StringParser; |
41 | 43 | use FD\LogViewer\Service\Parser\TermParser; |
|
46 | 48 | use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator; |
47 | 49 |
|
48 | 50 | use function Symfony\Component\DependencyInjection\Loader\Configurator\inline_service; |
| 51 | +use function Symfony\Component\DependencyInjection\Loader\Configurator\service; |
49 | 52 | use function Symfony\Component\DependencyInjection\Loader\Configurator\tagged_iterator; |
50 | 53 |
|
51 | 54 | return static function (ContainerConfigurator $container): void { |
|
72 | 75 | $services->set(JsonManifestAssetLoader::class) |
73 | 76 | ->arg('$manifestPath', '%kernel.project_dir%/public/bundles/fdlogviewer/.vite/manifest.json'); |
74 | 77 |
|
| 78 | + $services->set(StringParser::class) |
| 79 | + ->arg('$quotedStringParser', inline_service(QuotedStringParser::class)) |
| 80 | + ->arg('$wordParser', inline_service(WordParser::class)); |
75 | 81 | $services->set(ExpressionParser::class) |
76 | 82 | ->arg( |
77 | 83 | '$termParser', |
78 | 84 | inline_service(TermParser::class) |
79 | | - ->arg( |
80 | | - '$stringParser', |
81 | | - inline_service(StringParser::class) |
82 | | - ->arg('$quotedStringParser', inline_service(QuotedStringParser::class)) |
83 | | - ->arg('$wordParser', inline_service(WordParser::class)) |
| 85 | + ->args( |
| 86 | + [ |
| 87 | + service(StringParser::class), |
| 88 | + inline_service(DateParser::class), |
| 89 | + inline_service(KeyValueParser::class)->args([service(StringParser::class)]) |
| 90 | + ] |
84 | 91 | ) |
85 | | - ->arg('$dateParser', inline_service(DateParser::class)) |
86 | 92 | ); |
87 | 93 |
|
88 | 94 | $services->set(FinderFactory::class); |
|
110 | 116 | $services->set(DateAfterTermMatcher::class)->tag('fd.symfony.log.viewer.term_matcher'); |
111 | 117 | $services->set(SeverityTermMatcher::class)->tag('fd.symfony.log.viewer.term_matcher'); |
112 | 118 | $services->set(ChannelTermMatcher::class)->tag('fd.symfony.log.viewer.term_matcher'); |
| 119 | + $services->set(KeyValueMatcher::class)->tag('fd.symfony.log.viewer.term_matcher'); |
113 | 120 | $services->set(WordTermMatcher::class)->tag('fd.symfony.log.viewer.term_matcher'); |
114 | 121 | $services->set(LogRecordMatcher::class)->arg('$termMatchers', tagged_iterator('fd.symfony.log.viewer.term_matcher')); |
115 | 122 | }; |
0 commit comments