Search in sources :

Example 6 with SimpleContainerScope

use of org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope in project jetty.project by eclipse.

the class MessageHandlerFactoryTest method init.

@Before
public void init() throws DeploymentException {
    WebSocketContainerScope containerScope = new SimpleContainerScope(WebSocketPolicy.newClientPolicy());
    DecoderFactory primitivesFactory = new DecoderFactory(containerScope, PrimitiveDecoderMetadataSet.INSTANCE);
    metadatas = new DecoderMetadataSet();
    decoders = new DecoderFactory(containerScope, metadatas, primitivesFactory);
    factory = new MessageHandlerFactory();
}
Also used : DecoderMetadataSet(org.eclipse.jetty.websocket.jsr356.metadata.DecoderMetadataSet) PrimitiveDecoderMetadataSet(org.eclipse.jetty.websocket.jsr356.decoders.PrimitiveDecoderMetadataSet) WebSocketContainerScope(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope) SimpleContainerScope(org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope) Before(org.junit.Before)

Example 7 with SimpleContainerScope

use of org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope in project jetty.project by eclipse.

the class EncoderFactoryTest method initEncoderFactory.

@Before
public void initEncoderFactory() {
    WebSocketContainerScope containerScope = new SimpleContainerScope(WebSocketPolicy.newClientPolicy());
    EncoderFactory primitivesFactory = new EncoderFactory(containerScope, PrimitiveEncoderMetadataSet.INSTANCE);
    metadatas = new EncoderMetadataSet();
    factory = new EncoderFactory(containerScope, metadatas, primitivesFactory);
}
Also used : WebSocketContainerScope(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope) SimpleContainerScope(org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope) EncoderMetadataSet(org.eclipse.jetty.websocket.jsr356.metadata.EncoderMetadataSet) PrimitiveEncoderMetadataSet(org.eclipse.jetty.websocket.jsr356.encoders.PrimitiveEncoderMetadataSet) Before(org.junit.Before)

Example 8 with SimpleContainerScope

use of org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope in project jetty.project by eclipse.

the class OnPartialTest method toEventDriver.

public EventDriver toEventDriver(Object websocket) throws Throwable {
    WebSocketPolicy policy = WebSocketPolicy.newServerPolicy();
    policy.setInputBufferSize(1024);
    policy.setMaxBinaryMessageBufferSize(1024);
    policy.setMaxTextMessageBufferSize(1024);
    // Create EventDriver
    EventDriverImpl driverImpl = new JsrServerEndpointImpl();
    Class<?> endpoint = websocket.getClass();
    ServerEndpoint anno = endpoint.getAnnotation(ServerEndpoint.class);
    Assert.assertThat("Endpoint: " + endpoint + " should be annotated with @ServerEndpoint", anno, notNullValue());
    WebSocketContainerScope containerScope = new SimpleContainerScope(policy);
    // Event Driver Factory
    EventDriverFactory factory = new EventDriverFactory(containerScope);
    factory.addImplementation(new JsrServerEndpointImpl());
    ServerEndpointConfig config = new BasicServerEndpointConfig(containerScope, endpoint, "/");
    AnnotatedServerEndpointMetadata metadata = new AnnotatedServerEndpointMetadata(containerScope, endpoint, config);
    AnnotatedEndpointScanner<ServerEndpoint, ServerEndpointConfig> scanner = new AnnotatedEndpointScanner<>(metadata);
    scanner.scan();
    EndpointInstance ei = new EndpointInstance(websocket, config, metadata);
    EventDriver driver = driverImpl.create(ei, policy);
    Assert.assertThat("EventDriver", driver, notNullValue());
    // Create Local JsrSession
    String id = testname.getMethodName();
    URI requestURI = URI.create("ws://localhost/" + id);
    DummyConnection connection = new DummyConnection();
    ClientContainer container = new ClientContainer();
    container.start();
    @SuppressWarnings("resource") JsrSession session = new JsrSession(container, id, requestURI, driver, connection);
    session.setPolicy(policy);
    session.start();
    session.open();
    return driver;
}
Also used : WebSocketPolicy(org.eclipse.jetty.websocket.api.WebSocketPolicy) EventDriverFactory(org.eclipse.jetty.websocket.common.events.EventDriverFactory) ServerEndpointConfig(javax.websocket.server.ServerEndpointConfig) WebSocketContainerScope(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope) DummyConnection(org.eclipse.jetty.websocket.common.test.DummyConnection) ClientContainer(org.eclipse.jetty.websocket.jsr356.ClientContainer) EndpointInstance(org.eclipse.jetty.websocket.jsr356.endpoints.EndpointInstance) JsrSession(org.eclipse.jetty.websocket.jsr356.JsrSession) ServerEndpoint(javax.websocket.server.ServerEndpoint) URI(java.net.URI) EventDriver(org.eclipse.jetty.websocket.common.events.EventDriver) AnnotatedEndpointScanner(org.eclipse.jetty.websocket.jsr356.annotations.AnnotatedEndpointScanner) SimpleContainerScope(org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope) EventDriverImpl(org.eclipse.jetty.websocket.common.events.EventDriverImpl)

