Skip to content

Commit

Permalink
Merge pull request #20327 from ia3andy/websockets-codestart
Browse files Browse the repository at this point in the history
  • Loading branch information
ia3andy authored Sep 28, 2021
2 parents cf07662 + d0e83ce commit cc313d0
Show file tree
Hide file tree
Showing 13 changed files with 188 additions and 248 deletions.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: websockets-codestart
ref: websockets
type: code
tags: extension-codestart
metadata:
title: WebSockets
description: WebSocket communication channel starter code
related-guide-section: https://quarkus.io/guides/websockets
language:
base:
dependencies:
- io.quarkus:quarkus-websockets
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
package ilove.quark.us;

import javax.enterprise.context.ApplicationScoped;
import javax.websocket.EncodeException;
import javax.websocket.OnClose;
import javax.websocket.OnError;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
import java.io.IOException;

import static java.util.Objects.requireNonNull;

@ServerEndpoint("/start-websocket/{name}")
@ApplicationScoped
public class StartWebSocket {

@OnOpen
public void onOpen(Session session, @PathParam("name") String name) {
System.out.println("onOpen> " + name);
}

@OnClose
public void onClose(Session session, @PathParam("name") String name) {
System.out.println("onClose> " + name);
}

@OnError
public void onError(Session session, @PathParam("name") String name, Throwable throwable) {
System.out.println("onError> " + name + ": " + throwable);
}

@OnMessage
public void onMessage(String message, @PathParam("name") String name) {
System.out.println("onMessage> " + name + ": " + message);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package ilove.quark.us

import java.io.IOException
import javax.enterprise.context.ApplicationScoped
import javax.websocket.*
import javax.websocket.server.PathParam
import javax.websocket.server.ServerEndpoint

@ServerEndpoint("/start-websocket/{name}")
@ApplicationScoped
class StartWebSocket {

@OnOpen
fun onOpen(session: Session?, @PathParam("name") name: String) {
println("onOpen> $name")
}

@OnClose
fun onClose(session: Session?, @PathParam("name") name: String) {
println("onClose> $name")
}

@OnError
fun onError(session: Session?, @PathParam("name") name: String, throwable: Throwable) {
println("onError> $name: $throwable")
}

@OnMessage
fun onMessage(message: String, @PathParam("name") name: String) {
println("onMessage> $name: $message")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,10 @@ metadata:
- "web"
status: "stable"
codestart:
name: "undertow-websockets"
kind: "example"
languages: "java"
name: "websockets"
languages:
- "java"
- "kotlin"
artifact: "io.quarkus:quarkus-project-core-extension-codestarts"
config:
- "quarkus.websocket."
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package io.quarkus.devtools.codestarts.quarkus;

import static io.quarkus.devtools.codestarts.quarkus.QuarkusCodestartCatalog.Language.JAVA;
import static io.quarkus.devtools.codestarts.quarkus.QuarkusCodestartCatalog.Language.KOTLIN;

import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.condition.EnabledIfSystemProperty;
import org.junit.jupiter.api.extension.RegisterExtension;

import io.quarkus.devtools.testing.codestarts.QuarkusCodestartTest;

public class WebSocketsCodestartTest {

@RegisterExtension
public static QuarkusCodestartTest codestartTest = QuarkusCodestartTest.builder()
.codestarts("websockets")
.languages(JAVA, KOTLIN)
.build();

@Test
void testContent() throws Throwable {
codestartTest.checkGeneratedSource("org.acme.StartWebSocket");
}

@Test
@EnabledIfSystemProperty(named = "build-projects", matches = "true")
void buildAllProjectsForLocalUse() throws Throwable {
codestartTest.buildAllProjects();
}
}
Loading

0 comments on commit cc313d0

Please sign in to comment.