+
     h  c                   s,    R t ^ RIHt  ! R R]4      tR# )a  The CardConnectionDecorator is a Decorator around the CardConnection
abstract class, and allows dynamic addition of features to the
CardConnection, e.g. implementing a secure channel..

__author__ = "https://www.gemalto.com/"

Copyright 2001-2012 gemalto
Author: Jean-Daniel Aussel, mailto:jean-daniel.aussel@gemalto.com

This file is part of pyscard.

pyscard is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.

pyscard is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License
along with pyscard; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
)CardConnectionc                   s   a  ] tR t^t o RtR tR tR tR tRR lt	RR lt
R	 tR
 tR tR tR tR tR tRR ltRR ltR tRtV tR# )CardConnectionDecoratorz Card connection decorator class.c                s    Wn         R# )zjConstruct a new card connection decorator.

CardConnectionComponent: CardConnection component to decorate
N	component)selfZcardConnectionComponent   &&H/usr/lib64/python3.14/site-packages/smartcard/CardConnectionDecorator.py__init__Z CardConnectionDecorator.__init__!   s	    
 1    c                <    V P                   P                  V4       R# )z+call inner component addSWExceptionToFilterN)r   addSWExceptionToFilter)r   ZexClassr   r   r
   Z.CardConnectionDecorator.addSWExceptionToFilter(   s    --g6r   c                r	   )z call inner component addObserverN)r   addObserverr   Zobserverr   r   r   Z#CardConnectionDecorator.addObserver,   s    ""8,r   c                r	   )z#call inner component deleteObserverN)r   deleteObserverr   r   r   r   Z&CardConnectionDecorator.deleteObserver0   s    %%h/r   Nc                >    V P                   P                  WV4       R# )zcall inner component connectN)r   connectr   protocolZmodeZdisposition   &&&&r   r   ZCardConnectionDecorator.connect4   s    x{;r   c                r   )zcall inner component reconnectN)r   	reconnectr   r   r   r   Z!CardConnectionDecorator.reconnect8   s      =r   c                :    V P                   P                  4        R# )zcall inner component disconnectN)r   
disconnectr      &r   r   Z"CardConnectionDecorator.disconnect<   s    !!#r   c                r   )zcall inner component releaseN)r   releaser   r   r   r   ZCardConnectionDecorator.release@   s     r   c                6    V P                   P                  4       # )zcall inner component getATR)r   getATRr   r   r   r   ZCardConnectionDecorator.getATRD   s    ~~$$&&r   c                r   )z call inner component getProtocol)r   getProtocolr   r   r   r   Z#CardConnectionDecorator.getProtocolH   s    ~~))++r   c                r   )zcall inner component getReader)r   	getReaderr   r   r   r   Z!CardConnectionDecorator.getReaderL   s    ~~''))r   c                r	   )z*call inner component setErrorCheckingChainN)r   setErrorCheckingChain)r   Zerrorcheckingchainr   r   r   Z-CardConnectionDecorator.setErrorCheckingChainP   s    ,,-?@r   c                8    V P                   P                  V4      # )z call inner component setProtocol)r   setProtocol)r   r   r   r   r   Z#CardConnectionDecorator.setProtocolT   s    ~~))(33r   c                s8    V P                   P                  W4      # )zcall inner component transmit)r   transmit)r   commandr      &&&r   r    Z CardConnectionDecorator.transmitX   s    ~~&&w99r   c                sD    Vf   . pV P                   P                  W4      # )zcall inner component control)r   control)r   ZcontrolCoder!   r"   r   r#   ZCardConnectionDecorator.control\   s!    ?G~~%%k;;r   c                r   )zcall inner component getAttrib)r   	getAttrib)r   ZattribIdr   r   r$   Z!CardConnectionDecorator.getAttribb   s    ~~''11r   r   )NNN)N)Z__name__Z
__module__Z__qualname__Z__firstlineno____doc__r   r
   r   r   r   r   r   r   r   r   r   r   r   r    r#   r$   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r      s^     *17-0<>$!',*A4:<2 2r   r   N)r%   Zsmartcard.CardConnectionr    r   ) r   r   <module>r&      s   4 4F2n F2r   