Example 9 with SimpleContainerScope

use of org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope in project jetty.project by eclipse.

the class ServerAnnotatedEndpointScanner_GoodSignaturesTest method testScan_Basic.

@Test
public void testScan_Basic() throws Exception {
    WebSocketContainerScope container = new SimpleContainerScope(WebSocketPolicy.newClientPolicy());
    AnnotatedServerEndpointMetadata metadata = new AnnotatedServerEndpointMetadata(container, testcase.pojo, null);
    AnnotatedEndpointScanner<ServerEndpoint, ServerEndpointConfig> scanner = new AnnotatedEndpointScanner<>(metadata);
    scanner.scan();
    Assert.assertThat("Metadata", metadata, notNullValue());
    JsrCallable method = (JsrCallable) testcase.metadataField.get(metadata);
    Assert.assertThat(testcase.metadataField.toString(), method, notNullValue());
    int len = testcase.expectedParameters.length;
    for (int i = 0; i < len; i++) {
        Class<?> expectedParam = testcase.expectedParameters[i];
        Class<?> actualParam = method.getParamTypes()[i];
        Assert.assertTrue("Parameter[" + i + "] - expected:[" + expectedParam + "], actual:[" + actualParam + "]", actualParam.equals(expectedParam));
    }
}
Also used : ServerEndpointConfig(javax.websocket.server.ServerEndpointConfig) WebSocketContainerScope(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope) JsrCallable(org.eclipse.jetty.websocket.jsr356.annotations.JsrCallable) AnnotatedEndpointScanner(org.eclipse.jetty.websocket.jsr356.annotations.AnnotatedEndpointScanner) SimpleContainerScope(org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope) ServerEndpoint(javax.websocket.server.ServerEndpoint) ServerEndpoint(javax.websocket.server.ServerEndpoint) Test(org.junit.Test)

Example 10 with SimpleContainerScope

use of org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope in project jetty.project by eclipse.

the class MessageOutputStreamTest method setupSession.

@Before
public void setupSession() throws Exception {
    policy = WebSocketPolicy.newServerPolicy();
    policy.setInputBufferSize(1024);
    policy.setMaxBinaryMessageBufferSize(1024);
    // Container
    WebSocketContainerScope containerScope = new SimpleContainerScope(policy, bufferPool);
    // Event Driver factory
    EventDriverFactory factory = new EventDriverFactory(containerScope);
    // local socket
    EventDriver driver = factory.wrap(new TrackingSocket("local"));
    // remote socket
    socket = new TrackingSocket("remote");
    OutgoingFrames socketPipe = FramePipes.to(factory.wrap(socket));
    session = new LocalWebSocketSession(containerScope, testname, driver);
    session.setPolicy(policy);
    // talk to our remote socket
    session.setOutgoingHandler(socketPipe);
    // start session
    session.start();
    // open connection
    session.open();
}
Also used : EventDriver(org.eclipse.jetty.websocket.common.events.EventDriver) LocalWebSocketSession(org.eclipse.jetty.websocket.common.io.LocalWebSocketSession) EventDriverFactory(org.eclipse.jetty.websocket.common.events.EventDriverFactory) WebSocketContainerScope(org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope) OutgoingFrames(org.eclipse.jetty.websocket.api.extensions.OutgoingFrames) SimpleContainerScope(org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope) Before(org.junit.Before)

Aggregations

SimpleContainerScope (org.eclipse.jetty.websocket.common.scopes.SimpleContainerScope)13 WebSocketContainerScope (org.eclipse.jetty.websocket.common.scopes.WebSocketContainerScope)9 Before (org.junit.Before)5 Test (org.junit.Test)5 ServerEndpoint (javax.websocket.server.ServerEndpoint)3 ServerEndpointConfig (javax.websocket.server.ServerEndpointConfig)3 WebSocketPolicy (org.eclipse.jetty.websocket.api.WebSocketPolicy)3 EventDriver (org.eclipse.jetty.websocket.common.events.EventDriver)3 EventDriverFactory (org.eclipse.jetty.websocket.common.events.EventDriverFactory)3 AnnotatedEndpointScanner (org.eclipse.jetty.websocket.jsr356.annotations.AnnotatedEndpointScanner)3 OutgoingFrames (org.eclipse.jetty.websocket.api.extensions.OutgoingFrames)2 LocalWebSocketSession (org.eclipse.jetty.websocket.common.io.LocalWebSocketSession)2 PrimitiveDecoderMetadataSet (org.eclipse.jetty.websocket.jsr356.decoders.PrimitiveDecoderMetadataSet)2 DecoderMetadataSet (org.eclipse.jetty.websocket.jsr356.metadata.DecoderMetadataSet)2 Matchers.containsString (org.hamcrest.Matchers.containsString)2 AdapterConnectCloseSocket (examples.AdapterConnectCloseSocket)1 ListenerBasicSocket (examples.ListenerBasicSocket)1 URI (java.net.URI)1 InvalidWebSocketException (org.eclipse.jetty.websocket.api.InvalidWebSocketException)1 NotASocket (org.eclipse.jetty.websocket.common.annotations.NotASocket)1