# `TaurusConfigurationProxy`

digraph inheritance65e0f9a0ce { bgcolor=transparent; rankdir=UD; ratio=compress; size="8.0, 12.0"; "TaurusConfigurationProxy" [URL="#taurus.core.taurusconfiguration.TaurusConfigurationProxy",color=dodgerblue1,fillcolor=white,fontcolor=black,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.5,shape=box,style=rounded,target="_top",tooltip="TaurusAttribute has a reference to TaurusConfiguration and it should"]; }

class TaurusConfigurationProxy(**kwargs)

  TaurusAttribute has a reference to TaurusConfiguration and it should also have a reference to TaurusAttribute. To solve this cyclic dependency, TaurusConfiguration has a weak reference to TaurusAttribute. But then we must be sure that no other references to TaurusConfiguration exist so that no one tries to use it after its TaurusAttribute has disappeared. That’s why to the outside world we don’t give access to it directly but to objects of this new TaurusConfigurationProxy class.

  Import from `taurus.core.taurusconfiguration` as:

      from taurus.core.taurusconfiguration import TaurusConfigurationProxy

  getRealConfigClass()