@Override
@RequestMapping(value = ApiConfig.ACTION_RESULTS_BASE + "/{actionResultId}", method = RequestMethod.GET,
headers = ApiConfig.API_HEADERS, produces = {ApiConfig.API_PRODUCES})
@ResponseBody
public ActionResult getActionResult(@PathVariable final String actionResultId,
@CookieValue(value = SessionManager.SESSION_COOKIE, required = false) final String sessionId,
final HttpServletResponse response) throws InvalidActionSpecificationException, NoSuchProviderException,
NoSuchSessionException, NoSuchItemTypeException {
if (rateLimiter.tryAcquire()) {
if (actionResultId == null) {
throw new BadRequestException("actionResultId cannot be null");
}
UUID uuid = UUID.fromString(actionResultId);
Session session = modelValidator.validateSession(sessionId, response);
if (LOG.isDebugEnabled()) {
LOG.debug("Lookup action result " + actionResultId + " for session " + sessionId);
}
synchronized (session) {
if (LOG.isDebugEnabled()) {
LOG.debug("Assigned session " + session.getId());
}
ActionResult actionResult = actionManager.getActionResult(session, uuid);
return actionResult;
}
} else {
throw new ApiThrottlingException("Exceeded max number of requests per second");
}
}
LoomServiceImpl.java 文件源码
java
阅读 32
收藏 0
点赞 0
评论 0
项目:loom
作者:
评论列表
文章目录