@Override public boolean handleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response) throws IOException { if (!canHandleRequest(request)) { return false; } session.lock(); try { return synchronizedHandleRequest(session, request, response); } finally { session.unlock(); } }
@Override public boolean handleRequest(VaadinSession session, VaadinRequest request, VaadinResponse response) throws IOException { // Use a copy to avoid ConcurrentModificationException session.lock(); List<RequestHandler> requestHandlers; try { requestHandlers = new ArrayList<>(session.getRequestHandlers()); } finally { session.unlock(); } for (RequestHandler handler : requestHandlers) { if (handler.handleRequest(session, request, response)) { return true; } } // If not handled return false; } }
@Override public boolean handleConnectorRequest(VaadinRequest request, VaadinResponse response, String path) throws IOException { Matcher matcher = Pattern.compile("(\\d+)(/.*)?").matcher(path); if (!matcher.matches()) { return super.handleConnectorRequest(request, response, path); } DownloadStream stream; VaadinSession session = getSession(); session.lock(); try { List<URLReference> sources = getState().sources; int sourceIndex = Integer.parseInt(matcher.group(1)); if (sourceIndex < 0 || sourceIndex >= sources.size()) { getLogger().log(Level.WARNING, "Requested source index {0} is out of bounds", sourceIndex); return false; } URLReference reference = sources.get(sourceIndex); ConnectorResource resource = (ConnectorResource) ResourceReference .getResource(reference); stream = resource.getStream(); } finally { session.unlock(); } stream.writeResponse(request, response); return true; }
@Override public boolean handleConnectorRequest(VaadinRequest request, VaadinResponse response, String path) throws IOException { DownloadStream stream = null; String[] parts = path.split("/", 2); String key = parts[0]; VaadinSession session = getSession(); session.lock(); try { ConnectorResource resource = (ConnectorResource) getResource(key); if (resource == null) { return false; } stream = resource.getStream(); } finally { session.unlock(); } stream.writeResponse(request, response); return true; }
lock(); try { old = CurrentInstance.setCurrent(this);
session.lock(); Class<?> context; try {
pathInfo + " is not a valid global resource path"); session.lock(); Map<Class<?>, CurrentInstance> oldInstances = null; DownloadStream stream = null;
/** * Called after the framework has handled a request and the response has * been written. * * @param request * The request object * @param response * The response object * @param session * The session which was used during the request or null if the * request did not use a session */ public void requestEnd(VaadinRequest request, VaadinResponse response, VaadinSession session) { if (session != null) { assert VaadinSession.getCurrent() == session; session.lock(); try { cleanupSession(session); final long duration = (System.nanoTime() - (Long) request .getAttribute(REQUEST_START_TIME_ATTRIBUTE)) / 1000000; session.setLastRequestDuration(duration); } finally { session.unlock(); } } CurrentInstance.clearAll(); }
StreamVariable streamVariable; session.lock(); try { UI uI = session.getUIById(Integer.parseInt(uiId));
try { boolean listenProgress; session.lock(); try { streamVariable.streamingStarted(startedEvent); || bytesReadToBuffer <= 0) { lastStreamingEvent = now; session.lock(); try { StreamingProgressEventImpl progressEvent = new StreamingProgressEventImpl( StreamingEndEvent event = new StreamingEndEventImpl(filename, type, totalBytes); session.lock(); try { streamVariable.streamingFinished(event); StreamingErrorEvent event = new StreamingErrorEventImpl(filename, type, contentLength, totalBytes, e); session.lock(); try { streamVariable.streamingFailed(event); session.lock(); try { StreamingErrorEvent event = new StreamingErrorEventImpl(
session.lock(); try { if (getSession() == null) {
session.lock(); try { VaadinSession.setCurrent(session);
session.lock(); DownloadStream stream;
throws ServiceException { if (vaadinSession != null) { vaadinSession.lock();
session.lock(); try { ui = service.findUI(vaadinRequest);
private InputStream createInputStream(VaadinSession session) { session.lock(); try { return factory.createInputStream(); } finally { session.unlock(); } }
private UIStore getUIStore() { final VaadinSession session = getVaadinSession(); session.lock(); try { UIStore uiStore = session.getAttribute(UIStore.class); if (uiStore == null) { uiStore = new UIStore(session); } return uiStore; } finally { session.unlock(); } }
@Override public void run() { try { getUI().getSession().lock(); advanceTimer(); } finally { getUI().getSession().unlock(); } } }, 250, 250);