Current File : //usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyc
�
.�t_c@sxdZdefd��YZdefd��YZdefd��YZdefd��YZd	efd
��YZdS(s&
  ExitStatusMixins - Mixins for exceptions to associate distinguishing exit
                      status values

  These mixins are defined based on the types of error that can occur.
  Each mixin is assigned a specific exit status value to disambiguate the
  error type via exit status of user-facing utilities.

  The values start at 3 to provide distinction from common failure exit
  statuses (1 - something went wrong, 2 - argument error) that may be produced
  by user-facing utilities.

  In accord with mixin best practices these mixins are to be specified
  *before* an exception's superclass exception in the exception's definition.
  This allows for a subsystem base exception to provide a subsystem-wide
  exit status and for subsystem specific exceptions to specialize the
  exit status as appropriate.

  To avoid subclass proliferation simply to provide specific exit statuses
  one can chose to create a subsystem base exception using any of the
  ExitStatus hierachy classes (though, generally, one should probably only
  use ExitStatus itself) and provide a specific exit status for an exception
  at instantiation by passing any of the ExitStatus hierarchy classes as the
  'exitStatus' instantiation parameter.

  $Id: //eng/vdo-releases/magnesium/src/python/vdo/vdomgmnt/ExitStatusMixins.py#1 $

t
ExitStatuscBs/eZdZdZed��Zdd�ZRS(s�Base class for all ExistStatusMixins.
  Provides a default exit status value to be interpreted solely as an
  error occurred.
  icCs |jdk	r|jjS|jS(N(t_exitStatustNonet_exitStatusMixinValue(tself((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyt
exitStatus;s
cOsltt|�j||�||_|jdk	rht|jt�rhtdjt|j�j	���ndS(Ns{0} is not an ExitStatus mixin(
tsuperRt__init__RRt
issubclasst	TypeErrortformatttypet__name__(RRtargstkwargs((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyRDs	N(Rt
__module__t__doc__RtpropertyRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyR1s	tDeveloperExitStatuscBseZdZdZRS(sEUsed to represent an error condition due to a developer oversight.
  i(RRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyRNstStateExitStatuscBseZdZdZRS(sHUsed to represent an error condition due to the state of some entity.
  i(RRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyRTstSystemExitStatuscBseZdZdZRS(snUsed to represent an error condition due to a failure on the part of
  the operating system, hardware, etc.
  i(RRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyRZstUserExitStatuscBseZdZdZRS(snUsed to represent an error condition due to the user; e.g., bad parameter,
  insufficient permissions, etc.
  i(RRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyRasN(RtobjectRRRRR(((sA/usr/lib/python2.7/site-packages/vdo/vdomgmnt/ExitStatusMixins.pyt<module>/s