%PDF- %PDF-
Direktori : /usr/lib/python2.7/site-packages/salt/utils/ |
Current File : //usr/lib/python2.7/site-packages/salt/utils/context.pyo |
� ���^c @@ s� d Z d d l m Z m Z m Z d d l Z d d l Z y d d l m Z Wn! e k rq d d l m Z n Xd d l m Z d d l m Z e d � � Z d e f d � � YZ d e f d � � YZ d e e f d � � YZ d S( u� :codeauthor: Pedro Algarvio (pedro@algarvio.me) :codeauthor: Thomas Jackson (jacksontj.89@gmail.com) salt.utils.context ~~~~~~~~~~~~~~~~~~ Context managers used throughout Salt's source code. i ( t absolute_importt print_functiont unicode_literalsN( t MutableMapping( t contextmanager( t sixc k@ s� t | d � r | j } n | j } g } i } x8 | D]0 } | | k rZ | | | | <q7 | j | � q7 W| j | � d V| j | � x | D] } | | =q� Wd S( uI Override specific variables within a function's global context. u im_funcN( t hasattrt __func__t __globals__t appendt update( t funct overridest func_globalst injected_func_globalst overridden_func_globalst overridet injected( ( s6 /usr/lib/python2.7/site-packages/salt/utils/context.pyt func_globals_inject s t ContextDictc B@ sq e Z d Z e d � Z e d � � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z RS( u� A context manager that saves some per-thread state globally. Intended for use with Tornado's StackContext. Provide arbitrary data as kwargs upon creation, then allow any children to override the values of the parent. c K@ s1 t j � | _ d | j _ i | _ | | _ d S( N( t threadingt localt _statet Nonet datat global_datat _threadsafe( t selft threadsafeR ( ( s6 /usr/lib/python2.7/site-packages/salt/utils/context.pyt __init__I s c C@ s- y | j j d k SWn t k r( t SXd S( u� Determine if this ContextDict is currently overridden Since the ContextDict can be overridden in each thread, we check whether the _state.data is set or not. N( R R R t AttributeErrort False( R ( ( s6 /usr/lib/python2.7/site-packages/salt/utils/context.pyt activeS s c K@ s"