
http.0.2.source-code.Example Maven / Gradle / Ivy
import com.wizzardo.epoll.EpollCore;
import com.wizzardo.epoll.readable.ReadableByteBuffer;
import com.wizzardo.http.HttpServer;
import com.wizzardo.http.request.Header;
import com.wizzardo.http.response.Response;
import com.wizzardo.tools.json.JsonTools;
import java.io.IOException;
/**
* Created by mikhail.bobrutskov on 21/09/16.
*/
public class Example {
public static final byte[] HELLO_WORLD = "Hello, World!".getBytes();
private static ReadableByteBuffer staticResponse = new Response()
.appendHeader(Header.KEY_CONNECTION, Header.VALUE_KEEP_ALIVE)
.appendHeader(Header.KEY_CONTENT_TYPE, Header.VALUE_HTML_UTF8)
.setBody("Hello, World!".getBytes())
.buildStaticResponse();
public static class Message {
public String message;
public Message(String message) {
this.message = message;
}
}
public static void main(String[] args) throws IOException, InterruptedException {
System.out.println("epoll native is supported: " + EpollCore.SUPPORTED);
// Unchecked.run(() -> {
// Field field = EpollCore.class.getDeclaredField("SUPPORTED");
// field.setAccessible(true);
// field.setBoolean(null, false);
// });
// System.out.println("epoll native is supported: " + EpollCore.SUPPORTED);
HttpServer> application = new HttpServer(8081);
application.getUrlMapping()
.append("/plaintext", (request, response) -> response.setBody(HELLO_WORLD)
.appendHeader(Header.KV_CONTENT_TYPE_TEXT_PLAIN))
.append("/json", (request, response) -> response
.setBody(JsonTools.serializeToBytes(new Message("Hello, World!")))
.appendHeader(Header.KV_CONTENT_TYPE_APPLICATION_JSON))
.append("/plainstat", (request, response) -> response.setStaticResponse(staticResponse.copy()))
;
// application.setIoThreadsCount(16);
// application.setWorkersCount(8);
application.start();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy