protected Object getInjectionObjectInstance ( Object targetObject , InjectionTargetContext targetContext ) throws Exception { ObjectFactory objectFactory = ivObjectFactory ; // volatile-read InjectionObjectFactory injObjFactory = ivInjectionObjectFactory ; if ( objectFactory == null ) { try { InternalInjectionEngine ie = InjectionEngineAccessor . getInternalInstance ( ) ; objectFactory = ie . getObjectFactory ( ivObjectFactoryClassName , ivObjectFactoryClass ) ; // F54050 if ( objectFactory instanceof InjectionObjectFactory ) // F49213.1 { injObjFactory = ( InjectionObjectFactory ) objectFactory ; ivInjectionObjectFactory = injObjFactory ; } ivObjectFactory = objectFactory ; // volatile-write } catch ( Throwable ex ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) Tr . debug ( tc , "getInjectionObjectInstance" , ex ) ; Tr . error ( tc , "OBJECT_FACTORY_CLASS_FAILED_TO_LOAD_CWNEN0024E" , ivObjectFactoryClassName ) ; throw new InjectionException ( ex . toString ( ) , ex ) ; } } if ( injObjFactory != null ) // F49213.1 { return injObjFactory . getInjectionObjectInstance ( ( Reference ) getBindingObject ( ) , targetObject , targetContext ) ; } return objectFactory . getObjectInstance ( getBindingObject ( ) , null , null , null ) ; }
F48603 . 4