σ
V]c           @@  sO  d  d l  m Z d  d l Z d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l	 m
 Z
 d   Z d   Z e j d d	  Z e j d
 d d d d d d e d d e j d d d d d d e j d d d e d d e j d d d d e e j d d d d e d   Z e j d  d!  Z e j e j d"  Z d S(#   i    (   t   absolute_importN(   t   __version__(   t   namedAny(   t   validator_forc         C@  s#   d |  k r d |  }  n  t  |   S(   Nt   .s   jsonschema.(   R   (   t   name(    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyt   _namedAnyWithDefault   s    c         C@  s&   t  |    } t j |  SWd  QXd  S(   N(   t   opent   jsont   load(   t   patht   file(    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyt
   _json_file   s    t   descriptions   JSON Schema Validation CLIs   -is
   --instancet   actiont   appendt   destt	   instancest   typet   helps[   a path to a JSON instance (i.e. filename.json)to validate (may be specified multiple times)s   -Fs   --error-formatt   defaults"   {error.instance}: {error.message}
s   the format to use for each error output message, specified in a form suitable for passing to str.format, which will be called with 'error' for each errors   -Vs   --validators   the fully qualified object name of a validator to use, or, for validators that are registered with jsonschema, simply the name of the class.s	   --versiont   versiont   schemas7   the JSON Schema to validate with (i.e. filename.schema)c         C@  sL   t  t j d |  p d g   } | d d  k rH t | d  | d <n  | S(   Nt   argss   --helpt	   validatorR   (   t   varst   parsert
   parse_argst   NoneR   (   R   t	   arguments(    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyR   A   s    !i   c         C@  s#   t  j t d t d |     d  S(   NR   R   (   t   syst   exitt   runR   (   R   (    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyt   mainH   s    c         C@  s   |  d } |  d d |  d  } | j  |  d  t } xQ |  d pH d D]? } x6 | j |  D]% } | j | j d |   t } q_ WqI W| S(   Nt   error_formatR   R   R   t   error(    (   t   check_schemat   Falset   iter_errorst   writet   formatt   True(   R   t   stdoutt   stderrR"   R   t   erroredt   instanceR#   (    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyR    L   s    
(   t
   __future__R    t   argparseR   R   t
   jsonschemaR   t   jsonschema._reflectR   t   jsonschema.validatorsR   R   R   t   ArgumentParserR   t   add_argumentR   t   argvR!   R*   R+   R    (    (    (    s-   lib/python2.7/site-packages/jsonschema/cli.pyt   <module>   sF   								