def __init__()

in athena_glue_service_logs/job.py [0:0]


    def __init__(self, service_name):
        args = getResolvedOptions(sys.argv, ['JOB_NAME'] + self._job_arguments())

        # Validate the service name
        if not self.is_valid_service(service_name):
            raise Exception("'%s' is not yet a supported service." % service_name)

        self.glue_context = self._init_glue_context()
        self.job = Job(self.glue_context)
        region = self.get_instance_region()

        # Create data catalog references
        raw_klas = self.SERVICE_DEFINITIONS[service_name][0]
        converted_klas = self.SERVICE_DEFINITIONS[service_name][1]

        self.raw_catalog = raw_klas(
            region,
            args['raw_database_name'],
            args['raw_table_name'],
            args['s3_source_location']
        )
        self.optimized_catalog = converted_klas(
            region,
            args['converted_database_name'],
            args['converted_table_name'],
            args['s3_converted_target']
        )

        # Assume that if the raw table does not exist, this is our first run
        self.initial_run = not self.raw_catalog.does_table_exist()

        # Create a converter object and initialize the glue job!
        self.converter = DataConverter(self.glue_context, self.raw_catalog, self.optimized_catalog)
        self.job.init(args['JOB_NAME'], args)