<commit_before>from flask import Flask, request
from flask_restful import Resource, Api

import click

app = Flask(__name__)
api = Api(app)

todos = {}


@click.command()
@click.option('-p', default=5000, help='Port Number')
def startup(p):
    """

    :param p:
    :return:
    """
    app.run(host='0.0.0.0', port=p, debug=True)


class SimpleRest(Resource):
    def get(self, todo_id):
        return {todo_id: todos[todo_id]}

    def put(self, todo_id):
        todos[todo_id] = request.form['data']
        return {todo_id: todos[todo_id]}

api.add_resource(SimpleRest, '/<string:todo_id>')

if __name__ == '__main__':
    startup()<commit_msg>Method that returns all serial ports<commit_after>from flask import Flask, request
from flask_restful import Resource, Api

import click

#pyserial
import serial
import serial.tools.list_ports

import json

app = Flask(__name__)
api = Api(app)

todos = {}


@click.command()
@click.option('-p', default=5000, help='Port Number')
def startup(p):
    """

    :param p:
    :return:
    """
    app.run(host='0.0.0.0', port=p, debug=True)


class SimpleRest(Resource):
    def get(self, todo_id):
        return {todo_id: todos[todo_id]}

    def put(self, todo_id):
        todos[todo_id] = request.form['data']
        return {todo_id: todos[todo_id]}
"""
    Classe responsavel, por retornar as portas seriais, conectadas no dispositivo.
"""
class serialDevices(Resource):
    def get(self,nome=None):
        print (nome)
        #Quando não for passado o nome, retorna todas as portas disponiveis
        if not nome:
            '''
                Retorno da lista: ('dispositivo','nome','descricao')
            '''
            devices = serial.tools.list_ports.comports()
        
        res = {'devices': devices}
        #return json.dumps(res) para retornar em string
        return res



api.add_resource(SimpleRest, '/<string:todo_id>')
api.add_resource(serialDevices, '/serialDevices','/serialDevices/<string:nome>')

if __name__ == '__main__':
    startup()
{'fraction_non_alphanumeric': 0.13777777777777778, 'fraction_numerical': 0.007901234567901235, 'mean_word_length': 3.292372881355932, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 6, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 2, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4270542', 'n_tokens_mistral': 712, 'n_tokens_neox': 702, 'n_words': 164}