<s> '''<STR_LIT>''' <EOL> from __future__ import absolute_import <EOL> def __virtual__ ( ) : <EOL> '''<STR_LIT>''' <EOL> return '<STR_LIT>' if '<STR_LIT>' in __salt__ else False <EOL> def mod_init ( low ) : <EOL> '''<STR_LIT>''' <EOL> try : <EOL> __salt__ [ '<STR_LIT>' ] ( ) <EOL> except Exception : <EOL> return False <EOL> return True <EOL> def _flags_helper ( conf , atom , new_flags , test = False ) : <EOL> try : <EOL> new_flags = __salt__ [ '<STR_LIT>' ] ( conf , atom , new_flags ) <EOL> except Exception : <EOL> import traceback <EOL> return { '<STR_LIT:result>' : False , '<STR_LIT>' : traceback . format_exc ( ) } <EOL> if new_flags : <EOL> old_flags = __salt__ [ '<STR_LIT>' ] ( conf , atom ) <EOL> if not test : <EOL> __salt__ [ '<STR_LIT>' ] ( conf , atom , new_flags ) <EOL> return { '<STR_LIT:result>' : True , '<STR_LIT>' : { '<STR_LIT>' : old_flags , '<STR_LIT>' : new_flags } } <EOL> return { '<STR_LIT:result>' : None } <EOL> def _mask_helper ( conf , atom , test = False ) : <EOL> try : <EOL> is_present = __salt__ [ '<STR_LIT>' ] ( conf , atom ) <EOL> except Exception : <EOL> import traceback <EOL> return { '<STR_LIT:result>' : False , '<STR_LIT>' : traceback . format_exc ( ) } <EOL> if not is_present : <EOL> if not test : <EOL> __salt__ [ '<STR_LIT>' ] ( conf , string = atom ) <EOL> return { '<STR_LIT:result>' : True } <EOL> return { '<STR_LIT:result>' : None } <EOL> def flags ( name , <EOL> use = None , <EOL> accept_keywords = None , <EOL> env = None , <EOL> license = None , <EOL> properties = None , <EOL> unmask = False , <EOL> mask = False ) : <EOL> '''<STR_LIT>''' <EOL> ret = { '<STR_LIT>' : { } , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT:name>' : name , <EOL> '<STR_LIT:result>' : True } <EOL> if use : <EOL> result = _flags_helper ( '<STR_LIT>' , name , use , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if accept_keywords : <EOL> result = _flags_helper ( '<STR_LIT>' , name , accept_keywords , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if env : <EOL> result = _flags_helper ( '<STR_LIT>' , name , env , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if license : <EOL> result = _flags_helper ( '<STR_LIT>' , name , license , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if properties : <EOL> result = _flags_helper ( '<STR_LIT>' , name , properties , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if mask : <EOL> result = _mask_helper ( '<STR_LIT>' , name , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = '<STR_LIT>' <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if unmask : <EOL> result = _mask_helper ( '<STR_LIT>' , name , __opts__ [ '<STR_LIT:test>' ] ) <EOL> if result [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT>' ] [ '<STR_LIT>' ] = '<STR_LIT>' <EOL> elif result [ '<STR_LIT:result>' ] is False : <EOL> ret [ '<STR_LIT:result>' ] = False <EOL> ret [ '<STR_LIT>' ] = result [ '<STR_LIT>' ] <EOL> return ret <EOL> if __opts__ [ '<STR_LIT:test>' ] and not ret [ '<STR_LIT:result>' ] : <EOL> ret [ '<STR_LIT:result>' ] = None <EOL> return ret </s>
