??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
σ ΰUdac@`sυddlmZmZmZeZidd6dgd6dd6ZdZdd lZdd l m Z dd l m Z dd lmZdd lmZddlmZydd lZWnek rΡedƒ‚nXeƒZdefd„ƒYZd S(i(tabsolute_importtdivisiontprint_functions1.1tmetadata_versiontpreviewtstatust communityt supported_bysο cache: mongodb short_description: Use MongoDB for caching description: - This cache uses per host records saved in MongoDB. version_added: "2.5" requirements: - pymongo>=3 options: _uri: description: - MongoDB Connection String URI required: False env: - name: ANSIBLE_CACHE_PLUGIN_CONNECTION ini: - key: fact_caching_connection section: defaults _prefix: description: User defined prefix to use when creating the DB entries default: ansible_facts env: - name: ANSIBLE_CACHE_PLUGIN_PREFIX ini: - key: fact_caching_prefix section: defaults _timeout: default: 86400 description: Expiration timeout in seconds for the cache plugin data env: - name: ANSIBLE_CACHE_PLUGIN_TIMEOUT ini: - key: fact_caching_timeout section: defaults type: integer N(tcontextmanager(t constants(t AnsibleError(tBaseCacheModule(tDisplays^The 'pymongo' python module is required for the mongodb fact cache, 'pip install pymongo>=3.0't CacheModulecB`s‰eZdZd„Zd„Zed„ƒZd„Zd„Zd„Z d„Z d„Z d „Z d „Z d „Zd „Zd „ZRS(s- A caching module backed by mongodb. cO`sΐyYtt|ƒj||Ž|jdƒ|_t|jdƒƒ|_|jdƒ|_WnNtk r©t j dddƒt j |_tt j ƒ|_t j|_nXi|_t|_dS(Nt_urit_timeoutt_prefixsTRather than importing CacheModules directly, use ansible.plugins.loader.cache_loadertversions2.12(tsuperR t__init__t get_optiont _connectiontintRRtKeyErrortdisplayt deprecatedtCtCACHE_PLUGIN_CONNECTIONtCACHE_PLUGIN_TIMEOUTtCACHE_PLUGIN_PREFIXt_cachetFalset_managed_indexes(tselftargstkwargs((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyRDs    cC`s}|j}|rl|dkrly|jdddd|ƒWqytjjk rh|jdƒ|j|ƒSXn |jdƒdS(sΨ This function manages indexes on the mongo collection. We only do this once, at run time based on _managed_indexes, rather than per connection instantiation as that would be overkill itdatetnametttltexpireAfterSecondsN(Rt create_indextpymongoterrorstOperationFailuret drop_indext_manage_indexes(R!t collectionR((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyR-Ts   cc`s…tj|jƒ}y|jƒ}Wn!tjjk rE|d}nX|d}|jsr|j|ƒt|_n|V|j ƒdS(s This is a context manager for opening and closing mongo connections as needed. This exists as to not create a global connection, due to pymongo not being fork safe (http://api.mongodb.com/python/current/faq.html#is-pymongo-fork-safe) tansibletcacheN( R)t MongoClientRtget_default_databaseR*tConfigurationErrorR R-tTruetclose(R!tmongotdbR.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyt _collectionis    cC`sd|j|fS(Ns%s%s(R(R!tkey((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyt _make_key‚scC`sg||jkrW|jƒ&}|ji|j|ƒd6ƒ}WdQX|d|j|…s %c C`sz||j|<|jƒ[}|ji|j|ƒd6ii|j|ƒd6|d6tjjƒd6d6dtƒWdQXdS(NR;R<R$s$settupsert(RR8t update_oneR:tdatetimetutcnowR4(R!R9R?R.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytsets c C`sG|jƒ5}g|jiitd6ƒD]}|d^q)SWdQXdS(NR;(R8tfindR4(R!R.tdoc((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytkeysœsc C`s<|jƒ*}t|ji|j|ƒd6ƒƒSWdQXdS(NR;(R8tbooltcountR:(R!R9R.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytcontains scC`s@|j|=|jƒ$}|ji|j|ƒd6ƒWdQXdS(NR;(RR8t delete_oneR:(R!R9R.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytdelete€s cC`s&|jƒ}|jiƒWdQXdS(N(R8t delete_many(R!R.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytflush©scC`s6|jƒ$}td„|jiƒDƒƒSWdQXdS(Ncs`s#|]}|d|dfVqdS(R;R<N((t.0td((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pys ―s(R8tdictRE(R!R.((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pytcopy­scC`stƒS(N(RQ(R!((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyt __getstate__±scC`s|jƒdS(N(R(R!R<((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyt __setstate__΄s(t__name__t __module__t__doc__RR-RR8R:R>RDRGRJRLRNRRRSRT(((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyR @s           (t __future__RRRttypet __metaclass__tANSIBLE_METADATAt DOCUMENTATIONRBt contextlibRR/R Rtansible.errorsR tansible.plugins.cacheR tansible.utils.displayR R)t ImportErrorRR (((sA/usr/lib/python2.7/site-packages/ansible/plugins/cache/mongodb.pyts"   %