1 module vksdk.exceptions.ExceptionMapper; 2 3 import vksdk.exceptions.ApiException; 4 import vksdk.exceptions.ApiUnknownException; 5 import vksdk.objects.base.BaseError; 6 7 class ExceptionMapper { 8 static ApiException parseException(BaseError error) { 9 switch (error.errorCode) { 10 case 1: 11 return new ApiUnknownException(error.errorMsg); 12 /* case 2: 13 return new ApiDisabledException(error.getErrorMsg()); 14 case 3: 15 return new ApiMethodException(error.getErrorMsg()); 16 case 4: 17 return new ApiSignatureException(error.getErrorMsg()); 18 case 260: 19 return new ApiAccessGroupsException(error.getErrorMsg()); 20 case 5: 21 return new ApiAuthException(error.getErrorMsg()); 22 case 6: 23 return new ApiTooManyException(error.getErrorMsg()); 24 case 7: 25 return new ApiPermissionException(error.getErrorMsg()); 26 case 8: 27 return new ApiRequestException(error.getErrorMsg()); 28 case 9: 29 return new ApiFloodException(error.getErrorMsg()); 30 case 10: 31 return new ApiServerException(error.getErrorMsg()); 32 case 11: 33 return new ApiEnabledInTestException(error.getErrorMsg()); 34 case 14: 35 return new ApiCaptchaException(error.getErrorMsg(), error.getCaptchaSid(), error.getCaptchaImg()); 36 case 270: 37 return new ApiAudioClaimedException(error.getErrorMsg()); 38 case 15: 39 return new ApiAccessException(error.getErrorMsg()); 40 case 16: 41 return new ApiAuthHttpsException(error.getErrorMsg()); 42 case 17: 43 return new ApiAuthValidationException(error.getErrorMsg(), error.getRedirectUri()); 44 case 18: 45 return new ApiUserDeletedException(error.getErrorMsg()); 46 case 19: 47 return new ApiBlockedException(error.getErrorMsg()); 48 case 20: 49 return new ApiMethodPermissionException(error.getErrorMsg()); 50 case 21: 51 return new ApiMethodAdsException(error.getErrorMsg()); 52 case 22: 53 return new ApiUploadException(error.getErrorMsg()); 54 case 23: 55 return new ApiMethodDisabledException(error.getErrorMsg()); 56 case 24: 57 return new ApiNeedConfirmationException(error.getErrorMsg(), error.getConfirmationText()); 58 case 1310: 59 return new ApiCommunitiesCatalogDisabledException(error.getErrorMsg()); 60 case 1311: 61 return new ApiCommunitiesCategoriesDisabledException(error.getErrorMsg()); 62 case 800: 63 return new ApiVideoAlreadyAddedException(error.getErrorMsg()); 64 case 801: 65 return new ApiVideoCommentsClosedException(error.getErrorMsg()); 66 case 300: 67 return new ApiAlbumFullException(error.getErrorMsg()); 68 case 301: 69 return new ApiFilenameException(error.getErrorMsg()); 70 case 302: 71 return new ApiAlbumsLimitException(error.getErrorMsg()); 72 case 1105: 73 return new ApiAuthFloodErrorException(error.getErrorMsg()); 74 case 1110: 75 return new ApiAuthParamCodeException(error.getErrorMsg()); 76 case 1111: 77 return new ApiAuthParamPasswordException(error.getErrorMsg()); 78 case 600: 79 return new ApiAdsPermissionException(error.getErrorMsg()); 80 case 1112: 81 return new ApiAuthDelayException(error.getErrorMsg()); 82 case 601: 83 return new ApiWeightedFloodException(error.getErrorMsg()); 84 case 602: 85 return new ApiAdsPartialSuccessException(error.getErrorMsg()); 86 case 603: 87 return new ApiAdsSpecificException(error.getErrorMsg()); 88 case 604: 89 return new ApiAdsParamDomainInvalidException(error.getErrorMsg()); 90 case 605: 91 return new ApiAdsParamDomainForbiddenException(error.getErrorMsg()); 92 case 606: 93 return new ApiAdsParamDomainReservedException(error.getErrorMsg()); 94 case 607: 95 return new ApiAdsParamDomainOccupiedException(error.getErrorMsg()); 96 case 608: 97 return new ApiAdsParamDomainActiveException(error.getErrorMsg()); 98 case 609: 99 return new ApiAdsParamDomainAppInvalidException(error.getErrorMsg()); 100 case 610: 101 return new ApiAdsParamDomainAppForbiddenException(error.getErrorMsg()); 102 case 611: 103 return new ApiAdsAppNotVerifiedException(error.getErrorMsg()); 104 case 100: 105 return new ApiParamException(error.getErrorMsg()); 106 case 612: 107 return new ApiAppNotInSiteDomainsException(error.getErrorMsg()); 108 case 101: 109 return new ApiParamApiIdException(error.getErrorMsg()); 110 case 613: 111 return new ApiAdsAppBlockedException(error.getErrorMsg()); 112 case 103: 113 return new ApiLimitsException(error.getErrorMsg()); 114 case 104: 115 return new ApiNotFoundException(error.getErrorMsg()); 116 case 105: 117 return new ApiSaveFileException(error.getErrorMsg()); 118 case 106: 119 return new ApiActionFailedException(error.getErrorMsg()); 120 case 113: 121 return new ApiParamUserIdException(error.getErrorMsg()); 122 case 114: 123 return new ApiParamAlbumIdException(error.getErrorMsg()); 124 case 118: 125 return new ApiParamServerException(error.getErrorMsg()); 126 case 119: 127 return new ApiParamTitleException(error.getErrorMsg()); 128 case 1400: 129 return new ApiMarketRestoreTooLateException(error.getErrorMsg()); 130 case 121: 131 return new ApiParamHashException(error.getErrorMsg()); 132 case 1401: 133 return new ApiMarketCommentsClosedException(error.getErrorMsg()); 134 case 122: 135 return new ApiParamPhotosException(error.getErrorMsg()); 136 case 1402: 137 return new ApiMarketAlbumNotFoundException(error.getErrorMsg()); 138 case 123: 139 return new ApiParamAudioException(error.getErrorMsg()); 140 case 1403: 141 return new ApiMarketItemNotFoundException(error.getErrorMsg()); 142 case 1404: 143 return new ApiMarketItemAlreadyAddedException(error.getErrorMsg()); 144 case 125: 145 return new ApiParamGroupIdException(error.getErrorMsg()); 146 case 1405: 147 return new ApiMarketTooManyItemsException(error.getErrorMsg()); 148 case 1150: 149 return new ApiParamDocIdException(error.getErrorMsg()); 150 case 1406: 151 return new ApiMarketTooManyItemsInAlbumException(error.getErrorMsg()); 152 case 1151: 153 return new ApiParamDocDeleteAccessException(error.getErrorMsg()); 154 case 1407: 155 return new ApiMarketTooManyAlbumsException(error.getErrorMsg()); 156 case 1152: 157 return new ApiParamDocTitleException(error.getErrorMsg()); 158 case 129: 159 return new ApiParamPhotoException(error.getErrorMsg()); 160 case 1153: 161 return new ApiParamDocAccessException(error.getErrorMsg()); 162 case 900: 163 return new ApiMessagesUserBlockedException(error.getErrorMsg()); 164 case 901: 165 return new ApiMessagesDenySendException(error.getErrorMsg()); 166 case 902: 167 return new ApiMessagesPrivacyException(error.getErrorMsg()); 168 case 1160: 169 return new ApiPhotoChangedException(error.getErrorMsg()); 170 case 140: 171 return new ApiParamPageIdException(error.getErrorMsg()); 172 case 141: 173 return new ApiAccessPageException(error.getErrorMsg()); 174 case 146: 175 return new ApiMobileNotActivatedException(error.getErrorMsg()); 176 case 1170: 177 return new ApiTooManyListsException(error.getErrorMsg()); 178 case 147: 179 return new ApiInsufficientFundsException(error.getErrorMsg()); 180 case 148: 181 return new ApiAccessMenuException(error.getErrorMsg()); 182 case 150: 183 return new ApiParamTimestampException(error.getErrorMsg()); 184 case 171: 185 return new ApiFriendsListIdException(error.getErrorMsg()); 186 case 173: 187 return new ApiFriendsListLimitException(error.getErrorMsg()); 188 case 174: 189 return new ApiFriendsAddYourselfException(error.getErrorMsg()); 190 case 175: 191 return new ApiFriendsAddInEnemyException(error.getErrorMsg()); 192 case 176: 193 return new ApiFriendsAddEnemyException(error.getErrorMsg()); 194 case 180: 195 return new ApiParamNoteIdException(error.getErrorMsg()); 196 case 181: 197 return new ApiAccessNoteException(error.getErrorMsg()); 198 case 182: 199 return new ApiAccessNoteCommentException(error.getErrorMsg()); 200 case 183: 201 return new ApiAccessCommentException(error.getErrorMsg()); 202 case 700: 203 return new ApiGroupChangeCreatorException(error.getErrorMsg()); 204 case 701: 205 return new ApiGroupNotInClubException(error.getErrorMsg()); 206 case 702: 207 return new ApiGroupTooManyOfficersException(error.getErrorMsg()); 208 case 190: 209 return new ApiSameCheckinException(error.getErrorMsg()); 210 case 191: 211 return new ApiAccessCheckinException(error.getErrorMsg()); 212 case 200: 213 return new ApiAccessAlbumException(error.getErrorMsg()); 214 case 201: 215 return new ApiAccessAudioException(error.getErrorMsg()); 216 case 203: 217 return new ApiAccessGroupException(error.getErrorMsg()); 218 case 204: 219 return new ApiAccessVideoException(error.getErrorMsg()); 220 case 205: 221 return new ApiAccessMarketException(error.getErrorMsg()); 222 case 210: 223 return new ApiWallAccessPostException(error.getErrorMsg()); 224 case 211: 225 return new ApiWallAccessCommentException(error.getErrorMsg()); 226 case 212: 227 return new ApiWallAccessRepliesException(error.getErrorMsg()); 228 case 213: 229 return new ApiWallAccessAddReplyException(error.getErrorMsg()); 230 case 214: 231 return new ApiWallAddPostException(error.getErrorMsg()); 232 case 219: 233 return new ApiWallAdsPublishedException(error.getErrorMsg()); 234 case 220: 235 return new ApiWallTooManyRecipientsException(error.getErrorMsg()); 236 case 221: 237 return new ApiStatusNoAudioException(error.getErrorMsg()); 238 case 222: 239 return new ApiWallLinksForbiddenException(error.getErrorMsg()); 240 case 1251: 241 return new ApiAppsAlreadyUnlockedException(error.getErrorMsg()); 242 case 1000: 243 return new ApiParamPhoneException(error.getErrorMsg()); 244 case 1004: 245 return new ApiPhoneAlreadyUsedException(error.getErrorMsg()); 246 case 1260: 247 return new ApiInvalidAddressException(error.getErrorMsg()); 248 case 500: 249 return new ApiVotesPermissionException(error.getErrorMsg()); 250 case 503: 251 return new ApiVotesException(error.getErrorMsg()); 252 case 250: 253 return new ApiPollsAccessException(error.getErrorMsg()); 254 case 251: 255 return new ApiPollsPollIdException(error.getErrorMsg()); 256 case 252: 257 return new ApiPollsAnswerIdException(error.getErrorMsg());*/ 258 default: 259 return new ApiException(error.errorCode, error.errorMsg); 260 } 261 } 262 }