anchor.diff:  * `ProcessInjectionTarget` and `ProcessProducer`
   * `ProcessInjectionPoint`
   * `ProcessBeanAttributes`
  -* `ProcessBean`, `ProcessManagedBean`, `ProcessSessionBean`,
  -`ProcessProducerMethod` and `ProcessProducerField`
  -* `ProcessObserverMethod`
  +* `ProcessBean`, `ProcessManagedBean`, `ProcessSessionBean`, `ProcessProducerMethod`, `ProcessProducerField` and `ProcessSyntheticBean`
  +* `ProcessObserverMethod` and `ProcessSyntheticObserverMethod`
   * `AfterBeanDiscovery`
   * `AfterDeploymentValidation`
   
  
positive.code: }
  --------------------------------------------------------------------
  
  The `BeanManager` provides two utility methods for creating the
  `BeanAttributes` object from scratch:
  
  [source.JAVA, java]
  
negative.code: 
  === The `BeanManager` object
  
  The nerve center for extending CDI is the `BeanManager` object.
  The `BeanManager` interface provides operations of use to portable extensions, e.g. lets us obtain beans, interceptors, decorators, observers and contexts programmatically.
  Note that some of the methods may not be called before the `AfterBeanDiscovery` event is fired, e.g. `BeanManager.getBeans()`.
  Furthermore, the `BeanManager.getReference()` and `BeanManager.getInjectableReference()` methods may not be called  before the `AfterDeploymentValidation` event is fired.
  See also the javadoc for more details.
  
  Any container lifecycle event observer method can obtain an injected `BeanManager` reference:
  
  [source.JAVA, java]
  ----------------------------------------------------------------------------------------
  void afterBeanDiscovery(@Observes AfterBeanDiscovery event, BeanManager beanManager) {};
  ----------------------------------------------------------------------------------------
  
  Any bean or other Java EE component which supports injection can obtain
  an instance of `BeanManager` via injection:
  