]> git.immae.eu Git - github/wallabag/wallabag.git/blob - src/Wallabag/CoreBundle/Resources/config/services.yml
183b6690c271bfbd223cadb447ae88cd52a4b6b2
[github/wallabag/wallabag.git] / src / Wallabag / CoreBundle / Resources / config / services.yml
1 services:
2 wallabag_core.helper.detect_active_theme:
3 class: Wallabag\CoreBundle\Helper\DetectActiveTheme
4 arguments:
5 - "@security.token_storage"
6 - "%wallabag_core.theme%"
7
8 # custom form type
9 wallabag_core.form.type.config:
10 class: Wallabag\CoreBundle\Form\Type\ConfigType
11 arguments:
12 - "%liip_theme.themes%"
13 - "%wallabag_core.languages%"
14 tags:
15 - { name: form.type }
16
17 wallabag_core.filter.type.entry:
18 class: Wallabag\CoreBundle\Form\Type\EntryFilterType
19 arguments:
20 - "@wallabag_core.entry_repository"
21 - "@security.token_storage"
22 tags:
23 - { name: form.type }
24
25 wallabag_core.param_converter.username_rsstoken_converter:
26 class: Wallabag\CoreBundle\ParamConverter\UsernameRssTokenConverter
27 tags:
28 - { name: request.param_converter, converter: username_rsstoken_converter }
29 arguments:
30 - "@doctrine"
31
32 wallabag_core.subscriber.table_prefix:
33 class: Wallabag\CoreBundle\Event\Subscriber\TablePrefixSubscriber
34 arguments:
35 - "%database_table_prefix%"
36 tags:
37 - { name: doctrine.event_subscriber }
38
39 wallabag_core.graby:
40 class: Graby\Graby
41 arguments:
42 -
43 error_message: '%wallabag_core.fetching_error_message%'
44 error_message_title: '%wallabag_core.fetching_error_message_title%'
45 - "@wallabag_core.guzzle.http_client"
46 - "@wallabag_core.graby.config_builder"
47 calls:
48 - [ setLogger, [ "@logger" ] ]
49 tags:
50 - { name: monolog.logger, channel: graby }
51
52 wallabag_core.graby.config_builder:
53 class: Graby\SiteConfig\ConfigBuilder
54 arguments:
55 - {}
56 - "@logger"
57
58 wallabag_core.guzzle.http_client:
59 class: GuzzleHttp\ClientInterface
60 factory: ["@wallabag_core.guzzle.http_client_factory", buildHttpClient]
61
62 wallabag_core.guzzle_authenticator.config_builder:
63 class: Wallabag\CoreBundle\GuzzleSiteAuthenticator\GrabySiteConfigBuilder
64 arguments:
65 - "@wallabag_core.graby.config_builder"
66 - "@security.token_storage"
67 - "@wallabag_core.site_credential_repository"
68 - '@logger'
69 tags:
70 - { name: monolog.logger, channel: graby }
71
72 # service alias override
73 bd_guzzle_site_authenticator.site_config_builder:
74 alias: wallabag_core.guzzle_authenticator.config_builder
75
76 wallabag_core.guzzle.http_client_factory:
77 class: Wallabag\CoreBundle\Helper\HttpClientFactory
78 arguments:
79 - "@wallabag_core.guzzle.cookie_jar"
80 - '@=service(''craue_config'').get(''restricted_access'')'
81 - '@logger'
82 calls:
83 - ["addSubscriber", ["@bd_guzzle_site_authenticator.authenticator_subscriber"]]
84
85 wallabag_core.guzzle.cookie_jar:
86 class: GuzzleHttp\Cookie\FileCookieJar
87 arguments: ["%kernel.cache_dir%/cookiejar.json"]
88
89 wallabag_core.content_proxy:
90 class: Wallabag\CoreBundle\Helper\ContentProxy
91 arguments:
92 - "@wallabag_core.graby"
93 - "@wallabag_core.rule_based_tagger"
94 - "@validator"
95 - "@logger"
96 - '%wallabag_core.fetching_error_message%'
97
98 wallabag_core.tags_assigner:
99 class: Wallabag\CoreBundle\Helper\TagsAssigner
100 arguments:
101 - "@wallabag_core.tag_repository"
102
103 wallabag_core.rule_based_tagger:
104 class: Wallabag\CoreBundle\Helper\RuleBasedTagger
105 arguments:
106 - "@rulerz"
107 - "@wallabag_core.tag_repository"
108 - "@wallabag_core.entry_repository"
109 - "@logger"
110
111 # repository as a service
112 wallabag_core.entry_repository:
113 class: Wallabag\CoreBundle\Repository\EntryRepository
114 factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
115 arguments:
116 - WallabagCoreBundle:Entry
117
118 wallabag_core.tag_repository:
119 class: Wallabag\CoreBundle\Repository\TagRepository
120 factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
121 arguments:
122 - WallabagCoreBundle:Tag
123
124 wallabag_core.site_credential_repository:
125 class: Wallabag\CoreBundle\Repository\SiteCredentialRepository
126 factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
127 arguments:
128 - WallabagCoreBundle:SiteCredential
129 calls:
130 - [ setCrypto, [ "@wallabag_core.helper.crypto_proxy" ] ]
131
132 wallabag_core.notification_repository:
133 class: Wallabag\CoreBundle\Repository\NotificationRepository
134 factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
135 arguments:
136 - WallabagCoreBundle:Notification
137
138 wallabag_core.helper.entries_export:
139 class: Wallabag\CoreBundle\Helper\EntriesExport
140 arguments:
141 - '%domain_name%'
142 - src/Wallabag/CoreBundle/Resources/public/themes/_global/img/appicon/apple-touch-icon-152.png
143
144 wallabag.operator.array.matches:
145 class: Wallabag\CoreBundle\Operator\PHP\Matches
146 tags:
147 - { name: rulerz.operator, target: native, operator: matches }
148
149 wallabag.operator.doctrine.matches:
150 class: Wallabag\CoreBundle\Operator\Doctrine\Matches
151 tags:
152 - { name: rulerz.operator, target: doctrine, operator: matches, inline: true }
153
154 wallabag.operator.array.notmatches:
155 class: Wallabag\CoreBundle\Operator\PHP\NotMatches
156 tags:
157 - { name: rulerz.operator, target: native, operator: notmatches }
158
159 wallabag.operator.doctrine.notmatches:
160 class: Wallabag\CoreBundle\Operator\Doctrine\NotMatches
161 tags:
162 - { name: rulerz.operator, target: doctrine, operator: notmatches, inline: true }
163
164 wallabag_core.helper.redirect:
165 class: Wallabag\CoreBundle\Helper\Redirect
166 arguments:
167 - "@router"
168 - "@security.token_storage"
169
170 wallabag_core.helper.prepare_pager_for_entries:
171 class: Wallabag\CoreBundle\Helper\PreparePagerForEntries
172 arguments:
173 - "@security.token_storage"
174 - "@router"
175
176 wallabag_core.redis.client:
177 class: Predis\Client
178 arguments:
179 -
180 scheme: '%redis_scheme%'
181 host: '%redis_host%'
182 port: '%redis_port%'
183 path: '%redis_path%'
184 password: '%redis_password%'
185
186 wallabag_core.exception_controller:
187 class: Wallabag\CoreBundle\Controller\ExceptionController
188 arguments:
189 - '@twig'
190 - '%kernel.debug%'
191
192 wallabag_core.subscriber.sqlite_cascade_delete:
193 class: Wallabag\CoreBundle\Event\Subscriber\SQLiteCascadeDeleteSubscriber
194 arguments:
195 - "@doctrine"
196 tags:
197 - { name: doctrine.event_subscriber }
198
199 wallabag_core.subscriber.download_images:
200 class: Wallabag\CoreBundle\Event\Subscriber\DownloadImagesSubscriber
201 arguments:
202 - "@doctrine.orm.default_entity_manager"
203 - "@wallabag_core.entry.download_images"
204 - '@=service(''craue_config'').get(''download_images_enabled'')'
205 - "@logger"
206 tags:
207 - { name: kernel.event_subscriber }
208
209 wallabag_core.entry.download_images:
210 class: Wallabag\CoreBundle\Helper\DownloadImages
211 arguments:
212 - "@wallabag_core.entry.download_images.client"
213 - "%kernel.root_dir%/../web/assets/images"
214 - '%domain_name%'
215 - "@logger"
216
217 wallabag_core.entry.download_images.client:
218 class: GuzzleHttp\Client
219
220 wallabag_core.helper.crypto_proxy:
221 class: Wallabag\CoreBundle\Helper\CryptoProxy
222 arguments:
223 - "%wallabag_core.site_credentials.encryption_key_path%"
224 - "@logger"