1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- <!doctype html>
- <title>CodeMirror: Kotlin mode</title>
- <meta charset="utf-8"/>
- <link rel=stylesheet href="../../doc/docs.css">
- <link rel="stylesheet" href="../../lib/codemirror.css">
- <script src="../../lib/codemirror.js"></script>
- <script src="kotlin.js"></script>
- <style type="text/css">.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
- <div id=nav>
- <a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png"></a>
- <ul>
- <li><a href="../../index.html">Home</a>
- <li><a href="../../doc/manual.html">Manual</a>
- <li><a href="https://github.com/codemirror/codemirror">Code</a>
- </ul>
- <ul>
- <li><a href="../index.html">Language modes</a>
- <li><a class=active href="#">Kotlin</a>
- </ul>
- </div>
- <article>
- <h2>Kotlin mode</h2>
- <div><textarea id="code" name="code">
- package org.wasabi.http
- import java.util.concurrent.Executors
- import java.net.InetSocketAddress
- import org.wasabi.app.AppConfiguration
- import io.netty.bootstrap.ServerBootstrap
- import io.netty.channel.nio.NioEventLoopGroup
- import io.netty.channel.socket.nio.NioServerSocketChannel
- import org.wasabi.app.AppServer
- public class HttpServer(private val appServer: AppServer) {
- val bootstrap: ServerBootstrap
- val primaryGroup: NioEventLoopGroup
- val workerGroup: NioEventLoopGroup
- {
- // Define worker groups
- primaryGroup = NioEventLoopGroup()
- workerGroup = NioEventLoopGroup()
- // Initialize bootstrap of server
- bootstrap = ServerBootstrap()
- bootstrap.group(primaryGroup, workerGroup)
- bootstrap.channel(javaClass<NioServerSocketChannel>())
- bootstrap.childHandler(NettyPipelineInitializer(appServer))
- }
- public fun start(wait: Boolean = true) {
- val channel = bootstrap.bind(appServer.configuration.port)?.sync()?.channel()
- if (wait) {
- channel?.closeFuture()?.sync()
- }
- }
- public fun stop() {
- // Shutdown all event loops
- primaryGroup.shutdownGracefully()
- workerGroup.shutdownGracefully()
- // Wait till all threads are terminated
- primaryGroup.terminationFuture().sync()
- workerGroup.terminationFuture().sync()
- }
- }
- </textarea></div>
- <script>
- var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
- mode: {name: "kotlin"},
- lineNumbers: true,
- indentUnit: 4
- });
- </script>
- <h3>Mode for Kotlin (http://kotlin.jetbrains.org/)</h3>
- <p>Developed by Hadi Hariri (https://github.com/hhariri).</p>
- <p><strong>MIME type defined:</strong> <code>text/x-kotlin</code>.</p>
- </article>
|