Mini Shell

Direktori : /lib64/python3.6/site-packages/pyanaconda/payload/source/__pycache__/
Upload File :
Current File : //lib64/python3.6/site-packages/pyanaconda/payload/source/__pycache__/sources.cpython-36.opt-1.pyc

3

C��e�#�@sddlmZmZddlmZddlmZmZmZm	Z	m
Z
mZmZm
Z
ddlmZddlmZddlmZGdd�de�ZGd	d
�d
e�ZGdd�de�ZGd
d�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZdS)�)�abstractmethod�ABC)�Enum)�SOURCE_TYPE_CDROM�SOURCE_TYPE_NFS�SOURCE_TYPE_HDD�SOURCE_TYPE_URL�SOURCE_TYPE_HMC�URL_TYPE_BASEURL�URL_TYPE_MIRRORLIST�URL_TYPE_METALINK)�create_nfs_url)�RepoConfigurationData)�
create_sourcec@s,eZdZdZdZdZdZdZdZdZ	dZ
d	S)
�
SourceType�cdrom�	harddrive�nfsZhttpZhttpsZftp�file�hmcN)�__name__�
__module__�__qualname__�CDROM�	HARDDRIVE�NFS�HTTP�HTTPS�FTP�FILE�HMC�r!r!�/usr/lib64/python3.6/sources.pyrsrcs�eZdZdZeed��fdd�Zeed�dd��Zeed�dd	��Z	e
d
d��Zedd
��Zedd��Z
edd��Zedd��Zedd��Zedd��Zedd��Zedd��Z�ZS)�BasePayloadSourcezWBase object for payload source.

    Implements common methods for payload source.
    )�source_type�method_typecst�j�||_||_dS)N)�super�__init__�_source_type�_method_type)�selfr$r%)�	__class__r!r"r'-s
zBasePayloadSource.__init__)�returncCs|jS)z;Get source type.

        :rtype: SourceType enum.
        )r()r*r!r!r"r$3szBasePayloadSource.source_typecCs|jS)z4Get method type string

        :rtype: str
        )r))r*r!r!r"r%;szBasePayloadSource.method_typecCsdS)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        Nr!)r*r!r!r"�create_proxyCszBasePayloadSource.create_proxycCs|jtjkS)z4Is this cdrom source?

        :rtype: bool
        )r(rr)r*r!r!r"�is_cdromKszBasePayloadSource.is_cdromcCs|jtjkS)z8Is this hard drive source?

        :rtype bool
        )r(rr)r*r!r!r"�is_harddriveSszBasePayloadSource.is_harddrivecCs|jtjkS)z1Is this nfs source?

        :rtype bool
        )r(rr)r*r!r!r"�is_nfs[szBasePayloadSource.is_nfscCs|jtjkS)z2Is this http source?

        :rtype bool
        )r(rr)r*r!r!r"�is_httpcszBasePayloadSource.is_httpcCs|jtjkS)z3Is this https source?

        :rtype bool
        )r(rr)r*r!r!r"�is_httpskszBasePayloadSource.is_httpscCs|jtjkS)z1Is this ftp source?

        :rtype bool
        )r(rr)r*r!r!r"�is_ftpsszBasePayloadSource.is_ftpcCs|jtjkS)z;Is this file:// based source?

        :rtype bool
        )r(rr)r*r!r!r"�is_file{szBasePayloadSource.is_filecCs|jtjkS)z1Is this hmc source?

        :rtype bool
        )r(rr )r*r!r!r"�is_hmc�szBasePayloadSource.is_hmc)rrr�__doc__r�strr'�propertyr$r%rr-r.r/r0r1r2r3r4r5�
__classcell__r!r!)r+r"r#(sr#cs(eZdZdZ�fdd�Zdd�Z�ZS)�CDRomSourcez Source object for CDrom sources.cst�jtjd�dS)Nr)r&r'rr)r*)r+r!r"r'�szCDRomSource.__init__cCstt�S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )rr)r*r!r!r"r-�szCDRomSource.create_proxy)rrrr6r'r-r9r!r!)r+r"r:�sr:csLeZdZdZ�fdd�Zedd��Zedd��Zedd	��Zd
d�Z	�Z
S)�	NFSSourcezSource object for NFS sources.cs&t�jtjd�||_||_||_dS)Nr)r&r'rr�_server�_path�_opts)r*�server�pathZopts)r+r!r"r'�szNFSSource.__init__cCs|jS)z)Get server.

        :rtype: str
        )r<)r*r!r!r"r?�szNFSSource.servercCs|jS)z.Get server path.

        :rtype: str
        )r=)r*r!r!r"r@�szNFSSource.pathcCs|jS)z4Get nfs mount options.

        :rtype: str
        )r>)r*r!r!r"�options�szNFSSource.optionscCs(tt�}t|j|j|j�}|j|�|S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )rrr
