diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 6de1836..3ad86aa 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -41,8 +41,8 @@ tasks.asciidoctor {
dependencies {
implementation(project(":sitemap"))
implementation(project(":linkback"))
+ implementation(project(":web-app"))
- implementation(project(":address-finder"))
implementation("com.vladsch.flexmark:flexmark-all:0.62.2")
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
diff --git a/app/src/main/java/com/elex_project/asgard/Application.java b/app/src/main/java/com/elex_project/asgard/Application.java
index 92a6f8d..7eb91ac 100644
--- a/app/src/main/java/com/elex_project/asgard/Application.java
+++ b/app/src/main/java/com/elex_project/asgard/Application.java
@@ -31,4 +31,5 @@ public class Application {
}
}
+
}
diff --git a/app/src/main/java/com/elex_project/asgard/config/AsgardCacheCustomizer.java b/app/src/main/java/com/elex_project/asgard/config/AsgardCacheCustomizer.java
new file mode 100644
index 0000000..a45fed2
--- /dev/null
+++ b/app/src/main/java/com/elex_project/asgard/config/AsgardCacheCustomizer.java
@@ -0,0 +1,24 @@
+/*
+ * Project Asgard
+ *
+ * Copyright (c) 2021. Elex. All Rights Reserved.
+ * https://www.elex-project.com/
+ */
+
+package com.elex_project.asgard.config;
+
+import org.springframework.boot.autoconfigure.cache.CacheManagerCustomizer;
+import org.springframework.cache.concurrent.ConcurrentMapCacheManager;
+import org.springframework.stereotype.Component;
+
+import java.util.Arrays;
+
+@Component
+public class AsgardCacheCustomizer implements CacheManagerCustomizer {
+
+ @Override
+ public void customize(ConcurrentMapCacheManager cacheManager) {
+ cacheManager.setCacheNames(Arrays
+ .asList("sitemap", "syndication/rss", "syndication/atom"));
+ }
+}
diff --git a/app/src/main/java/com/elex_project/asgard/config/Config.java b/app/src/main/java/com/elex_project/asgard/config/Config.java
index fc77425..4d21b80 100644
--- a/app/src/main/java/com/elex_project/asgard/config/Config.java
+++ b/app/src/main/java/com/elex_project/asgard/config/Config.java
@@ -9,6 +9,8 @@ package com.elex_project.asgard.config;
import com.elex_project.asgard.supplements.Markdown;
import com.elex_project.asgard.view.AsgardLocaleResolver;
+import org.springframework.cache.CacheManager;
+import org.springframework.cache.support.SimpleCacheManager;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.LocaleResolver;
@@ -16,32 +18,14 @@ import org.springframework.web.servlet.LocaleResolver;
@Configuration
public class Config {
- /*@Bean
- public RestTemplate restTemplate() {
- return new RestTemplate();
- }
-*/
- /*@Bean
- public HttpTraceRepository httpTraceRepository() {
- return new InMemoryHttpTraceRepository();
- }*/
-
-
/**
* Locale resolver, 디폴트 로캐일을 지정한다.
*/
@Bean
public LocaleResolver localeResolver() {
- /*SessionLocaleResolver localeResolver = new SessionLocaleResolver();
- localeResolver.setDefaultLocale(Locale.ENGLISH);
- localeResolver.setLocaleAttributeName("lc");
- localeResolver.setTimeZoneAttributeName("tz");
- return localeResolver;*/
-
return new AsgardLocaleResolver();
}
-
/**
* Markdown parser
*
diff --git a/app/src/main/java/com/elex_project/asgard/controller/BaseController.java b/app/src/main/java/com/elex_project/asgard/controller/BaseController.java
deleted file mode 100644
index 350240f..0000000
--- a/app/src/main/java/com/elex_project/asgard/controller/BaseController.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Project Asgard
- *
- * Copyright (c) 2021. Elex. All Rights Reserved.
- * https://www.elex-project.com/
- */
-
-package com.elex_project.asgard.controller;
-
-import org.jetbrains.annotations.NotNull;
-import org.springframework.web.context.request.RequestAttributes;
-import org.springframework.web.context.request.RequestContextHolder;
-import org.springframework.web.context.request.ServletRequestAttributes;
-
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import java.net.URI;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Optional;
-
-abstract class BaseController {
-
- /*@NotNull
- protected Map map() {
- final HashMap map = new HashMap<>();
- map.put("html_lang", lang());
- return map;
- }
-
- @NotNull
- private String lang() {
- return getHttpRequest()
- .map(request -> request.getLocale().toLanguageTag())
- .orElse("en");
- }
-
- @NotNull
- protected URI getRequestURI() {
- return getHttpRequest()
- .map(request -> URI.create(request.getRequestURI()))
- .orElse(URI.create("/"));
- }
-
- private Optional getRequestAttributes() {
- return Optional
- .ofNullable((ServletRequestAttributes) RequestContextHolder.getRequestAttributes());
- }
-
- protected Optional getHttpRequest() {
- return getRequestAttributes()
- .map(ServletRequestAttributes::getRequest);
- }
-
- protected Optional getHttpResponse() {
- return getRequestAttributes()
- .map(ServletRequestAttributes::getResponse);
- }
-
- @NotNull
- protected String[] getAttributeNames() {
- return getRequestAttributes()
- .map(attr -> attr.getAttributeNames(RequestAttributes.SCOPE_REQUEST))
- .orElse(new String[0]);
- }
-
- @NotNull
- protected String[] getSessionAttributeNames() {
- return getRequestAttributes()
- .map(attr -> attr.getAttributeNames(RequestAttributes.SCOPE_SESSION))
- .orElse(new String[0]);
- }
-
- @NotNull
- protected Optional
-