Mercurial > hg > gcmultimerge
comparison multimerge.py @ 6:ee6bf617f839
Implement configuration file reading.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Mon, 04 Jul 2016 12:53:11 +0300 |
parents | 9d4152f32223 |
children | f2ecfb3e04ee |
comparison
equal
deleted
inserted
replaced
5:9d4152f32223 | 6:ee6bf617f839 |
---|---|
199 if name in self.m_data: | 199 if name in self.m_data: |
200 return self.m_data[name] | 200 return self.m_data[name] |
201 else: | 201 else: |
202 return None | 202 return None |
203 | 203 |
204 def mread(self, cfgparser, sect): | |
205 for name in self.m_saveable: | |
206 if cfgparser.has_option(sect, name): | |
207 value = cfgparser.get(sect, name) | |
208 self.mset(name, value) | |
209 gcm_debug("{0} -> '{1}' == {2}".format(name, value, self.mget(name))) | |
210 | |
204 | 211 |
205 ### | 212 ### |
206 ### Main program starts | 213 ### Main program starts |
207 ### | 214 ### |
208 gcm_msgbuf = [] | 215 gcm_msgbuf = [] |
230 cfg.mdef("app_name", False, None, None, "Google Calendar MultiMerge") | 237 cfg.mdef("app_name", False, None, None, "Google Calendar MultiMerge") |
231 cfg.mdef("scope", False, None, None, "https://www.googleapis.com/auth/calendar") | 238 cfg.mdef("scope", False, None, None, "https://www.googleapis.com/auth/calendar") |
232 #cfg.mdef("scope", False, None, None, "https://www.googleapis.com/auth/calendar.readonly") | 239 #cfg.mdef("scope", False, None, None, "https://www.googleapis.com/auth/calendar.readonly") |
233 cfg.mdef("secret_file", True, gcm_is_filename, None, "client_secret.json") | 240 cfg.mdef("secret_file", True, gcm_is_filename, None, "client_secret.json") |
234 cfg.mdef("credential_file", True, gcm_is_filename, None, "client_credentials.json") | 241 cfg.mdef("credential_file", True, gcm_is_filename, None, "client_credentials.json") |
242 | |
243 | |
244 ## Read, parse and validate configuration file | |
245 if len(sys.argv) > 1: | |
246 gcm_debug("Reading configuration from '{0}'.".format(sys.argv[1])) | |
247 try: | |
248 cfgparser = ConfigParser.RawConfigParser() | |
249 cfgparser.read(sys.argv[1]) | |
250 except Exception as e: | |
251 gcm_fatal("Failed to read configuration file '{0}': {1}".format(sys.argv[1], str(e))) | |
252 | |
253 # Parse the settings and validate | |
254 cfg.mread(cfgparser, section) | |
235 | 255 |
236 ## Initialize and authorize API connection | 256 ## Initialize and authorize API connection |
237 credentials = gcm_get_credentials(cfg) | 257 credentials = gcm_get_credentials(cfg) |
238 http = credentials.authorize(httplib2.Http()) | 258 http = credentials.authorize(httplib2.Http()) |
239 service = discovery.build("calendar", "v3", http=http) | 259 service = discovery.build("calendar", "v3", http=http) |