001
014
015 package com.liferay.portal.spring.context;
016
017 import com.liferay.portal.module.framework.ModuleFrameworkUtilAdapter;
018
019 import org.springframework.context.ApplicationEvent;
020 import org.springframework.context.ApplicationListener;
021 import org.springframework.context.event.ContextClosedEvent;
022 import org.springframework.context.event.ContextRefreshedEvent;
023
024
027 public class ServiceBeanPublisher
028 implements ApplicationListener<ApplicationEvent> {
029
030 @Override
031 public void onApplicationEvent(ApplicationEvent applicationEvent) {
032 if (applicationEvent instanceof ContextClosedEvent) {
033 ContextClosedEvent contextClosedEvent =
034 (ContextClosedEvent)applicationEvent;
035
036 ModuleFrameworkUtilAdapter.unregisterContext(
037 contextClosedEvent.getApplicationContext());
038 }
039 else if (applicationEvent instanceof ContextRefreshedEvent) {
040 ContextRefreshedEvent contextRefreshedEvent =
041 (ContextRefreshedEvent)applicationEvent;
042
043 ModuleFrameworkUtilAdapter.registerContext(
044 contextRefreshedEvent.getApplicationContext());
045 }
046 }
047
048 }