Package io.jmix.reports.impl
Class AnnotatedReportScannerImpl
java.lang.Object
io.jmix.reports.impl.AnnotatedReportScannerImpl
- All Implemented Interfaces:
AnnotatedReportScanner,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware
@Component("reports_AnnotatedReportScanner")
public class AnnotatedReportScannerImpl
extends Object
implements AnnotatedReportScanner, org.springframework.context.ApplicationContextAware
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.springframework.context.ApplicationContextprotected final ClassManagerprotected final AnnotatedGroupBuilderprotected final AnnotatedReportBuilderprotected final AnnotatedReportGroupHolderprotected final AnnotatedReportHolder -
Constructor Summary
ConstructorsConstructorDescriptionAnnotatedReportScannerImpl(AnnotatedReportBuilder reportBuilder, AnnotatedReportHolder reportHolder, AnnotatedGroupBuilder groupBuilder, AnnotatedReportGroupHolder reportGroupHolder, ClassManager classManager) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringfindExistingBeanNameByClassName(String className, Class<? extends Annotation> annotationMarkerClass) protected StringgetBeanName(org.springframework.beans.factory.config.AutowireCapableBeanFactory beanFactory, org.springframework.beans.factory.config.BeanDefinition beanDefinition) protected org.springframework.context.annotation.AnnotationBeanNameGeneratorgetBeanNamesToDelete(String beanName, String className, Class<? extends Annotation> annotationMarkerClass) protected voidimportGroupDefinition(Object bean, String beanName) voidScan and import group definitions from application context.protected voidimportReportDefinition(Object bean, String beanName) voidScan and import report definitions from application context.voidloadReportClass(String className) Reloads annotated report definition for hot-deploy.voidloadReportGroupClass(String className) Reloads annotated report group definition for hot-deploy.protected voidreplaceBeanInContext(org.springframework.beans.factory.config.AutowireCapableBeanFactory beanFactory, org.springframework.beans.factory.config.BeanDefinition beanDefinition, String beanName, List<String> beanNamesToDelete) voidsetApplicationContext(org.springframework.context.ApplicationContext applicationContext)
-
Field Details
-
applicationContext
protected org.springframework.context.ApplicationContext applicationContext -
reportBuilder
-
reportHolder
-
groupBuilder
-
reportGroupHolder
-
classManager
-
-
Constructor Details
-
AnnotatedReportScannerImpl
public AnnotatedReportScannerImpl(AnnotatedReportBuilder reportBuilder, AnnotatedReportHolder reportHolder, AnnotatedGroupBuilder groupBuilder, AnnotatedReportGroupHolder reportGroupHolder, ClassManager classManager)
-
-
Method Details
-
importGroupDefinitions
public void importGroupDefinitions()Description copied from interface:AnnotatedReportScannerScan and import group definitions from application context. Imported definitions are stored inAnnotatedReportGroupHolder.- Specified by:
importGroupDefinitionsin interfaceAnnotatedReportScanner- See Also:
-
importGroupDefinition
-
importReportDefinitions
public void importReportDefinitions()Description copied from interface:AnnotatedReportScannerScan and import report definitions from application context. Imported definitions are stored inAnnotatedReportHolder.- Specified by:
importReportDefinitionsin interfaceAnnotatedReportScanner- See Also:
-
importReportDefinition
-
setApplicationContext
public void setApplicationContext(org.springframework.context.ApplicationContext applicationContext) throws org.springframework.beans.BeansException - Specified by:
setApplicationContextin interfaceorg.springframework.context.ApplicationContextAware- Throws:
org.springframework.beans.BeansException
-
loadReportGroupClass
Description copied from interface:AnnotatedReportScannerReloads annotated report group definition for hot-deploy.- Specified by:
loadReportGroupClassin interfaceAnnotatedReportScanner- Parameters:
className- fully-qualified name of the annotated report group class
-
loadReportClass
Description copied from interface:AnnotatedReportScannerReloads annotated report definition for hot-deploy.- Specified by:
loadReportClassin interfaceAnnotatedReportScanner- Parameters:
className- fully-qualified name of the annotated report class
-
replaceBeanInContext
-
getBeanNamesToDelete
-
findExistingBeanNameByClassName
@Nullable protected String findExistingBeanNameByClassName(String className, Class<? extends Annotation> annotationMarkerClass) -
getBeanName
protected String getBeanName(org.springframework.beans.factory.config.AutowireCapableBeanFactory beanFactory, org.springframework.beans.factory.config.BeanDefinition beanDefinition) -
getBeanNameGenerator
protected org.springframework.context.annotation.AnnotationBeanNameGenerator getBeanNameGenerator()
-