48    def __findComponents(self, ca):
 
   49        if ca 
is not PropSetterProxy.__scannedCA:
 
   50            PropSetterProxy.__scannedCA = ca
 
   51            PropSetterProxy.__compPaths = {}
 
   52            def __add(path, comp):
 
   53                if comp.getName() == 
"":
 
   55                PropSetterProxy.__compPaths[ path ] = comp
 
   58            for svc 
in ca._services:
 
   59                PropSetterProxy.__compPaths[
'SvcMgr/'+svc.getFullJobOptName()] = svc
 
   60            for t 
in ca._publicTools:
 
   61                PropSetterProxy.__compPaths[
'ToolSvc/'+t.getFullJobOptName()] = t
 
   62            for t 
in ca._conditionsAlgs:
 
   63                PropSetterProxy.__compPaths[t.getFullJobOptName()] = t
 
   65                for t 
in ca._privateTools:
 
   66                    PropSetterProxy.__compPaths[t.getFullJobOptName()] = t
 
   68            def __nestAlg(startpath, comp): 
 
   69                if comp.getName() == 
"":
 
   71                for name, value 
in comp._descriptors.items():
 
   72                    if isinstance(value.cpp_type, (ConfigurableAlgTool, PrivateToolHandle)):
 
   73                        __add( startpath+
"/"+name+
"/"+value.getFullJobOptName(), value )
 
   74                        __nestAlg( startpath+
"/"+name+
"/"+value.getName(), value )
 
   75                    if isinstance( value.cpp_type, PrivateToolHandleArray):
 
   76                        for toolIndex,t 
in enumerate(value):
 
   77                            __add( startpath+
"/"+name+
"/"+t.getFullJobOptName(), t )
 
   78                            __nestAlg( startpath+
"/"+name+
"/"+t.getName(), value[toolIndex] )
 
   81            def __nestSeq( startpath, seq ):
 
   84                        __nestSeq( startpath+
"/"+c.getName(), c )                       
 
   86                        __add( startpath+
"/"+c.getFullJobOptName(),  c )
 
   87                        __nestAlg( startpath+
"/"+c.getFullJobOptName(), c )
 
   89            __nestSeq(
"", ca._sequence)