/** * Provides the equivalent of {@link #addEndpoint(ServerEndpointConfig)} for publishing plain old java objects (POJOs) that have been annotated as WebSocket endpoints. * * @param pojo * The annotated POJO */ @Override public void addEndpoint(Class<?> pojo) throws DeploymentException { log.debug("addEndpoint: {}", pojo); ServerEndpoint annotation = pojo.getAnnotation(ServerEndpoint.class); if (annotation == null) { throw new DeploymentException(sm.getString("serverContainer.missingAnnotation", pojo.getName())); } String path = annotation.value(); // Validate encoders validateEncoders(annotation.encoders()); // ServerEndpointConfig ServerEndpointConfig sec; Class<? extends Configurator> configuratorClazz = annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().getConstructor().newInstance(); } catch (ReflectiveOperationException e) { throw new DeploymentException(sm.getString("serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e); } } sec = ServerEndpointConfig.Builder.create(pojo, path).decoders(Arrays.asList(annotation.decoders())).encoders(Arrays.asList(annotation.encoders())).subprotocols(Arrays.asList(annotation.subprotocols())).configurator(configurator).build(); addEndpoint(sec); }
annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().getConstructor().newInstance(); } catch (ReflectiveOperationException e) { throw new DeploymentException(sm.getString( "serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e);
annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().newInstance(); } catch (InstantiationException e) { throw new DeploymentException(sm.getString( "serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e); } catch (IllegalAccessException e) { throw new DeploymentException(sm.getString( "serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e);
annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().getConstructor().newInstance(); } catch (ReflectiveOperationException e) { throw new DeploymentException(sm.getString( "serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e);
else if (anno.configurator() == ServerEndpointConfig.Configurator.class) resolvedConfigurator = anno.configurator().getDeclaredConstructor( ).newInstance(); err.append(anno.configurator().getName()); err.append(" defined as annotation in "); err.append(anno.getClass().getName());
annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().newInstance(); } catch (InstantiationException e) { throw new DeploymentException(MESSAGES.configuratorFailed(annotation.configurator().getName(), pojo.getClass().getName()), e); } catch (IllegalAccessException e) { throw new DeploymentException(MESSAGES.configuratorFailed(annotation.configurator().getName(), pojo.getClass().getName()), e);
annotation.configurator(); Configurator configurator = null; if (!configuratorClazz.equals(Configurator.class)) { try { configurator = annotation.configurator().newInstance(); } catch (InstantiationException | IllegalAccessException e) { throw new DeploymentException(sm.getString( "serverContainer.configuratorFail", annotation.configurator().getName(), pojo.getClass().getName()), e);
.decoders(decoderClasses) .subprotocols(Arrays.asList(subProtocols)); if (!wseAnnotation.configurator().equals(ServerEndpointConfig.Configurator.class)) { builder = builder.configurator(ReflectionHelper.getInstance(wseAnnotation.configurator(), collector)); .decoders(decoderClasses) .subprotocols(Arrays.asList(subProtocols)); if (!wseAnnotation.configurator().equals(ServerEndpointConfig.Configurator.class)) { builder = builder.configurator(ReflectionHelper.getInstance(wseAnnotation.configurator(), collector));
.decoders(decoderClasses) .subprotocols(Arrays.asList(subProtocols)); if (!wseAnnotation.configurator().equals(ServerEndpointConfig.Configurator.class)) { builder = builder.configurator(ReflectionHelper.getInstance(wseAnnotation.configurator(), collector)); .decoders(decoderClasses) .subprotocols(Arrays.asList(subProtocols)); if (!wseAnnotation.configurator().equals(ServerEndpointConfig.Configurator.class)) { builder = builder.configurator(ReflectionHelper.getInstance(wseAnnotation.configurator(), collector));