我想改进这段代码以避免重复的方法调用。有没有办法解决这个问题??我不想每次在if else块中调用相同的方法updateIndicator和createErrorResponse方法。
if (e.getRawStatusCode() == NOT_FOUND) {
String errorDetails = createNotFoundDetails(transactionId);
updateIdentifier(identifier);
return createErrorResponse(MISSING_VALID_TRANSACTION_ID_ERROR_MSG, errorDetails);
}
else if (e.getRawStatusCode() == UNAUTHORIZED) {
updateIdentifier(identifier);
if (responseHeaderValue.equals(TOKEN_EXPIRED) ) {
return createErrorResponse(UNABLE_TO_REACH_SVC_PROVIDER_ERROR_MSG,
INVALID_RESPONSE_FROM_SVC_PROVIDER_EXPIRED_TOKEN_ERROR_DETAILS);
}
return createErrorResponse(UNABLE_TO_REACH_SVC_PROVIDER_ERROR_MSG,
INVALID_RESPONSE_FROM_SVC_PROVIDER_INVALID_TOKEN_ERROR_DETAILS);
}
else {
updateIdentifier(identifier);
return createErrorResponse(UNABLE_TO_REACH_SVC_PROVIDER,
UNABLE_TO_REACH_SVC_PROVIDER_ERROR_DETAILS);
}
您可以在该类中创建一个公共静态方法。 例如
public static errorResponse method(identifier) {
updateIdentifier(identifier);
return createErrorResponse(
UNABLE_TO_REACH_SVC_PROVIDER, UNABLE_TO_REACH_SVC_PROVIDER_ERROR_DETAILS);
}
并在代码中调用方法。