@@ -30,18 +30,23 @@ def __init__(self,
3030 self ._utm_content = None
3131 self ._utm_campaign = None
3232
33- if enable is not None :
34- self .enable = enable
35- if utm_source is not None :
36- self .utm_source = utm_source
37- if utm_medium is not None :
38- self .utm_medium = utm_medium
39- if utm_term is not None :
40- self .utm_term = utm_term
41- if utm_content is not None :
42- self .utm_content = utm_content
43- if utm_campaign is not None :
44- self .utm_campaign = utm_campaign
33+ self .__set_field ("enable" , enable )
34+ self .__set_field ("utm_source" , utm_source )
35+ self .__set_field ("utm_medium" , utm_medium )
36+ self .__set_field ("utm_term" , utm_term )
37+ self .__set_field ("utm_content" , utm_content )
38+ self .__set_field ("utm_campaign" , utm_campaign )
39+
40+ def __set_field (self , field , value ):
41+ """ Sets a field to the provided value if value is not None
42+
43+ :param field: Name of the field
44+ :type field: String
45+ :param value: value to be set, ignored if None
46+ :type value: Any
47+ """
48+ if value is not None :
49+ setattr (self , field , value )
4550
4651 @property
4752 def enable (self ):
@@ -123,17 +128,14 @@ def get(self):
123128 :returns: This Ganalytics, ready for use in a request body.
124129 :rtype: dict
125130 """
131+ keys = ["enable" , "utm_source" , "utm_medium" , "utm_term" ,
132+ "utm_content" , "utm_campaign" ]
133+
126134 ganalytics = {}
127- if self .enable is not None :
128- ganalytics ["enable" ] = self .enable
129- if self .utm_source is not None :
130- ganalytics ["utm_source" ] = self .utm_source
131- if self .utm_medium is not None :
132- ganalytics ["utm_medium" ] = self .utm_medium
133- if self .utm_term is not None :
134- ganalytics ["utm_term" ] = self .utm_term
135- if self .utm_content is not None :
136- ganalytics ["utm_content" ] = self .utm_content
137- if self .utm_campaign is not None :
138- ganalytics ["utm_campaign" ] = self .utm_campaign
135+
136+ for key in keys :
137+ value = getattr (self , key , None )
138+ if value is not None :
139+ ganalytics [key ] = value
140+
139141 return ganalytics
0 commit comments