From 290ae030fad8b182dc758d454bce8dcbca53ac4a Mon Sep 17 00:00:00 2001 From: Dmitry Voronin Date: Mon, 23 Sep 2024 15:44:03 +0300 Subject: [PATCH] Handler & Crawler : Add traits. --- src/main/scala/{main.scala => Main.scala} | 0 src/main/scala/model/crawler/Crawler.scala | 6 ++++++ .../scala/model/crawler/TitleCrawler.scala | 6 ++++++ src/main/scala/model/handler/Handler.scala | 8 ++++++++ .../model/handler/TitleCrawlerHandler.scala | 18 +++++++++--------- 5 files changed, 29 insertions(+), 9 deletions(-) rename src/main/scala/{main.scala => Main.scala} (100%) create mode 100644 src/main/scala/model/crawler/Crawler.scala create mode 100644 src/main/scala/model/crawler/TitleCrawler.scala create mode 100644 src/main/scala/model/handler/Handler.scala diff --git a/src/main/scala/main.scala b/src/main/scala/Main.scala similarity index 100% rename from src/main/scala/main.scala rename to src/main/scala/Main.scala diff --git a/src/main/scala/model/crawler/Crawler.scala b/src/main/scala/model/crawler/Crawler.scala new file mode 100644 index 0000000..9d8824a --- /dev/null +++ b/src/main/scala/model/crawler/Crawler.scala @@ -0,0 +1,6 @@ +package com.voronind.doublegis.test +package model.crawler + +trait Crawler { + +} diff --git a/src/main/scala/model/crawler/TitleCrawler.scala b/src/main/scala/model/crawler/TitleCrawler.scala new file mode 100644 index 0000000..89685f8 --- /dev/null +++ b/src/main/scala/model/crawler/TitleCrawler.scala @@ -0,0 +1,6 @@ +package com.voronind.doublegis.test +package model.crawler + +class TitleCrawler extends Crawler { + +} diff --git a/src/main/scala/model/handler/Handler.scala b/src/main/scala/model/handler/Handler.scala new file mode 100644 index 0000000..744a671 --- /dev/null +++ b/src/main/scala/model/handler/Handler.scala @@ -0,0 +1,8 @@ +package com.voronind.doublegis.test +package model.handler + +import com.sun.net.httpserver.HttpExchange + +trait Handler { + def handle(exchange: HttpExchange): Unit +} \ No newline at end of file diff --git a/src/main/scala/model/handler/TitleCrawlerHandler.scala b/src/main/scala/model/handler/TitleCrawlerHandler.scala index d94a71d..82ed35e 100644 --- a/src/main/scala/model/handler/TitleCrawlerHandler.scala +++ b/src/main/scala/model/handler/TitleCrawlerHandler.scala @@ -5,10 +5,10 @@ import model.lib.StreamUtil import com.sun.net.httpserver.{HttpExchange, HttpHandler} import java.io.InputStream -class TitleCrawlerHandler extends HttpHandler { - def handle(t: HttpExchange): Unit = { - log(t.getRequestBody) - sendResponse(t) +class TitleCrawlerHandler extends HttpHandler, Handler { + override def handle(exchange: HttpExchange): Unit = { + log(exchange.getRequestBody) + sendResponse(exchange) } private def log(body: InputStream): Unit = { @@ -17,12 +17,12 @@ class TitleCrawlerHandler extends HttpHandler { println() } - private def sendResponse(t: HttpExchange): Unit = { + private def sendResponse(exchange: HttpExchange): Unit = { val response = "Ack!" - t.sendResponseHeaders(200, response.length()) - val os = t.getResponseBody - os.write(response.getBytes) - os.close() + exchange.sendResponseHeaders(200, response.length()) + val out = exchange.getResponseBody + out.write(response.getBytes) + out.close() } }