def __init__()

in blogs/finspace_redshift-2021-09/finspace.py [0:0]


    def __init__(
            self,
            config=Config(retries={'max_attempts': 3, 'mode': 'standard'}),
            boto_session: Session = None,
            dev_overrides: dict = None,
            service_name = 'finspace-data'):
        """
        To configure this class object, simply instantiate with no-arg if hitting prod endpoint, or else override it:
        e.g.
           `hab = FinSpaceAnalyticsManager(region_name = 'us-east-1',
           dev_overrides = {'hfs_endpoint': 'https://39g32x40jk.execute-api.us-east-1.amazonaws.com/alpha'})`
        """
        self.hfs_endpoint = None
        self.region_name = None

        if dev_overrides is not None:
            if 'hfs_endpoint' in dev_overrides:
                self.hfs_endpoint = dev_overrides['hfs_endpoint']

            if 'region_name' in dev_overrides:
                self.region_name = dev_overrides['region_name']
        else:
            if boto_session is not None:
                self.region_name = boto_session.region_name
            else:
                self.region_name = self.get_region_name()

        self.config = config

        self._boto3_session = boto3.session.Session(region_name=self.region_name) if boto_session is None else boto_session

        print(f"service_name: {service_name}")
        print(f"endpoint: {self.hfs_endpoint}")
        print(f"region_name: {self.region_name}")

        self.client = self._boto3_session.client(service_name, endpoint_url=self.hfs_endpoint, config=self.config)