Example #1
0
    def validate_config(cls, app):
        app_config = app.config.get('DB_HOST', None)
        if not app_config:
            cls.log_error('ENV is not set', None)
            raise NameRequestException(message='Internal server error')

        test_env = 'prod'
        if test_env in app_config:
            raise NameRequestException(message='Not Implemented')
    def nr_service(self):
        try:
            if not self._nr_service:
                self._nr_service = NameRequestService()
        except Exception as err:
            raise NameRequestException(
                err, message='Error initializing NameRequestService')

        return self._nr_service
    def nr_service(self):
        try:
            if not self._nr_service:
                self._nr_service = NameRequestService()
                self._nr_service.virtual_wc_service = VirtualWordConditionService()
        except Exception as err:
            raise NameRequestException(err, message='Error initializing NameRequestService')

        return self._nr_service
    def update_request_in_nro(self, name_request, on_success=None):
        # Only update Oracle for DRAFT
        # NRO / Oracle records are added when CONDITIONAL or APPROVED (see add_request_to_nro)
        if name_request.stateCd in [State.DRAFT]:
            if current_app.config.get('DISABLE_NAMEREQUEST_NRO_UPDATES',
                                      0) == 1:
                # Ignore update to NRO if NRO updates [DISABLE_NAMEREQUEST_NRO_UPDATES] are explicitly disabled in your .env
                nro_warnings = None
            else:
                nro_warnings = self.nro_service.change_nr(
                    name_request, {
                        NROChangeFlags.REQUEST.value: True,
                        NROChangeFlags.PREV_REQ.value: False,
                        NROChangeFlags.APPLICANT.value: True,
                        NROChangeFlags.ADDRESS.value: True,
                        NROChangeFlags.NAME_1.value: True,
                        NROChangeFlags.NAME_2.value: True,
                        NROChangeFlags.NAME_3.value: True,
                        NROChangeFlags.CONSENT.value: False,
                        NROChangeFlags.STATE.value: False
                    })

            return self.on_nro_update_complete(name_request, on_success,
                                               nro_warnings)
        elif name_request.stateCd in [State.CONDITIONAL, State.APPROVED]:
            if current_app.config.get('DISABLE_NAMEREQUEST_NRO_UPDATES',
                                      0) == 1:
                # Ignore update to NRO if NRO updates [DISABLE_NAMEREQUEST_NRO_UPDATES] are explicitly disabled in your .env
                nro_warnings = None
            else:
                nro_warnings = self.nro_service.change_nr(
                    name_request, {
                        NROChangeFlags.REQUEST.value: True,
                        NROChangeFlags.APPLICANT.value: True,
                        NROChangeFlags.ADDRESS.value: True,
                        NROChangeFlags.NAME_1.value: False,
                        NROChangeFlags.NAME_2.value: False,
                        NROChangeFlags.NAME_3.value: False,
                        NROChangeFlags.NWPTA_AB.value: False,
                        NROChangeFlags.NWPTA_SK.value: False,
                        NROChangeFlags.CONSENT.value: False
                    })

            return self.on_nro_update_complete(name_request, on_success,
                                               nro_warnings)
        elif name_request.stateCd in [State.CANCELLED]:
            if current_app.config.get('DISABLE_NAMEREQUEST_NRO_UPDATES',
                                      0) == 1:
                # Ignore update to NRO if NRO updates [DISABLE_NAMEREQUEST_NRO_UPDATES] are explicitly disabled in your .env
                nro_warnings = None
            else:
                # TODO: Update this! Add in mocks...
                nro_warnings = self.nro_service.cancel_nr(
                    name_request, 'name_request_service_account')

            return self.on_nro_update_complete(name_request, on_success,
                                               nro_warnings)
        else:
            raise NameRequestException(
                message='Invalid state exception [' + name_request.stateCd +
                '], cannot update Name Request in NRO when Request state is NOT in DRAFT or CANCELLED'
            )
 def validate_config(cls, app):
     app_config = app.config.get('DB_HOST', None)
     if not app_config:
         cls.log_error('ENV is not set', None)
         raise NameRequestException(message='Internal server error')