r?r@rAZSetURL)r*�source_proxyZ
source_urlr!r!r"r-�s
zNFSSource.create_proxy)rrrr6r'r8r?r@rAr-r9r!r!)r+r"r;�sr;cs@eZdZdZ�fdd�Zedd��Zedd��Zdd	�Z�Z	S)
�	HDDSourcez$Source object for hard drive source.cs t�jtjd�||_||_dS)Nr)r&r'rr�
_partitionr=)r*�	partitionr@)r+r!r"r'�szHDDSource.__init__cCs|jS)z8Partition with the source.

        :rtype: str
        )rD)r*r!r!r"rE�szHDDSource.partitioncCs|jS)z@Path to a source on the partition.

        :rtype: str
        )r=)r*r!r!r"r@�szHDDSource.pathcCs$tt�}|j|j�|j|j�|S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )rrZSetPartitionrEZSetDirectoryr@)r*rBr!r!r"r-�szHDDSource.create_proxy)
rrrr6r'r8rEr@r-r9r!r!)r+r"rC�s
rCcsZeZdZdZd�fdd�	Zedd��Zedd��Zed	d
��Zedd��Z	d
d�Z
�ZS)�URLBasedSourcez!Base class for URL based sources.Fcs4t�j|d�|r|rtd��||_||_||_dS)N�urlz1Can't have one link both mirrorlist and metalink!)r&r'�KeyError�_url�_mirrorlist�	_metalink)r*r$rG�
mirrorlist�metalink)r+r!r"r'�szURLBasedSource.__init__cCs|jS)z+Get url link.

        :rtype: str
        )rI)r*r!r!r"rG�szURLBasedSource.urlcCs|jr
tS|jrtStSdS)z+Get url type.

        :rtype: str
        N)�
is_mirrorlistr�is_metalinkrr
)r*r!r!r"�url_type�s
zURLBasedSource.url_typecCs|jS)z1Is mirrorlist url?

        :rtype: bool
        )rJ)r*r!r!r"rNszURLBasedSource.is_mirrorlistcCs|jS)z/Is metalink url?

        :rtype: bool
        )rK)r*r!r!r"rOszURLBasedSource.is_metalinkcCs2tt�}t�}|j|_|j|_|jtj|��|S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )rrrrP�typerG�SetRepoConfiguration�to_structure)r*rB�repo_configurationr!r!r"r-szURLBasedSource.create_proxy)FF)rrrr6r'r8rGrPrNrOr-r9r!r!)r+r"rF�s

rFcs"eZdZdZd�fdd�	Z�ZS)�
HTTPSourcezSource object for HTTP sources.Fcst�jtj|||�dS)N)r&r'rr)r*rGrLrM)r+r!r"r'1szHTTPSource.__init__)FF)rrrr6r'r9r!r!)r+r"rU.srUcs"eZdZdZd�fdd�	Z�ZS)�HTTPSSourcez Source object for HTTPS sources.Fcst�jtj|||�dS)N)r&r'rr)r*rGrLrM)r+r!r"r'8szHTTPSSource.__init__)FF)rrrr6r'r9r!r!)r+r"rV5srVcs"eZdZdZd�fdd�	Z�ZS)�	FTPSourcezSource object for FTP sources.Fcst�jtj|||�dS)N)r&r'rr)r*rGrLrM)r+r!r"r'?szFTPSource.__init__)FF)rrrr6r'r9r!r!)r+r"rW<srWcs4eZdZdZ�fdd�Zedd��Zdd�Z�ZS)�
FileSourcez(Source object for file:// based sources.cst�jtjd�||_dS)NrG)r&r'rrr=)r*r@)r+r!r"r'FszFileSource.__init__cCs|jS)z6Path to the file source.

        :rtype: str
        )r=)r*r!r!r"r@KszFileSource.pathcCs0tt�}t�}t|_|j|_|jtj|��|S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )	rrrr
rQr@rGrRrS)r*rBrTr!r!r"r-SszFileSource.create_proxy)	rrrr6r'r8r@r-r9r!r!)r+r"rXCsrXcs(eZdZdZ�fdd�Zdd�Z�ZS)�	HMCSourcez@Source object for HMC sources.

    S390 cdrom like device.
    cst�jtjd�dS)Nr)r&r'rr )r*)r+r!r"r'kszHMCSource.__init__cCstt�S)zTCreate and set up a DBus source.

        :return: a DBus proxy of a source
        )rr	)r*r!r!r"r-nszHMCSource.create_proxy)rrrr6r'r-r9r!r!)r+r"rYesrYN)�abcrr�enumrZpyanaconda.core.constantsrrrrr	r
rrZpyanaconda.core.payloadr
Z,pyanaconda.modules.common.structures.payloadrZpyanaconda.ui.lib.payloadrrr#r:r;rCrFrUrVrWrXrYr!r!r!r"�<module>s (d,$D"