[Freeipa-devel] [PATCH 0029-0046] Internationalized domain names in DNS plugin

Jan Cholasta jcholast at redhat.com
Tue Apr 8 08:05:32 UTC 2014


On 8.4.2014 10:01, Alexander Bokovoy wrote:
> On Tue, 08 Apr 2014, Petr Spacek wrote:
>> On 8.4.2014 09:22, Jan Cholasta wrote:
>>> On 4.4.2014 12:59, Petr Spacek wrote:
>>>> On 3.4.2014 15:35, Jan Cholasta wrote:
>>>>> I would shorten "origin_sign" to just "sign".
>>>> Sign of what? Decay? :-) I don't think that sign is descriptive enough,
>>>> I would personally stick with origin_sign.
>>>
>>> Whoops, I meant "origin". The "_sign" bit seems a little bit
>>> redundant to me.
>>
>> "Origin" is an established term for the name of the parent.
>>
>> name = "blabla.example."
>> origin of "name" = "example."
>>
>> Anyway, I still think that DNSName('@') is better than any constant
>> with cryptic name.
>>
>> Honza, can you see any problem with this? I know this creates instance
>> again and again, but is it a real problem? I would like to avoid
>> premature optimization... :-)
> What about making all these fixed names as constants and then simply
> return those?
>
> class DNSName:
>      DNS_ORIGIN = DNSName('@')
>       ...
>
>      @staticmethod ...
>      def ...
>          return DNS_ORIGIN
>
> they would be singletons...

Unfortunately you can't do that, because at the time DNSName is parsed, 
it is not defined yet:

 >>> class X:
...   x = X()
...
Traceback (most recent call last):
   File "<stdin>", line 1, in <module>
   File "<stdin>", line 2, in X
NameError: name 'X' is not defined

-- 
Jan Cholasta




More information about the Freeipa-devel mailing list