Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Room Park Android
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Vladislav Bogdashkin
Room Park Android
Commits
17a3880c
Commit
17a3880c
authored
Sep 24, 2019
by
Vladislav Bogdashkin
🎣
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added custom exceptions
parent
345acb4f
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
253 additions
and
2 deletions
+253
-2
AuthContract.kt
...m/biganto/visual/roompark/domain/contract/AuthContract.kt
+6
-2
DealContract.kt
...m/biganto/visual/roompark/domain/contract/DealContract.kt
+14
-0
DevProgressContract.kt
...to/visual/roompark/domain/contract/DevProgressContract.kt
+21
-0
FeedsContract.kt
.../biganto/visual/roompark/domain/contract/FeedsContract.kt
+17
-0
Subscribtions.kt
.../biganto/visual/roompark/domain/contract/Subscribtions.kt
+17
-0
CustomException.kt
...isual/roompark/domain/custom_exception/CustomException.kt
+139
-0
strings.xml
app/src/main/res/values/strings.xml
+39
-0
No files found.
app/src/main/java/com/biganto/visual/roompark/domain/contract/AuthContract.kt
View file @
17a3880c
package
com.biganto.visual.roompark.domain.contract
import
com.biganto.visual.roompark.domain.model.AuthInfoModel
import
io.reactivex.rxjava3.core.Completable
import
io.reactivex.rxjava3.core.Observable
/**
* Created by Vladislav Bogdashkin on 24.09.2019.
*/
interface
AuthContract
{
// fun signInt(email:String,password:String): Observable<AuthInfoModel>
fun
signIn
(
email
:
String
,
password
:
String
)
:
Observable
<
AuthInfoModel
>
fun
signOut
()
:
Completable
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/domain/contract/DealContract.kt
0 → 100644
View file @
17a3880c
package
com.biganto.visual.roompark.domain.contract
import
com.biganto.visual.roompark.domain.model.EstateModel
import
io.reactivex.rxjava3.core.Observable
/**
* Created by Vladislav Bogdashkin on 24.09.2019.
*/
interface
DealContract
{
fun
getFavorites
()
:
Observable
<
List
<
EstateModel
>>
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/domain/contract/DevProgressContract.kt
0 → 100644
View file @
17a3880c
package
com.biganto.visual.roompark.domain.contract
import
com.biganto.visual.roompark.domain.model.AlbumPreviewModel
import
com.biganto.visual.roompark.domain.model.PhotoModel
import
com.biganto.visual.roompark.domain.model.WebCamListModel
import
com.biganto.visual.roompark.domain.model.WebCamModel
import
io.reactivex.rxjava3.core.Observable
import
io.reactivex.rxjava3.core.Single
/**
* Created by Vladislav Bogdashkin on 24.09.2019.
*/
interface
DevProgressContract
{
fun
getProgressCards
():
Single
<
List
<
AlbumPreviewModel
>>
fun
getProgressAlbumList
(
albumId
:
Int
):
Observable
<
List
<
AlbumPreviewModel
>>
fun
getAlbumPhoto
(
photoId
:
Int
):
Observable
<
PhotoModel
>
fun
getWebCamsList
():
Single
<
WebCamListModel
>
fun
getWebCamStream
(
camId
:
Int
):
Single
<
WebCamModel
>
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/domain/contract/FeedsContract.kt
0 → 100644
View file @
17a3880c
package
com.biganto.visual.roompark.domain.contract
import
com.biganto.visual.roompark.domain.model.ArticlesPreviewModel
import
com.biganto.visual.roompark.domain.model.FeedsHeaderModel
import
io.reactivex.rxjava3.core.Observable
import
io.reactivex.rxjava3.core.Single
/**
* Created by Vladislav Bogdashkin on 24.09.2019.
*/
interface
FeedsContract
{
fun
fetchFeeds
():
Single
<
FeedsHeaderModel
>
fun
fetchFeedObservable
(
id
:
Int
):
Observable
<
ArticlesPreviewModel
>
fun
getArticle
(
id
:
Int
):
Single
<
ArticlesPreviewModel
>
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/domain/contract/Subscribtions.kt
0 → 100644
View file @
17a3880c
package
com.biganto.visual.roompark.domain.contract
/**
* Created by Vladislav Bogdashkin on 24.09.2019.
*/
interface
SubscriptionContract
{
fun
subscribeTopic
(
deviceToken
:
String
,
topic
:
String
)
fun
unSubscribeTopic
(
deviceToken
:
String
,
topic
:
String
)
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/domain/custom_exception/CustomException.kt
0 → 100644
View file @
17a3880c
package
com.biganto.visual.roompark.domain.custom_exception
import
androidx.annotation.StringRes
import
com.biganto.visual.roompark.R
/**
* Created by Vladislav Bogdashkin on 09.04.2019.
*/
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_100
=
100
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_101
=
101
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_102
=
102
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_103
=
103
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_104
=
104
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_111
=
111
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_112
=
112
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_201
=
201
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_202
=
202
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_203
=
203
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_204
=
204
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_205
=
205
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_206
=
206
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_211
=
211
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_212
=
212
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_213
=
213
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_221
=
221
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_231
=
231
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_TOUR_NOT_FOUND
=
2001
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_100_MESSAGE_ID
=
R
.
string
.
api_error_100
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_101_MESSAGE_ID
=
R
.
string
.
api_error_101
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_102_MESSAGE_ID
=
R
.
string
.
api_error_102
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_103_MESSAGE_ID
=
R
.
string
.
api_error_103
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_104_MESSAGE_ID
=
R
.
string
.
api_error_104
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_111_MESSAGE_ID
=
R
.
string
.
api_error_111
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_112_MESSAGE_ID
=
R
.
string
.
api_error_112
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_201_MESSAGE_ID
=
R
.
string
.
api_error_201
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_202_MESSAGE_ID
=
R
.
string
.
api_error_202
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_203_MESSAGE_ID
=
R
.
string
.
api_error_203
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_204_MESSAGE_ID
=
R
.
string
.
api_error_204
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_205_MESSAGE_ID
=
R
.
string
.
api_error_205
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_206_MESSAGE_ID
=
R
.
string
.
api_error_206
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_211_MESSAGE_ID
=
R
.
string
.
api_error_211
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_212_MESSAGE_ID
=
R
.
string
.
api_error_212
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_213_MESSAGE_ID
=
R
.
string
.
api_error_213
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_221_MESSAGE_ID
=
R
.
string
.
api_error_221
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_231_MESSAGE_ID
=
R
.
string
.
api_error_231
@StringRes
const
val
CUSTOM_API_ERROR_RESPONSE_CODE_TOUR_NOT_FOUND_MESSAGE_ID
=
R
.
string
.
api_error_2001
@StringRes
const
val
CUSTOM_API_ERROR_DEFAULT_MESSAGE_ID
=
R
.
string
.
api_error_default
sealed
class
CustomApiException
(
val
code
:
Int
,
@StringRes
val
messageStringId
:
Int
):
Exception
()
{
class
NotAuthorizedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_100
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_100_MESSAGE_ID
)
class
TokenSyntaxException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_101
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_101_MESSAGE_ID
)
class
UserWithTokenNotFoundException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_102
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_102_MESSAGE_ID
)
class
TokenEstimatedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_103
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_103_MESSAGE_ID
)
class
UserBannedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_104
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_104_MESSAGE_ID
)
class
WrongLoginException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_111
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_111_MESSAGE_ID
)
class
WrongPasswordException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_112
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_112_MESSAGE_ID
)
class
UnexpectedSubscriptionTopicId
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_201
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_201_MESSAGE_ID
)
class
SubcriptionAldreadyExists
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_202
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_202_MESSAGE_ID
)
class
DealCrmTimeoutException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_203
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_203_MESSAGE_ID
)
class
DealCrmWrongAnswearFormatException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_204
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_204_MESSAGE_ID
)
class
DealCrmError
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_205
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_205_MESSAGE_ID
)
class
SubscriptionDbException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_206
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_206_MESSAGE_ID
)
class
WrongFeedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_211
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_211_MESSAGE_ID
)
class
ArticleNotFoundException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_212
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_212_MESSAGE_ID
)
class
ArticleIdExpectedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_213
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_213_MESSAGE_ID
)
class
PhotoIdExpectedException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_212
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_212_MESSAGE_ID
)
class
WrongZoneIdException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_231
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_231_MESSAGE_ID
)
class
TourByIdNotFoundException
()
:
CustomApiException
(
CUSTOM_API_ERROR_RESPONSE_CODE_TOUR_NOT_FOUND
,
messageStringId
=
CUSTOM_API_ERROR_RESPONSE_CODE_TOUR_NOT_FOUND_MESSAGE_ID
)
class
UnknownCustomApiException
(
code
:
Int
,
@StringRes
messageStringId
:
Int
)
:
CustomApiException
(
code
,
messageStringId
)
}
app/src/main/res/values/strings.xml
View file @
17a3880c
...
...
@@ -12,4 +12,43 @@
<string
name=
"enter"
>
ВХОД
</string>
<string
name=
"into"
>
В
</string>
<string
name=
"private_office"
>
ЛИЧНЫЙ КАБИНЕТ
</string>
<!--region Custom Exception-->
<string
name=
"api_error_100"
>
Метод требует авторизации.
</string>
<string
name=
"api_error_101"
>
Ошибка синтаксиса токена.
</string>
<string
name=
"api_error_102"
>
Пользователь, указанный в авторизационном токене, не найден.
</string>
<string
name=
"api_error_103"
>
Пользователь найден, но токен не подходит. Нужно переавторизоваться.
</string>
<string
name=
"api_error_104"
>
Пользователь не подтвердил почту.
</string>
<string
name=
"api_error_111"
>
Неверный логин
</string>
<string
name=
"api_error_112"
>
Неверный пароль
</string>
<string
name=
"api_error_201"
>
Неверный топик для подписки / отписки
</string>
<string
name=
"api_error_202"
>
Попытка добавить уже существующую подписку
</string>
<string
name=
"api_error_203"
>
Timeout соединения с CRM (метод получения сделок)
</string>
<string
name=
"api_error_204"
>
Неверный формат ответа от CRM
</string>
<string
name=
"api_error_205"
>
CRM вернул ошибку (указывается её код в ответе)
</string>
<string
name=
"api_error_206"
>
Ошибка БД, невозможно осуществить подписку
</string>
<string
name=
"api_error_211"
>
Неверное обозначение фида
</string>
<string
name=
"api_error_212"
>
Статья не найдена
</string>
<string
name=
"api_error_213"
>
Не был передан article_id
</string>
<string
name=
"api_error_221"
>
Не передан или неверный album_id
</string>
<string
name=
"api_error_231"
>
Неверный id зоны
</string>
<string
name=
"api_error_2001"
>
Тур не найден!
</string>
<string
name=
"api_error_default"
>
Неизвестная ошибка сервера!
</string>
<string
name=
"no_network_error"
>
No network!
</string>
<string
name=
"unknown_error"
>
Unexpected error!
</string>
<string
name=
"cant_load_item_error"
>
Can\'t load item!
</string>
<string
name=
"object_not_found_error"
>
Object not found!
</string>
<string
name=
"can_not_delete_tour_error"
>
Can\'t Delete Tour!
</string>
<string
name=
"can_not_sync_tour_error"
>
Can\'t sync tour!
</string>
<string
name=
"can_not_download_all_tours_error"
>
Can\'t download tours!
</string>
<string
name=
"auth_data_requirments_failed"
>
Login at least %d symbols
\nPassword at least %d symbols
</string>
<!--endregion-->
</resources>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment