code: public void addObservableListener(ObservableListener<T> listener)
  	{
  		checkBeanBound();
  		checkNotNull(listener, "listener cannot be null");
  		
  		PropertyChangeListener adapter = new ObservableListenerAdapter(listener);
  		
  		// remember adapter so we can remove it in removeObservableListener
  		adaptersByListener.put(listener, adapter);
  		
  		BeanUtils.addPropertyChangeListener(bean, adapter);
  	}
docs: {@inheritDoc}