App.java 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. package hello;
  2. import java.time.ZoneOffset;
  3. import java.time.ZonedDateTime;
  4. import java.time.format.DateTimeFormatter;
  5. import com.linecorp.armeria.common.HttpHeaderNames;
  6. import com.linecorp.armeria.server.Server;
  7. import com.linecorp.armeria.server.ServerBuilder;
  8. import hello.services.HelloService;
  9. import hello.services.PostgresDbService;
  10. import hello.services.PostgresFortunesService;
  11. public final class App {
  12. public static void main(String[] args) {
  13. ServerBuilder sb = new ServerBuilder();
  14. sb.http(8080)
  15. .annotatedService(new HelloService())
  16. .annotatedService(new PostgresDbService())
  17. .annotatedService(new PostgresFortunesService())
  18. .decorator((delegate, ctx, req) -> {
  19. ctx.addAdditionalResponseHeader(HttpHeaderNames.SERVER, "armeria");
  20. ctx.addAdditionalResponseHeader(HttpHeaderNames.DATE,
  21. DateTimeFormatter.RFC_1123_DATE_TIME.format(
  22. ZonedDateTime.now(ZoneOffset.UTC)));
  23. return delegate.serve(ctx, req);
  24. });
  25. Server server = sb.build();
  26. server.start().join();
  27. }
  28. }