Edit File: RCSProxy.pyc
� ]�7ec�����������@���s����d��Z��d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�l�Z�d�d�d�������YZ�d�e�j �e�f�d�������YZ �d�e �e�j�f�d�������YZ�d ����Z �d ����Z�e�d�k�r��e����n��d�S( ���s��RCS Proxy. Provide a simplified interface on RCS files, locally or remotely. The functionality is geared towards implementing some sort of remote CVS like utility. It is modeled after the similar module FSProxy. The module defines two classes: RCSProxyLocal -- used for local access RCSProxyServer -- used on the server side of remote access The corresponding client class, RCSProxyClient, is defined in module rcsclient. The remote classes are instantiated with an IP address and an optional verbosity flag. i����Nt ���DirSupportc�����������B���se���e��Z�d�����Z�d����Z�d����Z�d����Z�d����Z�d����Z�d �d���Z �d����Z �d����Z�d ����Z�RS(���c���������C���s ���g��|��_��d��S(���N(���t ���_dirstack(���t���self(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���__init__!���s����c���������C���s���|��j�����d��S(���N(���t���_close(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���__del__$���s����c���������C���s���x�|��j��r�|��j����q�Wd��S(���N(���R���t���back(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���'���s����c���������C���s ���t��j����S(���N(���t���ost���getcwd(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���pwd+���s����c���������C���s-���t��j����}�t��j�|���|��j�j�|���d��S(���N(���R���R���t���chdirR���t���append(���R���t���namet���save(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���cd.���s���� c���������C���s@���|��j��s�t�j�d���n��|��j��d�}�t�j�|���|��j��d�=d��S(���Ns���empty directory stacki����(���R���R���t���errorR ���(���R���t���dir(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���3���s ���� c���������C���s7���t��j�t��j���}�t�t��j�j�|���}�|��j�|�|���S(���N(���R���t���listdirt���curdirt���filtert���patht���isdirt���_filter(���R���t���patt���files(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���listsubdirs:���s����c���������C���s���t��j�j�|���S(���N(���R���R���R���(���R���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���?���s����c���������C���s���t��j�|�d���d��S(���Ni���(���R���t���mkdir(���R���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���B���s����c���������C���s���t��j�|���d��S(���N(���R���t���rmdir(���R���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���E���s����N( ���t���__name__t ���__module__R���R���R���R ���R���R���t���NoneR���R���R���R���(����(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR�������s��� t ���RCSProxyLocalc�����������B���sh���e��Z�d�����Z�d����Z�d �d���Z�d �d���Z�d����Z�d����Z�d �d���Z �d �d���Z �d �d���Z�RS( ���c���������C���s!���t��j�j�|����t�j�|����d��S(���N(���t���rcslibt���RCSR���R����(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���K���s����c���������C���s!���t��j�|����t�j�j�|����d��S(���N(���R����R���R ���R!���(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���O���s���� c���������C���s���|��j��|��j�|���S(���N(���t���_listt���sum(���R���t���list(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���sumlistS���s����c���������C���s���|��j��|��j�|���S(���N(���t���_dictR#���(���R���R$���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���sumdictV���s����c���������C���se���|��j��|���}�d�}�t�j����}�x*�|�j�|���}�|�s=�Pn��|�j�|���q$�W|��j�|���|�j����S(���Ni���i���i� ��(���t���_opent���md5t���newt���readt���updatet ���_closepipet���digest(���R���t���name_revt���ft ���BUFFERSIZER#���t���buffer(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR#���Y���s���� c���������C���s,���|��j��|���}�|�j����}�|��j�|���|�S(���N(���R(���R+���R-���(���R���R/���R0���t���data(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���gete���s���� c���������C���s\���|��j��|���\�}�}�t�|�d���}�|�j�|���|�j����|��j�|�|���|��j�|���d��S(���Nt���w(���t ���_unmanglet���opent���writet���closet���checkint���_remove(���R���R/���R3���t���messageR���t���revR0���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���putk���s���� c���������C���s����|�d�k�r�|��j����}�n��g��}�x[�|�D]S�}�y�|�j�|�|�|���f���Wq(�t�j�t�f�k �rz�|�j�|�d�f���q(�Xq(�W|�S(���s����INTERNAL: apply FUNCTION to all files in LIST. Return a list of the results. The list defaults to all files in the directory if None. N(���R���t ���listfilesR���R���R���t���IOError(���R���t���functionR$���t���resR���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR"���s���s���� c���������C���sg���|�d�k�r�|��j����}�n��i��}�x?�|�D]7�}�y�|�|���|�|�<Wq(�t�j�t�f�k �r^�q(�Xq(�W|�S(���s����INTERNAL: apply FUNCTION to all files in LIST. Return a dictionary mapping files to results. The list defaults to all files in the directory if None. N(���R���R?���R���R���R@���(���R���RA���R$���t���dictR���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR&�������s���� N(���R���R���R���R���R���R%���R'���R#���R4���R>���R"���R&���(����(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR���I���s��� t���RCSProxyServerc�����������B���s)���e��Z�e�j�d����Z�d����Z�d����Z�RS(���c���������C���s'���t��j�|����t�j�j�|��|�|���d��S(���N(���R���R���t���servert���SecureServer(���R���t���addresst���verbose(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR�������s���� c���������C���s!���t��j�j�|����t�j�|����d��S(���N(���RE���RF���R���R���(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyR�������s����c���������C���s.���t��j�j�|����x�|��j�r)�|��j����q�Wd��S(���N(���RE���RF���t���_serveR���R���(���R���(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyRI�������s�����(���R���R���RE���t���VERBOSER���R���RI���(����(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyRD�������s��� c����������C���sd���d�d��l��}��d�d��l�}�|�j�d�r>�|��j�|�j�d���}�n�d�}�t�d�|�f���}�|�j����d��S(���Ni����i���i��t����(���t���stringt���syst���argvt���atoiRD���t���_serverloop(���RL���RM���t���portt���proxy(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���test_server����s���� c����������C���s����d�d��l��}��|��j�d�s>�|��j�d�rU�|��j�d�d�d�k�rU�t����|��j�d���n��t����}�|��j�d�}�t�|�|���r��t�|�|���}�t�|���r��t�|�t �|��j�d�����GHq��t �|���GHn�d�|�GH|��j�d���d��S(���Ni����i���i����t ���0123456789i���s���%s: no such attribute(���RM���RN���RS���t���exitR���t���hasattrt���getattrt���callablet���applyt���tuplet���repr(���RM���RR���t���whatt���attr(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���test����s����2 t���__main__(����(���t���__doc__RE���R)���R���t���fnmatchRL���t���tempfileR ���R����R!���R���RF���RD���RS���R^���R���(����(����(����s+���/usr/lib64/python2.7/Demo/pdist/RCSProxy.pyt���<module>���s���*O