wallabag/src/Wallabag/CoreBundle/Resources/config/services.yml

203 lines
7 KiB
YAML

services:
wallabag_core.helper.detect_active_theme:
class: Wallabag\CoreBundle\Helper\DetectActiveTheme
arguments:
- "@security.token_storage"
- "%wallabag_core.theme%"
# custom form type
wallabag_core.form.type.config:
class: Wallabag\CoreBundle\Form\Type\ConfigType
arguments:
- "%liip_theme.themes%"
- "%wallabag_core.languages%"
tags:
- { name: form.type }
wallabag_core.filter.type.entry:
class: Wallabag\CoreBundle\Form\Type\EntryFilterType
arguments:
- "@wallabag_core.entry_repository"
- "@security.token_storage"
tags:
- { name: form.type }
wallabag_core.param_converter.username_rsstoken_converter:
class: Wallabag\CoreBundle\ParamConverter\UsernameRssTokenConverter
tags:
- { name: request.param_converter, converter: username_rsstoken_converter }
arguments:
- "@doctrine"
wallabag_core.subscriber.table_prefix:
class: Wallabag\CoreBundle\Event\Subscriber\TablePrefixSubscriber
arguments:
- "%database_table_prefix%"
tags:
- { name: doctrine.event_subscriber }
wallabag_core.graby:
class: Graby\Graby
arguments:
-
error_message: '%wallabag_core.fetching_error_message%'
error_message_title: '%wallabag_core.fetching_error_message_title%'
- "@wallabag_core.guzzle.http_client"
- "@wallabag_core.graby.config_builder"
calls:
- [ setLogger, [ "@logger" ] ]
tags:
- { name: monolog.logger, channel: graby }
wallabag_core.graby.config_builder:
class: Graby\SiteConfig\ConfigBuilder
arguments:
- {}
- "@logger"
wallabag_core.guzzle.http_client:
class: GuzzleHttp\ClientInterface
factory: ["@wallabag_core.guzzle.http_client_factory", buildHttpClient]
wallabag_core.guzzle_authenticator.config_builder:
class: Wallabag\CoreBundle\GuzzleSiteAuthenticator\GrabySiteConfigBuilder
arguments:
- "@wallabag_core.graby.config_builder"
- "%sites_credentials%"
- '@logger'
tags:
- { name: monolog.logger, channel: graby }
# service alias override
bd_guzzle_site_authenticator.site_config_builder:
alias: wallabag_core.guzzle_authenticator.config_builder
wallabag_core.guzzle.http_client_factory:
class: Wallabag\CoreBundle\Helper\HttpClientFactory
arguments:
- "@wallabag_core.guzzle.cookie_jar"
- '@=service(''craue_config'').get(''restricted_access'')'
- '@logger'
calls:
- ["addSubscriber", ["@bd_guzzle_site_authenticator.authenticator_subscriber"]]
wallabag_core.guzzle.cookie_jar:
class: GuzzleHttp\Cookie\FileCookieJar
arguments: ["%kernel.cache_dir%/cookiejar.json"]
wallabag_core.content_proxy:
class: Wallabag\CoreBundle\Helper\ContentProxy
arguments:
- "@wallabag_core.graby"
- "@wallabag_core.rule_based_tagger"
- "@logger"
- '%wallabag_core.fetching_error_message%'
wallabag_core.tags_assigner:
class: Wallabag\CoreBundle\Helper\TagsAssigner
arguments:
- "@wallabag_core.tag_repository"
wallabag_core.rule_based_tagger:
class: Wallabag\CoreBundle\Helper\RuleBasedTagger
arguments:
- "@rulerz"
- "@wallabag_core.tag_repository"
- "@wallabag_core.entry_repository"
- "@logger"
# repository as a service
wallabag_core.entry_repository:
class: Wallabag\CoreBundle\Repository\EntryRepository
factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
arguments:
- WallabagCoreBundle:Entry
wallabag_core.tag_repository:
class: Wallabag\CoreBundle\Repository\TagRepository
factory: [ "@doctrine.orm.default_entity_manager", getRepository ]
arguments:
- WallabagCoreBundle:Tag
wallabag_core.helper.entries_export:
class: Wallabag\CoreBundle\Helper\EntriesExport
arguments:
- '%domain_name%'
- src/Wallabag/CoreBundle/Resources/public/themes/_global/img/appicon/apple-touch-icon-152.png
wallabag.operator.array.matches:
class: Wallabag\CoreBundle\Operator\PHP\Matches
tags:
- { name: rulerz.operator, target: native, operator: matches }
wallabag.operator.doctrine.matches:
class: Wallabag\CoreBundle\Operator\Doctrine\Matches
tags:
- { name: rulerz.operator, target: doctrine, operator: matches, inline: true }
wallabag.operator.array.notmatches:
class: Wallabag\CoreBundle\Operator\PHP\NotMatches
tags:
- { name: rulerz.operator, target: native, operator: notmatches }
wallabag.operator.doctrine.notmatches:
class: Wallabag\CoreBundle\Operator\Doctrine\NotMatches
tags:
- { name: rulerz.operator, target: doctrine, operator: notmatches, inline: true }
wallabag_core.helper.redirect:
class: Wallabag\CoreBundle\Helper\Redirect
arguments:
- "@router"
- "@security.token_storage"
wallabag_core.helper.prepare_pager_for_entries:
class: Wallabag\CoreBundle\Helper\PreparePagerForEntries
arguments:
- "@security.token_storage"
- "@router"
wallabag_core.redis.client:
class: Predis\Client
arguments:
-
scheme: '%redis_scheme%'
host: '%redis_host%'
port: '%redis_port%'
path: '%redis_path%'
password: '%redis_password%'
wallabag_core.exception_controller:
class: Wallabag\CoreBundle\Controller\ExceptionController
arguments:
- '@twig'
- '%kernel.debug%'
wallabag_core.subscriber.sqlite_cascade_delete:
class: Wallabag\CoreBundle\Event\Subscriber\SQLiteCascadeDeleteSubscriber
arguments:
- "@doctrine"
tags:
- { name: doctrine.event_subscriber }
wallabag_core.subscriber.download_images:
class: Wallabag\CoreBundle\Event\Subscriber\DownloadImagesSubscriber
arguments:
- "@doctrine.orm.default_entity_manager"
- "@wallabag_core.entry.download_images"
- '@=service(''craue_config'').get(''download_images_enabled'')'
- "@logger"
tags:
- { name: kernel.event_subscriber }
wallabag_core.entry.download_images:
class: Wallabag\CoreBundle\Helper\DownloadImages
arguments:
- "@wallabag_core.entry.download_images.client"
- "%kernel.root_dir%/../web/assets/images"
- '@=service(''craue_config'').get(''wallabag_url'')'
- "@logger"
wallabag_core.entry.download_images.client:
class: GuzzleHttp\Client