@Override protected Logger getGrizzlyLogger() { return LoggerUtils.getLogger(); } }
/** * {@inheritDoc} */ public void uncaughtException(Thread thread, Throwable throwable) { LoggerUtils.getLogger().log(Level.WARNING, "Uncaught thread exception. Thread: " + thread, throwable); }
public void uncaughtException(Thread thread, Throwable throwable) { LoggerUtils.getLogger().log(Level.WARNING, "Uncaught thread exception. Thread: " + thread, throwable); }
/** * Load a class using the provided {@link Classloader} * @param clazzName The name of the class you want to load. * @param classLoader A classloader to use for loading a class. * @return an instance of clazzname */ public static Object load(String clazzName, ClassLoader classLoader) { Class className = null; try { className = Class.forName(clazzName, true, classLoader); return className.newInstance(); } catch (Throwable t) { LoggerUtils.getLogger().log(Level.SEVERE,"Unable to load class " + clazzName,t); } return null; } }
/** * Decrease {@link Selector} pool size */ private static void reduce(int size) { for(int i=0; i<maxSelectors - size; i++) { try { Selector selector = selectors.pop(); selector.close(); } catch(IOException e) { Logger logger = LoggerUtils.getLogger(); if (logger.isLoggable(Level.FINE)) { logger.log(Level.FINE, "SelectorFactory.reduce", e); } } } }
/** * Load a class using the provided {@link ClassLoader} * @param clazzName The name of the class you want to load. * @param classLoader A classloader to use for loading a class. * @return an instance of clazzname */ public static Object load(String clazzName, ClassLoader classLoader) { Class className; try { className = Class.forName(clazzName, true, classLoader); return className.newInstance(); } catch (Throwable t) { LoggerUtils.getLogger().log(Level.SEVERE,"Unable to load class " + clazzName,t); } return null; } }
public void onKeySelected(SelectionKey selectionKey) { if (!selectionKey.isValid() || discardDisconnectEvent) { selectionKey.cancel(); return; } boolean connectionClosed = true; try { connectionClosed = ((SocketChannel) selectionKey.channel()).read(ByteBuffer.allocate(1)) == -1; } catch (IOException ex) { if (LoggerUtils.getLogger().isLoggable(Level.FINE)) { LoggerUtils.getLogger().log(Level.FINEST, "handleSelectionKey", ex); } } finally { if (connectionClosed) { completionHandler.cancelled(attachment); selectionKey.cancel(); } } }
protected void checkConditionListeners(E state) { Iterator<ConditionListener<E>> it = conditionListeners.keySet().iterator(); while(it.hasNext()) { ConditionListener<E> listener = it.next(); try { if (listener.check(state)) { it.remove(); listener.notifyListener(); } } catch(Exception e) { LoggerUtils.getLogger().log(Level.WARNING, "Error calling ConditionListener", e); } } }
/** * Please ensure to use try finally around get and return of selector so avoid leaks. * Get a exclusive {@link Selector} * @return {@link Selector} */ public static Selector getSelector() { Selector selector = selectors.poll(); if (selector != null) { poolSize.decrementAndGet(); } else { try { selector = Utils.openSelector(); } catch (IOException e) { LoggerUtils.getLogger().log(Level.WARNING, "SelectorFactory. Can not create a selector", e); } final int missesCount = missesCounter.incrementAndGet(); if (missesCount % MISS_THRESHOLD == 0) { LoggerUtils.getLogger().log(Level.WARNING, "SelectorFactory. Pool encounters a lot of misses {0}. " + "Increase default {1} pool size", new Object[] {missesCount, maxSelectors}); } } return selector; }
protected void checkConditionListeners(E state) { Iterator<ConditionListener<E>> it = conditionListeners.keySet().iterator(); while(it.hasNext()) { ConditionListener<E> listener = it.next(); try { if (listener.check(state)) { it.remove(); listener.notifyListener(); } } catch(Exception e) { LoggerUtils.getLogger().log(Level.WARNING, "Error calling ConditionListener", e); } } }
/** * Executes <code>Selector.selectNow()</code> and returns * the {@link Selector} to the cache */ public static void selectNowAndReturnSelector(Selector s) { try { s.selectNow(); returnSelector(s); } catch (IOException e) { Logger logger = LoggerUtils.getLogger(); logger.log(Level.WARNING, "Unexpected problem when releasing temporary Selector", e); closeSelector(s); } }
@Override public void service(GrizzlyRequest request, GrizzlyResponse response) { try { response.setStatus(404); response.flushBuffer(); } catch (IOException ex) { final Logger localLogger = LoggerUtils.getLogger(); if (localLogger.isLoggable(Level.SEVERE)) { localLogger.log(Level.SEVERE, LogMessages.SEVERE_GRIZZLY_HTTP_GWS_IO_ERROR(), ex); } } } });
@Override public void resume(){ getCompletionHandler().resumed(getAttachment()); try{ grizzlyResponse.finishResponse(); } catch (IOException ex){ LoggerUtils.getLogger().log(Level.FINEST,"resume",ex); } }
public void resume(){ completionHandler.resumed(attachment); try{ response.sendHeaders(); response.flush(); response.finish(); } catch (IOException ex){ LoggerUtils.getLogger().log(Level.FINEST,"resume",ex); } }
@Override public void resume(){ getCompletionHandler().resumed(getAttachment()); try{ gres.finishResponse(); } catch (IOException ex){ LoggerUtils.getLogger().log(Level.FINEST,"resume",ex); } }