
    8.g                     N    S r SSKrSSKrSSKJr   " S S\R
                  5      rg)z"Classes related to cdrom handling.    N)CdromProgressc            	           \ rS rSrSr   SS\S-  S\S-  S\SS4S jjrSS\S-  S\4S	 jjr	SS\S-  S\4S
 jjr
\S\4S j5       rSrg)Cdrom   a  Support for apt-cdrom like features.

This class has several optional parameters for initialisation, which may
be used to influence the behaviour of the object:

The optional parameter `progress` is a CdromProgress() subclass, which will
ask for the correct cdrom, etc. If not specified or None, a CdromProgress()
object will be used.

The optional parameter `mountpoint` may be used to specify an alternative
mountpoint.

If the optional parameter `nomount` is True, the cdroms will not be
mounted. This is the default behaviour.
Nprogress
mountpointnomountreturnc                 J   [         R                  R                  U 5        Uc  [        5       U l        OXl        Ub   [         R
                  R                  SU5        U(       a!  [         R
                  R                  SS5        g [         R
                  R                  SS5        g )NzAcquire::cdrom::mountzAPT::CDROM::NoMounttruefalse)apt_pkgr   __init__r   	_progressconfigset)selfr   r   r	   s       +/usr/lib/python3/dist-packages/apt/cdrom.pyr   Cdrom.__init__/   sr     	t$*_DN%N!NN6
CNN4f=NN4g>    c                 f    [         R                  R                  X=(       d    U R                  5      $ )zAdd cdrom to the sources.list.)r   r   addr   r   r   s     r   r   	Cdrom.addC   s     }}  'A4>>BBr   c                 f    [         R                  R                  X=(       d    U R                  5      $ )zIdentify the cdrom.)r   r   identr   r   s     r   r   Cdrom.identG   s     }}""4)CT^^DDr   c                    U R                  5       nUc  g[        R                  " [        R                  R	                  S5      S-   5      nUR                  [        R                  R                  S5      5        U HV  n[        U5       nU H9  nUR                  5       R                  S5      (       a  M)  X;   d  M0    SSS5          g   SSS5        MX     g! , (       d  f       Mj  = f)z:Check if the cdrom is already in the current sources.list.NFzDir::Etc::sourceparts*zDir::Etc::sourcelist#T)
r   globr   r   find_dirappend	find_fileopenlstrip
startswith)r   cd_idsrcfnamefobjlines         r   in_sources_listCdrom.in_sources_listK   s     

=ii//0GH3NO

7>>++,BCDEe D;;=33C88U]#    
 	 s   	(C5C<CC
C%	)r   )NNT)N)__name__
__module____qualname____firstlineno____doc__r   strboolr   r   r   propertyr-   __static_attributes__ r   r   r   r      s    $ *.!%	?$&? $J? 	?
 
?(CMD0 CD CEmd2 Ec E   r   r   )r3   r!   r   apt.progress.baser   r   r8   r   r   <module>r:      s#   , )   +=GMM =r   