mò
˜B«Lc           @   s2   d  k  Z  d  k Z d f  d „  ƒ  YZ d „  Z d  S(   Nt   CommandLoaderc           B   s,   t  Z d „  Z d „  Z d „  Z d „  Z RS(   Nc         C   sA   t  i i | d d d d ƒ |  _ h  |  _ h  |  _ |  i ƒ  d  S(   Nt	   frameworkt   pymt   playt   commands(   t   ost   patht   joint	   play_patht   selfR   t   modulest	   load_core(   R	   R   (    (    tZ   /afs/cs.wisc.edu/p/zhu/public/html/space2/dualist/play-1.1/framework/pym/play/cmdloader.pyt   __init__   s    !		c         C   ss   xl t  i |  i ƒ D]X } | d j oE | i d ƒ o5 | i d d ƒ } t | |  i ƒ } |  i
 | ƒ q q Wd  S(   Ns   __init__.pys   .pyt    (   R   t   listdirR	   R   t   filenamet   endswitht   replacet   namet   load_python_modulet   modt   _load_cmd_from(   R	   R   R   R   (    (    R   R      s     c         C   s_   yQ t  i i | ƒ i d ƒ d } t i | t  i i | d ƒ ƒ } |  i | ƒ Wn n Xd  S(   Nt   .i    s   commands.py(   R   R   t   basenamet   modnamet   splitt   leafnamet   impt   load_sourceR   R   R	   R   (   R	   R   R   R   (    (    R   t   load_play_module   s    !c         C   sŒ   yi x; | i D]0 } | |  i j o d | GHn | |  i | <q Wd t | ƒ j o | |  i | i <n Wn t j
 o d | GHn Xd  S(   Ns   ~ Warning: conflict on command t   MODULEs!   ~ Warning: error loading command (	   R   t   COMMANDSR   R	   R   t   dirR
   R   t	   Exception(   R	   R   R   (    (    R   R      s    
 (   t   __name__t
   __module__R   R   R   R   (    (    (    R   R       s   			c         C   s7   t  i |  | g ƒ } t  i |  | d | d | d ƒ S(   Ni    i   i   (   R   t   find_moduleR   t   locationt   mod_desct   load_module(   R   R&   R'   (    (    R   R   %   s    (   R   R   R    R   (   R   R   R   R    (    (    R   t   ?   s   		!