def post(self):
        values = request.get_json()
        networks = send_message(service_name="get_networks_names",
                                data="",
                                logger=logger,
                                config=read_config())

        if values["name"] not in networks['Networks']:
            response = {
                "Message": f"Network {values['name']} not found."
            }
            return prepare_response(response, 200)

        network_details = send_message(service_name="get_network_details",
                                       data={'name': values["name"]},
                                       logger=logger,
                                       config=read_config())
        if not network_details["Compiled"]:
            response = {
                "Message": f"Network {values['name']} need to be compiled."
            }
            return prepare_response(response, 200)

        response = send_message(service_name="train_network",
                                data=values,
                                logger=logger,
                                config=read_config())
        return prepare_response(response, 200)
    def post(self):
        values = request.json
        response = send_message(service_name="new_network",
                                data=values,
                                logger=logger,
                                config=read_config())

        return prepare_response(response, 200)
    def post(self):
        values = request.get_json()
        networks = send_message(service_name="get_networks_names",
                                data="",
                                logger=logger,
                                config=read_config())
        if values["name"] not in networks['Networks']:
            response = {
                "Message": f"Network {values['name']} not found."
            }
            return prepare_response(response, 200)

        response = send_message(service_name="evaluate_network",
                                data=values,
                                logger=logger,
                                config=read_config())
        return prepare_response(response, 200)
 def get(self):
     response = send_message(service_name="health_check",
                             data="",
                             logger=logger,
                             config=read_config())
     response = {
         "Message": response
     }
     return prepare_response(response, 200)
    def post(self, name: str, file_extension: str):
        args = upload_parser.parse_args()
        uploaded_file = args['file']
        file_name = f"{name}.{file_extension}"
        uploaded_file.save(f"{name}.{file_extension}")

        response = send_message(service_name="add_data_source",
                                data={'file_name': file_name},
                                logger=logger,
                                config=read_config())
        return prepare_response(response, 200)
    def get(self, name: str):
        history = send_message(service_name="get_network_history",
                               data={'name': name},
                               logger=logger,
                               config=read_config())
        history = history["History"]
        history = json.loads(history)
        loss = list(history['loss'].values())
        val_loss = list(history['val_loss'].values())
        epochs = range(len(loss))

        plt_html = mpld3.fig_to_html(plot(epochs=epochs,
                                          train_values=loss,
                                          validation_values=val_loss,
                                          metric="Loss"))
        headers = {'Content-Type': 'text/html'}
        return make_response(plt_html, 200, headers)
 def get(self):
     response = send_message(service_name="get_data_sources",
                             data="",
                             logger=logger,
                             config=read_config())
     return prepare_response(response, 200)
 def get(self, name: str):
     response = send_message(service_name="get_network_history",
                             data={'name': name},
                             logger=logger,
                             config=read_config())
     return prepare_response(response, 200)