def apply(self):
        try:
            level_name = self._levelCombo.get()
            levels = [
                key for key, value in PreferencesDialog._LOG_LEVELS.items()
                if value == level_name
            ]
            loglevel = levels[0]
            logging_config = build_logging_config(
                ['qiskit_acqua_chemistry', 'qiskit_acqua'], loglevel)

            preferences = Preferences()
            self._qconfigview.apply(preferences)
            preferences.set_logging_config(logging_config)
            preferences.save()
            set_logger_config(logging_config)

            uipreferences = UIPreferences()
            populate = self._populateDefaults.get()
            uipreferences.set_populate_defaults(False if populate ==
                                                0 else True)
            uipreferences.save()

            self._controller.get_available_backends()
        except Exception as e:
            self.controller.outputview.write_line(str(e))
示例#2
0
    def apply(self):
        level_name = self._levelCombo.get()
        levels = [
            key for key, value in PreferencesDialog._LOG_LEVELS.items()
            if value == level_name
        ]
        loglevel = levels[0]
        logging_config = build_logging_config(
            ['qiskit_acqua_chemistry', 'qiskit_acqua'], loglevel)

        token = self._apiToken.get().strip()
        url = self._url.get().strip()
        hub = self._hub.get().strip()
        group = self._group.get().strip()
        project = self._project.get().strip()

        preferences = Preferences()
        preferences.set_token(token if len(token) > 0 else None)
        preferences.set_url(url if len(url) > 0 else None)
        preferences.set_hub(hub if len(hub) > 0 else None)
        preferences.set_group(group if len(group) > 0 else None)
        preferences.set_project(project if len(project) > 0 else None)
        preferences.set_logging_config(logging_config)
        preferences.save()
        set_logger_config(logging_config)

        uipreferences = UIPreferences()
        populate = self._populateDefaults.get()
        uipreferences.set_populate_defaults(False if populate == 0 else True)
        uipreferences.save()

        self._controller.get_available_backends()
 def set_logging(self, level=logging.INFO):
     """Sets logging output of the logging messages.
     Sets the output of logging messages (above level `level`) by
     configuring the logger accordingly.
     Disables logging if set to logging.NOTSET
     Params:
         level (int): minimum severity of the messages that are displayed.
     """
     logging_config = build_logging_config(
         ['qiskit_acqua_chemistry', 'qiskit_acqua'], level)
     preferences = Preferences()
     preferences.set_logging_config(logging_config)
     preferences.save()
     set_logger_config(logging_config)
def main():
    parser = argparse.ArgumentParser(description='QISKit ACQUA Chemistry Command Line Tool')
    parser.add_argument('input', 
                        metavar='input', 
                        help='Chemistry input file or saved JSON input file')
    group = parser.add_mutually_exclusive_group(required=False)
    group.add_argument('-o', 
                        metavar='output', 
                        help='Algorithm Results Output file name')
    group.add_argument('-jo', 
                        metavar='json output', 
                        help='Algorithm JSON Output file name')
    
    args = parser.parse_args()
    
    preferences = Preferences()
    if preferences.get_logging_config() is None:
        logging_config = build_logging_config(['qiskit_acqua_chemistry', 'qiskit_acqua'], logging.INFO)
        preferences.set_logging_config(logging_config)
        preferences.save()
    
    set_logger_config(preferences.get_logging_config())
    
    solver = ACQUAChemistry()
    
    # check to see if input is json file
    params = None
    try:
        with open(args.input) as json_file:
            params = json.load(json_file)
    except Exception as e:
        pass
    
    if params is not None:
        solver.run_algorithm_from_json(params, args.o)
    else:
        if args.jo is not None:
            solver.run_drive_to_jsonfile(args.input, args.jo)
        else:
            result = solver.run(args.input, args.o)
            if result is not None and 'printable' in result:
                print('\n\n--------------------------------- R E S U L T ------------------------------------\n')
                for line in result['printable']:
                    print(line)