接口 BeanCreateContext

    • 方法详细资料

      • putBeanCreateStrategy

        void putBeanCreateStrategy​(BeanCreateStrategy beanCreateStrategy)
        增加一种bean的类型创建策略
        参数:
        beanCreateStrategy -
      • getBeanCreateStrategy

        BeanCreateStrategy getBeanCreateStrategy​(BeanTypeEnum beanTypeEnum)
        获取一种bean的类型创建策略
        参数:
        beanTypeEnum -
      • removeCreatingBeanDefinition

        void removeCreatingBeanDefinition​(BeanDefinition beanDefinition)
        移除正在创建中的bean
        参数:
        beanDefinition -
      • isCircularDependenceBeanDefinition

        boolean isCircularDependenceBeanDefinition​(BeanDefinition beanDefinition)
        判断BeanDefinition是否是循环依赖, 同时也把当前的BeanDefinition放入正在创建的bean的缓存中
        参数:
        beanDefinition -
        返回:
      • checkFieldDefinitions

        void checkFieldDefinitions​(Set<FieldDefinition> annotationFiledDefinitions)
        检验字段的注入对象
        参数:
        annotationFiledDefinitions -
      • newInstance

        BeanDefinition newInstance​(BeanDefinition beanDefinition)
        初始化bean的第一步,通过反射生成对象, 同时改变下状态. 单独提取出来是因为很多地方会使用到这个方法
        参数:
        beanDefinition -
        返回:
      • checkMethodParam

        void checkMethodParam​(MethodDefinition methodBeanInvoke)
        检验方法的参数注入对象
        参数:
        methodBeanInvoke -
      • checkInitMethod

        void checkInitMethod​(MethodDefinition methodBeanInvoke)
        检查init方法是否符合要求
        参数:
        methodBeanInvoke -
      • doInitMethod

        void doInitMethod​(BeanDefinition beanDefinition)
        调用bean
        参数:
        beanDefinition -
      • injectFieldValue

        void injectFieldValue​(BeanDefinition beanDefinition)
        设置bean的字段属性值
        参数:
        beanDefinition -