0
0
Fork 0

Add entity cache (#7271)

* Add entity cache

Use a caching layer for mentions and custom emojis that are
dynamically extracted from text.

Reduce duplicate text extractions

* Fix code style issue
This commit is contained in:
Eugen Rochko 2018-04-27 01:38:10 +02:00 committed by GitHub
parent 63553c6b5c
commit a872392cd9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 48 additions and 10 deletions

View file

@ -52,12 +52,8 @@ class Formatter
end
def simplified_format(account, **options)
html = if account.local?
linkify(account.note)
else
reformat(account.note)
end
html = encode_custom_emojis(html, CustomEmoji.from_text(account.note, account.domain)) if options[:custom_emojify]
html = account.local? ? linkify(account.note) : reformat(account.note)
html = encode_custom_emojis(html, account.emojis) if options[:custom_emojify]
html.html_safe # rubocop:disable Rails/OutputSafety
end
@ -211,7 +207,7 @@ class Formatter
username, domain = acct.split('@')
domain = nil if TagManager.instance.local_domain?(domain)
account = Account.find_remote(username, domain)
account = EntityCache.instance.mention(username, domain)
account ? mention_html(account) : "@#{acct}"
end