aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt')
-rw-r--r--app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt82
1 files changed, 22 insertions, 60 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt b/app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt
index dc548f12..121fa17d 100644
--- a/app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt
+++ b/app/src/main/java/net/lacolaco/smileessence/entity/EntitySupport.kt
@@ -11,76 +11,38 @@ abstract class EntitySupport(status: twitter4j.EntitySupport) {
open val urlsExpanded: List<String> = extractExpandedUrls(status.urlEntities)
open val symbols: List<String> = extractSymbols(status.symbolEntities)
- private fun extractMentions(entities: Array<UserMentionEntity>?): List<String> {
- val names = ArrayList<String>()
- if (entities != null) {
- for (entity in entities) {
- names.add(entity.screenName)
- }
- }
- return names
- }
+ private fun extractMentions(entities: Array<UserMentionEntity>?) =
+ entities?.map { it.screenName } ?: listOf()
- private fun extractSymbols(entities: Array<SymbolEntity>?): List<String> {
- val names = ArrayList<String>()
- if (entities != null) {
- for (entity in entities) {
- names.add(entity.text)
- }
- }
- return names
- }
+ private fun extractSymbols(entities: Array<SymbolEntity>?) =
+ entities?.map { it.text } ?: listOf()
- private fun extractExpandedUrls(entities: Array<URLEntity>?): List<String> {
- val names = ArrayList<String>()
- if (entities != null) {
- for (entity in entities) {
- names.add(entity.expandedURL)
- }
- }
- return names
- }
+ private fun extractExpandedUrls(entities: Array<URLEntity>?) =
+ entities?.map { it.expandedURL } ?: listOf()
- private fun extractMediaUrls(entities: Array<MediaEntity>?): List<String> {
- val names = ArrayList<String>()
- if (entities != null) {
- for (entity in entities) {
- if ("photo" == entity.type) {
- names.add(entity.mediaURLHttps)
- } else {
- names.add(entity.expandedURL)
+ private fun extractMediaUrls(entities: Array<MediaEntity>?) =
+ entities?.map {
+ when (it.type) {
+ "photo" -> it.mediaURLHttps
+ else -> it.expandedURL
}
- }
- }
- return names
- }
+ } ?: listOf()
- private fun extractHashtags(entities: Array<HashtagEntity>?): List<String> {
- val names = ArrayList<String>()
- if (entities != null) {
- for (entity in entities) {
- names.add(entity.text)
- }
- }
- return names
- }
+ private fun extractHashtags(entities: Array<HashtagEntity>?) =
+ entities?.map { it.text } ?: listOf()
- protected fun extractText(status: twitter4j.Status, expand: Boolean): String {
- return extractText(status, status.text, expand)
- }
+ protected fun extractText(status: twitter4j.Status, expand: Boolean) =
+ extractText(status, status.text, expand)
- protected fun extractText(status: twitter4j.DirectMessage, expand: Boolean): String {
- return extractText(status, status.text, expand)
- }
+ protected fun extractText(status: twitter4j.DirectMessage, expand: Boolean) =
+ extractText(status, status.text, expand)
private fun extractText(status: twitter4j.EntitySupport, text: String, expand: Boolean): String {
val set = TreeSet<twitter4j.URLEntity> { a, b -> a.start - b.start }
- if (status.urlEntities != null) {
- Collections.addAll(set, *status.urlEntities)
- }
- if (status.mediaEntities != null) {
- Collections.addAll(set, *status.mediaEntities)
- }
+ if (status.urlEntities != null)
+ set += status.urlEntities
+ if (status.mediaEntities != null)
+ set += status.mediaEntities
var t = text
for (entity in set) {