import json
import os
class EnumClass(object):
def __init__(self, enum_dict):
reverse = {}
for key, val in enum_dict.iteritems():
if isinstance(val, dict):
setattr(self, key, EnumClass(val))
else:
setattr(self, key, val)
reverse[val] = key
setattr(self, 'Name', reverse)
ENUMS = json.load(open(os.path.join(os.path.dirname(__file__),
'bigquery',
'enums.json')))
EventType = EnumClass(ENUMS['EventType'])
RequestField = EnumClass(ENUMS['RequestField'])
ClientType = EnumClass(ENUMS['ClientType'])
class BigquerySchemaClass(object):
def __init__(self, schema_dict):
for field in schema_dict:
setattr(self, field['name'].upper(), field['name'])
LogField = BigquerySchemaClass(
json.load(open(os.path.join(os.path.dirname(__file__),
'bigquery',
'analytics_schema.json'))))