From 506d2d45fc9b39e40e6784b0ece54de638884c98 Mon Sep 17 00:00:00 2001 From: usbharu <64310155+usbharu@users.noreply.github.com> Date: Mon, 27 Feb 2023 17:16:37 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20NotImpl=E7=B3=BB=E3=81=AEAPI=E3=82=92?= =?UTF-8?q?=E5=AE=9A=E7=BE=A9=E3=81=AE=E3=81=BF=E3=81=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dev/usbharu/multim/api/AccountApi.kt | 84 ++++------- .../kotlin/dev/usbharu/multim/api/EmojiApi.kt | 18 +-- .../kotlin/dev/usbharu/multim/api/IApi.kt | 17 +-- .../dev/usbharu/multim/api/StatusApi.kt | 135 +++++++----------- .../usbharu/multim/api/StringIdAccountApi.kt | 82 +---------- .../usbharu/multim/api/StringIdStatusApi.kt | 88 +----------- .../dev/usbharu/multim/api/TimelineApi.kt | 45 +++--- 7 files changed, 124 insertions(+), 345 deletions(-) diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/AccountApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/AccountApi.kt index 966d1e9..aff0356 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/AccountApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/AccountApi.kt @@ -14,94 +14,66 @@ interface AccountApi { account: Account, since: StatusId? = null, until: StatusId? = null - ): Result,MultiMError> - - val FOLLOW: String - get() = "account/follow" - - suspend fun follow(account: Account): Result - - val UNFOLLOW: String - get() = "account/unfollow" - suspend fun unfollow(account: Account): Result - - val PROFILE: String - get() = "account/profile" - suspend fun profile(account: Account): Result - - val STATUSES:String - get() = "account/statuses" - suspend fun statuses(account: Account, includeRepost: Boolean = false): Result,MultiMError> - - val RELEATIONSHIPS:String - get() = "account/relationships" - suspend fun relationships(myself: Account, other: Account): Result - - val REQUEST_CANCEL:String - get() = "account/requestCancel" - suspend fun requestCancel(account: Account): Result - - val REQUEST_ACCEPT:String - get() = "account/requestAccept" - suspend fun requestAccept(account: Account): Result - val REQUEST_REJECT:String - get() = "account/requestReject" - suspend fun requestReject(account: Account): Result -} - -object NotImplAccountApi : AccountApi { - override suspend fun userTimeline( - account: Account, - since: StatusId?, - until: StatusId? - ): Result, MultiMError> { + ): Result,MultiMError>{ Logger.debug("Account Api","Not impl account api. userTimeline.") return Err(MultiMError("userTimeline not implements", null, ErrorType.NOT_IMPL)) } - override suspend fun follow(account: Account): Result { + val FOLLOW: String + get() = "account/follow" + + suspend fun follow(account: Account): Result{ Logger.debug("Account Api","Not impl account api. follow.") return Err(MultiMError("follow not implements", null, ErrorType.NOT_IMPL)) } - override suspend fun unfollow(account: Account): Result { + val UNFOLLOW: String + get() = "account/unfollow" + suspend fun unfollow(account: Account): Result{ Logger.debug("Account Api","Not impl account api. unfollow.") return Err(MultiMError("unfollow not implements",null,ErrorType.NOT_IMPL)) } - override suspend fun profile(account: Account): Result { + val PROFILE: String + get() = "account/profile" + suspend fun profile(account: Account): Result{ Logger.debug("Account Api","Not impl account api. profile.") return Err(MultiMError("profile not implements",null,ErrorType.NOT_IMPL)) } - override suspend fun statuses( - account: Account, - includeRepost: Boolean - ): Result, MultiMError> { + val STATUSES:String + get() = "account/statuses" + suspend fun statuses(account: Account, includeRepost: Boolean = false): Result,MultiMError>{ Logger.debug("Account Api","Not impl account api. statuses.") return Err(MultiMError("statuses not implements",null,ErrorType.NOT_IMPL)) } - override suspend fun relationships( - myself: Account, - other: Account - ): Result { + val RELEATIONSHIPS:String + get() = "account/relationships" + suspend fun relationships(myself: Account, other: Account): Result{ Logger.debug("Account Api","Not impl account api. relationships.") return Err(MultiMError("relationships not implements",null,ErrorType.NOT_IMPL)) } - override suspend fun requestCancel(account: Account): Result { + val REQUEST_CANCEL:String + get() = "account/requestCancel" + suspend fun requestCancel(account: Account): Result{ Logger.debug("Account Api","Not impl account api. requestCancel.") return Err(MultiMError("requestCancel not implements",null,ErrorType.NOT_IMPL)) } - override suspend fun requestAccept(account: Account): Result { + val REQUEST_ACCEPT:String + get() = "account/requestAccept" + suspend fun requestAccept(account: Account): Result{ Logger.debug("Account Api","Not impl account api. requestAccept.") return Err(MultiMError("requestAccept not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun requestReject(account: Account): Result { + val REQUEST_REJECT:String + get() = "account/requestReject" + suspend fun requestReject(account: Account): Result{ Logger.debug("Account Api","Not impl account api. requestReject.") return Err(MultiMError("requestReject not implements",null,ErrorType.NOT_IMPL)) } } + +object NotImplAccountApi : AccountApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/EmojiApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/EmojiApi.kt index 836192e..acc46b9 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/EmojiApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/EmojiApi.kt @@ -10,22 +10,18 @@ import dev.usbharu.multim.model.Emoji interface EmojiApi { val GET:String get() = "emoji/get" - suspend fun get(name:String):MultiMResult - - val FIND_BY_NAME:String - get() = "emoji/findByName" - - suspend fun findByName(name:String):MultiMResult> -} - -object NotImplEmojiApi : EmojiApi { - override suspend fun get(name: String): MultiMResult { + suspend fun get(name:String):MultiMResult{ Logger.debug("Emoji Api","Not impl emoji api get $name") return Err(MultiMError("emoji get not implements",null, ErrorType.NOT_IMPL)) } - override suspend fun findByName(name: String): MultiMResult> { + val FIND_BY_NAME:String + get() = "emoji/findByName" + + suspend fun findByName(name:String):MultiMResult>{ Logger.debug("Emoji Api","Not impl emoji api findByName $name") return Err(MultiMError("emoji findByName not implements",null,ErrorType.NOT_IMPL)) } } + +object NotImplEmojiApi : EmojiApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/IApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/IApi.kt index abddf29..4cd6173 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/IApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/IApi.kt @@ -12,23 +12,18 @@ interface IApi { val PROFILE: String get() = "i/profile" - suspend fun profile(): MultiMResult - val STATUSES: String - get() = "i/statuses" - - suspend fun statuses(): MultiMResult> - -} - -object NotImplIApi : IApi { - override suspend fun profile(): MultiMResult { + suspend fun profile(): MultiMResult { Logger.debug("I Api", "Not impl i api. profile") return Err(MultiMError("profile not implements", null, ErrorType.NOT_IMPL)) } + val STATUSES: String + get() = "i/statuses" - override suspend fun statuses(): MultiMResult> { + suspend fun statuses(): MultiMResult> { Logger.debug("I Api", "Not impl i api. statuses") return Err(MultiMError("profile not implements", null, ErrorType.NOT_IMPL)) } } + +object NotImplIApi : IApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/StatusApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/StatusApi.kt index fd3c921..a494326 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/StatusApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/StatusApi.kt @@ -14,17 +14,29 @@ import kotlinx.datetime.toLocalDateTime interface StatusApi { val POST:String get() = "status/post" - suspend fun post(status: StatusForPost): Result + suspend fun post(status: StatusForPost): Result{ + Logger.debug("Status Api","Not impl status api post") + return Err(MultiMError("post not implements",null, ErrorType.NOT_IMPL)) + } val DELETE:String get() = "status/delete" - suspend fun delete(id: StatusId): Result + suspend fun delete(id: StatusId): Result{ + Logger.debug("Status Api","Not impl status api delete") + return Err(MultiMError("delete not implements",null,ErrorType.NOT_IMPL)) + } val FIND_BY_ID:String get() = "status/findById" - suspend fun findById(id: StatusId): Result + suspend fun findById(id: StatusId): Result { + Logger.debug("Status Api","Not impl status api findById") + return Err(MultiMError("findById not implements",null,ErrorType.NOT_IMPL)) + } val ADD_REACTION:String get() = "status/addReaction" - suspend fun addReaction(id: StatusId, reaction: Reaction): Result + suspend fun addReaction(id: StatusId, reaction: Reaction): Result { + Logger.debug("Status Api","Not impl status api addReaction") + return Err(MultiMError("addReaction not implements",null,ErrorType.NOT_IMPL)) + } val REMOVE_REACTION:String get() = "status/remvoeReaction" @@ -35,109 +47,68 @@ interface StatusApi { * @param reaction 実装によって挙動が変わります。nullでも * @return */ - suspend fun removeReaction(id: StatusId, reaction: Reaction?): Result - val REACTIONS:String - get() = "status/reactions" - suspend fun reactions(id: StatusId): Result,MultiMError> - val REPLIES:String - get() = "status/replies" - suspend fun replies(id: StatusId): Result,MultiMError> - val REPOST:String - get() = "status/repost" - suspend fun repost(id: StatusId): Result - val UN_REPOST:String - get() = "status/unRepost" - suspend fun unRepost(id: StatusId): Result - val REPLY_TO:String - get() = "status/replyTo" - suspend fun replyTo(id: StatusId, status: StatusForPost): Result - val ADD_TO_BOOKMARKS:String - get() = "status/addBookMarks" - suspend fun addToBookmarks(id: StatusId): Result - val REMOVE_FROM_BOOKMARKS:String - get() = "status/removeFromBookmarks" - suspend fun removeFromBookmarks(id: StatusId): Result - val GET_PREVIOUS_AND_NEXT:String - get() = "status/getPreviousAndNext" - suspend fun getPreviousAndNext(id: StatusId): Result - - fun getUniqueId(status: Status):Int{ - val localDateTime = status.createdAt.toLocalDateTime(TimeZone.UTC) - val date:String = - "${localDateTime.year}${localDateTime.monthNumber}${localDateTime.dayOfMonth}${localDateTime.hour}${localDateTime.minute}${localDateTime.second}" - return UniqueId.hashAlgorithm.hash32x86( - (status.content.text + status.account.accountName + date).encodeToByteArray() - ).toInt() - } -} - - -object NotImplStatusApi : StatusApi { - override suspend fun post(status: StatusForPost): Result { - Logger.debug("Status Api","Not impl status api post") - return Err(MultiMError("post not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun delete(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api delete") - return Err(MultiMError("delete not implements",null,ErrorType.NOT_IMPL)) - } - - override suspend fun findById(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api findById") - return Err(MultiMError("findById not implements",null,ErrorType.NOT_IMPL)) - } - - override suspend fun addReaction(id: StatusId, reaction: Reaction): Result { - Logger.debug("Status Api","Not impl status api addReaction") - return Err(MultiMError("addReaction not implements",null,ErrorType.NOT_IMPL)) - } - - override suspend fun removeReaction( - id: StatusId, - reaction: Reaction? - ): Result { + suspend fun removeReaction(id: StatusId, reaction: Reaction?): Result { Logger.debug("Status Api","Not impl status api removeReaction") return Err(MultiMError("removeReaction not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun reactions(id: StatusId): Result, MultiMError> { + val REACTIONS:String + get() = "status/reactions" + suspend fun reactions(id: StatusId): Result,MultiMError>{ Logger.debug("Status Api","Not impl status api reactions") return Err(MultiMError("reactions not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun replies(id: StatusId): Result, MultiMError> { + val REPLIES:String + get() = "status/replies" + suspend fun replies(id: StatusId): Result,MultiMError>{ Logger.debug("Status Api","Not impl status api replies") return Err(MultiMError("replies not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun repost(id: StatusId): Result { + val REPOST:String + get() = "status/repost" + suspend fun repost(id: StatusId): Result { Logger.debug("Status Api","Not impl status api repost") return Err(MultiMError("repost not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun unRepost(id: StatusId): Result { + val UN_REPOST:String + get() = "status/unRepost" + suspend fun unRepost(id: StatusId): Result{ Logger.debug("Status Api","Not impl status api unRepost") return Err(MultiMError("unRepost not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun replyTo(id: StatusId, status: StatusForPost): Result { + val REPLY_TO:String + get() = "status/replyTo" + suspend fun replyTo(id: StatusId, status: StatusForPost): Result { Logger.debug("Status Api","Not impl status api replyTo") return Err(MultiMError("replyTo not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun addToBookmarks(id: StatusId): Result { + val ADD_TO_BOOKMARKS:String + get() = "status/addBookMarks" + suspend fun addToBookmarks(id: StatusId): Result{ Logger.debug("Status Api","Not impl status api addToBookmarks") return Err(MultiMError("addToBookmarks not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun removeFromBookmarks(id: StatusId): Result { + val REMOVE_FROM_BOOKMARKS:String + get() = "status/removeFromBookmarks" + suspend fun removeFromBookmarks(id: StatusId): Result{ Logger.debug("Status Api","Not impl status api removeFromBookmarks") return Err(MultiMError("removeFromBookmarks not implements",null,ErrorType.NOT_IMPL)) } - - override suspend fun getPreviousAndNext(id: StatusId): Result { + val GET_PREVIOUS_AND_NEXT:String + get() = "status/getPreviousAndNext" + suspend fun getPreviousAndNext(id: StatusId): Result{ Logger.debug("Status Api","Not impl status api getPreviousAndNext") return Err(MultiMError("getPreviousAndNext not implements",null,ErrorType.NOT_IMPL)) } + + fun getUniqueId(status: Status):Int{ + val localDateTime = status.createdAt.toLocalDateTime(TimeZone.UTC) + val date:String = + "${localDateTime.year}${localDateTime.monthNumber}${localDateTime.dayOfMonth}${localDateTime.hour}${localDateTime.minute}${localDateTime.second}" + return UniqueId.hashAlgorithm.hash32x86( + (status.content.text + status.account.accountName + date).encodeToByteArray() + ).toInt() + } } + + +object NotImplStatusApi : StatusApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/StringIdAccountApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/StringIdAccountApi.kt index 8c83ed2..e42dce1 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/StringIdAccountApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/StringIdAccountApi.kt @@ -13,91 +13,23 @@ interface StringIdAccountApi : AccountApi { accountId: String, since: String? = null, until: String? = null, - ): MultiMResult> - - suspend fun statuses( - accountId: String, - includeRepost: Boolean = false - ): MultiMResult> - - suspend fun profile(accountId: String): MultiMResult -} - -object NotImplStringIdAccountApi : StringIdAccountApi { - override suspend fun userTimeline( - accountId: String, - since: String?, - until: String? - ): MultiMResult> { + ): MultiMResult>{ Logger.debug("Account Api","Not impl account api. userTimeline by id.") return Err(MultiMError("userTimeline by id not implements", null, ErrorType.NOT_IMPL)) } - override suspend fun userTimeline( - account: Account, - since: StatusId?, - until: StatusId? - ): Result, MultiMError> { - Logger.debug("Account Api","Not impl account api. userTimeline.") - return Err(MultiMError("userTimeline not implements", null, ErrorType.NOT_IMPL)) - } - - override suspend fun statuses( + suspend fun statuses( accountId: String, - includeRepost: Boolean - ): MultiMResult> { + includeRepost: Boolean = false + ): MultiMResult>{ Logger.debug("Account Api","Not impl account api. statuses by id.") return Err(MultiMError("statuses by id not implements",null, ErrorType.NOT_IMPL)) } - override suspend fun follow(account: Account): Result { - Logger.debug("Account Api","Not impl account api. follow.") - return Err(MultiMError("follow not implements", null, ErrorType.NOT_IMPL)) - } - - override suspend fun unfollow(account: Account): Result { - Logger.debug("Account Api","Not impl account api. unfollow.") - return Err(MultiMError("unfollow not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun profile(account: Account): Result { - Logger.debug("Account Api","Not impl account api. profile.") - return Err(MultiMError("profile not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun statuses( - account: Account, - includeRepost: Boolean - ): Result, MultiMError> { - Logger.debug("Account Api","Not impl account api. statuses.") - return Err(MultiMError("statuses not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun profile(accountId: String): MultiMResult { + suspend fun profile(accountId: String): MultiMResult { Logger.debug("Account Api","Not impl account api. profile by id.") return Err(MultiMError("profile by id not implements",null, ErrorType.NOT_IMPL)) } - - override suspend fun relationships( - myself: Account, - other: Account - ): Result { - Logger.debug("Account Api","Not impl account api. relationships.") - return Err(MultiMError("relationships not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun requestCancel(account: Account): Result { - Logger.debug("Account Api","Not impl account api. requestCancel.") - return Err(MultiMError("requestCancel not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun requestAccept(account: Account): Result { - Logger.debug("Account Api","Not impl account api. requestAccept.") - return Err(MultiMError("requestAccept not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun requestReject(account: Account): Result { - Logger.debug("Account Api","Not impl account api. requestReject.") - return Err(MultiMError("requestReject not implements",null, ErrorType.NOT_IMPL)) - } } + +object NotImplStringIdAccountApi : StringIdAccountApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/StringIdStatusApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/StringIdStatusApi.kt index 120debe..65b08e6 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/StringIdStatusApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/StringIdStatusApi.kt @@ -9,100 +9,24 @@ import dev.usbharu.multim.error.MultiMResult import dev.usbharu.multim.model.* interface StringIdStatusApi : StatusApi { - suspend fun findById(statusId:String):MultiMResult - - suspend fun reactions(statusId: String):MultiMResult> - suspend fun replies(statusId: String):MultiMResult> - suspend fun getPreviousAndNext(statusId: String):MultiMResult -} - - -object NotImplStringIdStatusApi : StringIdStatusApi { - override suspend fun post(status: StatusForPost): Result { - Logger.debug("Status Api","Not impl status api post") - return Err(MultiMError("post not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun delete(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api delete") - return Err(MultiMError("delete not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun findById(statusId: String): MultiMResult { + suspend fun findById(statusId:String):MultiMResult { Logger.debug("Status Api","Not impl status api findById by id") return Err(MultiMError("findById by id not implements",null, ErrorType.NOT_IMPL)) } - override suspend fun findById(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api findById") - return Err(MultiMError("findById not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun reactions(statusId: String): MultiMResult> { + suspend fun reactions(statusId: String):MultiMResult> { Logger.debug("Status Api","Not impl status api reactions by id") return Err(MultiMError("reactions by id not implements",null, ErrorType.NOT_IMPL)) } - - override suspend fun addReaction(id: StatusId, reaction: Reaction): Result { - Logger.debug("Status Api","Not impl status api addReaction") - return Err(MultiMError("addReaction not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun removeReaction( - id: StatusId, - reaction: Reaction? - ): Result { - Logger.debug("Status Api","Not impl status api removeReaction") - return Err(MultiMError("removeReaction not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun reactions(id: StatusId): Result, MultiMError> { - Logger.debug("Status Api","Not impl status api reactions") - return Err(MultiMError("reactions not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun replies(statusId: String): MultiMResult> { + suspend fun replies(statusId: String):MultiMResult> { Logger.debug("Status Api","Not impl status api replies by id") return Err(MultiMError("replies by id not implements",null, ErrorType.NOT_IMPL)) } - - override suspend fun replies(id: StatusId): Result, MultiMError> { - Logger.debug("Status Api","Not impl status api replies") - return Err(MultiMError("replies not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun getPreviousAndNext(statusId: String): MultiMResult { + suspend fun getPreviousAndNext(statusId: String):MultiMResult { Logger.debug("Status Api","Not impl status api getPreviousAndNext by id") return Err(MultiMError("getPreviousAndNext by id not implements",null, ErrorType.NOT_IMPL)) } +} - override suspend fun repost(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api repost") - return Err(MultiMError("repost not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun unRepost(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api unRepost") - return Err(MultiMError("unRepost not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun replyTo(id: StatusId, status: StatusForPost): Result { - Logger.debug("Status Api","Not impl status api replyTo") - return Err(MultiMError("replyTo not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun addToBookmarks(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api addToBookmarks") - return Err(MultiMError("addToBookmarks not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun removeFromBookmarks(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api removeFromBookmarks") - return Err(MultiMError("removeFromBookmarks not implements",null, ErrorType.NOT_IMPL)) - } - override suspend fun getPreviousAndNext(id: StatusId): Result { - Logger.debug("Status Api","Not impl status api getPreviousAndNext") - return Err(MultiMError("getPreviousAndNext not implements",null, ErrorType.NOT_IMPL)) - } -} +object NotImplStringIdStatusApi : StringIdStatusApi diff --git a/core/src/main/kotlin/dev/usbharu/multim/api/TimelineApi.kt b/core/src/main/kotlin/dev/usbharu/multim/api/TimelineApi.kt index 58d9770..29835b0 100644 --- a/core/src/main/kotlin/dev/usbharu/multim/api/TimelineApi.kt +++ b/core/src/main/kotlin/dev/usbharu/multim/api/TimelineApi.kt @@ -11,16 +11,25 @@ import dev.usbharu.multim.model.Timeline interface TimelineApi { val AVAILABLE_TIMELINES:String get() = "timeline/availableTimelines" - suspend fun availableTimelines(): Result,MultiMError> + suspend fun availableTimelines(): Result,MultiMError> { + Logger.debug("Timeline Api","Not impl timeline api availableTimelines") + return Err(MultiMError("availableTimelines not implements",null, ErrorType.NOT_IMPL)) + } val LISTEN:String get() = "timeline/listen" - suspend fun listen(timeline: Timeline,callback: (List) -> Unit):Result + suspend fun listen(timeline: Timeline,callback: (List) -> Unit):Result { + Logger.debug("Timeline Api","Not impl timeline api listen") + return Err(MultiMError("timeline listen not implements",null,ErrorType.NOT_IMPL)) + } val CONNECT:String get() = "timeline/connect" // todo 返り値を詳細にする - suspend fun connect(timeline: Timeline): Result + suspend fun connect(timeline: Timeline): Result{ + Logger.debug("Timeline Api","Not impl timeline api connect") + return Err(MultiMError("timeline connect not implements",null,ErrorType.NOT_IMPL)) + } val DISCONNECT:String get() = "timeline/disconnect" @@ -31,32 +40,12 @@ interface TimelineApi { * @param force 強制的に切断し、もし受信しても無視するように要求する。 * @return */ - suspend fun disconnect(timeline: Timeline, force: Boolean = false): Result - - -} - -object NotImplTimelineApi : TimelineApi { - override suspend fun availableTimelines(): Result, MultiMError> { - Logger.debug("Timeline Api","Not impl timeline api availableTimelines") - return Err(MultiMError("availableTimelines not implements",null, ErrorType.NOT_IMPL)) - } - - override suspend fun listen( - timeline: Timeline, - callback: (List) -> Unit - ): Result { - Logger.debug("Timeline Api","Not impl timeline api listen") - return Err(MultiMError("timeline listen not implements",null,ErrorType.NOT_IMPL)) - } - - override suspend fun connect(timeline: Timeline): Result { - Logger.debug("Timeline Api","Not impl timeline api connect") - return Err(MultiMError("timeline connect not implements",null,ErrorType.NOT_IMPL)) - } - - override suspend fun disconnect(timeline: Timeline, force: Boolean): Result { + suspend fun disconnect(timeline: Timeline, force: Boolean = false): Result{ Logger.debug("Timeline Api","Not impl timeline api disconnect") return Err(MultiMError("timeline disconnect not implements",null,ErrorType.NOT_IMPL)) } + + } + +object NotImplTimelineApi : TimelineApi