f 0ddlmZddlmZGddZy))StringIO) chop_commentc:eZdZdZdZdZedZdZdZ y) HostnameConfc ||_d|_yN)_text _contents)selftexts D/usr/lib/python3/dist-packages/cloudinit/distros/parsers/hostname.py__init__zHostnameConf.__init__s c^|j!|j|j|_yyr)r _parser )r s r parsezHostnameConf.parses% >> !![[4DN "rcd|jt}|jD]`\}}|dk(r|jd|dz#|dk(r|jd|dz@|dk(sF|\}}|j||db|j }|j ds|dz }|S)Nblankz%s r all_commenthostname )rrr writegetvalueendswith)r contents line_type componentsrtails r __str__zHostnameConf.__str__s :'+~~ < #Y G#vA78m+vA78j(#- 48T:; <$$&  &  Hrcd|j|jD]\}}|dk(s |dcSy)Nrr)rr )r rrs r rzHostnameConf.hostname's: '+~~ % #Y J&!!}$ %rc|j}|sy|jd}|jD]\}}|dk(s t||d<d}|s)|jj dt|dgfyy)NFrrT)striprr strappend)r your_hostnamereplacedrrs r set_hostnamezHostnameConf.set_hostname/s%++-   '+~~ #Y J& #M 2 1   NN ! !:M0BB/G"H Ircg}t}|jD]}t|js|j d|gf1t |jd\}}t|s|j d|gfn|j d||gf|j |t|dkDrtd|z|S)Nr#rrzMultiple hostnames (%s) found!)set splitlineslenr#r%raddIOError)r rentrieshostnames_foundlineheadrs r rzHostnameConf._parse<s%'') &Dtzz|$$01' c:LT4t9 v67 NNJt 5 6    % &  ! #:oNO OrN) __name__ __module__ __qualname__rrrpropertyrr(rrr rr s05" JrrN)iorcloudinit.distros.parsersrrr9rr r<s2>>r