Package com.poscoict.glueframework.boot
Class GlueCoreAutoConfiguration
java.lang.Object
com.poscoict.glueframework.boot.GlueCoreAutoConfiguration
@AutoConfiguration
@ConditionalOnClass(GlueServiceManagerImpl.class)
public class GlueCoreAutoConfiguration
extends Object
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionSpring Boot ApplicationContext를 래핑하는 GlueBeanFactory를 등록한다.글루 에서쓰는 캐시매니저는 2개, # GlueEhCacheManager# GlueJCSCacheManager 이걸, appication.properties에서 선택할수 있게함 # EHCache 사용 (기본값 - 생략해도 됨) glue.cache.type=ehcache # JCS 사용으로 전환 glue.cache.type=jcs EHCache 기반의 GlueCacheManager를 자동 등록한다.JCS 기반의GlueCacheManager를 자동 등록한다.glueServiceDBLoader(DataSource dataSource) DB 기반의GlueServiceDBLoader를 자동 등록한다.glueServiceLoader(String rootPath, List<String> extraServiceFiles) 글루에서 쓰는 서비스로더는 2개, # GlueServiceLoader# GlueServiceDBLoader 이걸, appication.properties에서 선택할수 있게함 # 기본 ServiceLoader 사용 (기본값 - *-service.xml을 가져오네) glue.service.loader=xml # GlueServiceDBLoader 사용 glue.service.loader=db CONFIG_PATH 시스템 프로퍼티 경로에서 *-service.xml파일을 로딩한다.
DB에서 로딩하려면glue.service.loader=db로 설정한다.glueServiceManager(GlueCacheManager cacheManager, GlueCacheLoader serviceLoader, boolean preloading) Glue 비즈니스 서비스를 관리하는GlueServiceManager를 자동 등록한다.
-
Constructor Details
-
GlueCoreAutoConfiguration
-
-
Method Details
-
glueBeanFactory
Spring Boot ApplicationContext를 래핑하는 GlueBeanFactory를 등록한다.이 Bean이 생성되는 시점에
GlueStaticContext.setApplicationContext(ApplicationContext)가 호출되어 전체 Glue 프레임워크가 Boot의 ApplicationContext를 사용하도록 설정된다.또한 JVM 기동 시
static블록에서 수행된 라이선스/프로퍼티 초기화를 Spring Bean 라이프사이클 안에서 재실행한다.-DCONFIG_PATH없이glue.config.path만 설정된 Boot 환경에서는static블록 시점에 경로가 없어 EDUCATION 모드로 fallback되므로, 이 시점에 재로드하여 정상적으로 라이선스와 프로퍼티를 적용한다. -
glueCacheManager
@Bean("cacheManager") @ConditionalOnMissingBean(name="cacheManager") @ConditionalOnProperty(prefix="glue.cache", name="type", havingValue="ehcache", matchIfMissing=true) public GlueCacheManager glueCacheManager()글루 에서쓰는 캐시매니저는 2개, # GlueEhCacheManager# GlueJCSCacheManager 이걸, appication.properties에서 선택할수 있게함 # EHCache 사용 (기본값 - 생략해도 됨) glue.cache.type=ehcache # JCS 사용으로 전환 glue.cache.type=jcs EHCache 기반의 GlueCacheManager를 자동 등록한다.(ehcache가 기본) classpath 루트의ehcache.xml을 기본으로 사용하고 JCS를 사용하려면glue.cache.type=jcs로 설정한다 다른 경로나 커스텀 설정이 필요하면@Bean("cacheManager")으로 재정의한다. src/main/resources/ ├── ehcache.xml ← EHCache 설정, 여기에 있으면 자동으로 로딩됨 (classpath 루트) └── cache.ccf ← JCS 설정 (classpath 루트)- Returns:
- GlueCacheManager (EHCache 구현체)
-
glueJCSCacheManager
@Bean("cacheManager") @ConditionalOnMissingBean(name="cacheManager") @ConditionalOnProperty(prefix="glue.cache", name="type", havingValue="jcs") public GlueCacheManager glueJCSCacheManager()JCS 기반의GlueCacheManager를 자동 등록한다.glue.cache.type=jcs 설정시 활성화 classpath 루트의
cache.ccf를 기본 설정 파일로 사용한다.- Returns:
- GlueCacheManager (JCS 구현체)
-
glueServiceLoader
@Bean("serviceLoader") @ConditionalOnMissingBean(name="serviceLoader") @ConditionalOnProperty(prefix="glue.service", name="loader", havingValue="xml", matchIfMissing=true) public GlueCacheLoader glueServiceLoader(@Value("${glue.service.root-path:service}") String rootPath, @Value("${glue.service.extra-files:#{null}}") List<String> extraServiceFiles) 글루에서 쓰는 서비스로더는 2개, # GlueServiceLoader# GlueServiceDBLoader 이걸, appication.properties에서 선택할수 있게함 # 기본 ServiceLoader 사용 (기본값 - *-service.xml을 가져오네) glue.service.loader=xml # GlueServiceDBLoader 사용 glue.service.loader=db CONFIG_PATH 시스템 프로퍼티 경로에서 *-service.xml파일을 로딩한다.
DB에서 로딩하려면glue.service.loader=db로 설정한다.- Returns:
- GlueCacheLoader (GlueServiceLoader 구현체)
-
glueServiceDBLoader
@Bean("serviceLoader") @ConditionalOnMissingBean(name="serviceLoader") @ConditionalOnProperty(prefix="glue.service", name="loader", havingValue="db") @ConditionalOnBean(javax.sql.DataSource.class) public GlueCacheLoader glueServiceDBLoader(DataSource dataSource) DB 기반의GlueServiceDBLoader를 자동 등록한다.glue.service.loader=db설정 시 활성화 Service 정의를 파일이 아닌 DB에서 로딩한다.DataSourceBean이 반드시 존재해야 한다.- Parameters:
dataSource- DB에서 Service 정의를 읽을 DataSource- Returns:
- GlueCacheLoader (GlueServiceDBLoader 구현체)
-
glueServiceManager
@Bean("serviceManager") @ConditionalOnMissingBean(name="serviceManager") public GlueServiceManager glueServiceManager(GlueCacheManager cacheManager, @Qualifier("serviceLoader") GlueCacheLoader serviceLoader, @Value("${glue.service.preloading:false}") boolean preloading) Glue 비즈니스 서비스를 관리하는GlueServiceManager를 자동 등록한다.사용 예# 1 <bean id="serviceManager" class="com.poscoict.glueframework.biz.control.GlueServiceManagerImpl"> <property name="cacheManager" ref="cacheManager" /> <property name="serviceLoader" ref="serviceLoader" /> </bean> 사용 예# 2 <bean id="serviceManager" class="com.poscoict.glueframework.biz.control.GlueServiceManagerImpl"> <property name="cacheManager" ref="cacheManager" /> <property name="serviceLoader" ref="serviceLoader" /> <property name="preloading" value="true" /> </bean>- Parameters:
cacheManager- 자동 구성되거나 사용자 정의된 GlueCacheManagerserviceLoader- 자동 구성되거나 사용자 정의된 serviceLoader- Returns:
- GlueServiceManager
-