Exemplo n.º 1
0
def result(job_id):
    """ Displays a job result.

    Args:
        job_id (str): The job id.
    """
    job = q.fetch_job(job_id)
    statuses = {
        "queued": 202,
        "started": 202,
        "finished": 200,
        "failed": 500,
        "job not found": 404,
    }

    if job:
        job_status = job.get_status()
        job_result = job.result
    else:
        job_status = "job not found"
        job_result = {}

    response = {
        "status_code": statuses[job_status],
        "job_id": job_id,
        "job_status": job_status,
        "result": job_result,
        "links": get_links(app.url_map.iter_rules()),
    }

    return jsonify(**response)
Exemplo n.º 2
0
def status():
    kwargs = parse_kwargs(app)
    use_s3 = kwargs.get("source", "s3") == "s3"
    response = get_status(use_s3=use_s3)
    response["description"] = "Displays the status of the s3 bucket"
    response["links"] = get_links(app.url_map.iter_rules())
    return jsonify(**response)
Exemplo n.º 3
0
def ipsum():
    response = {
        "description": "Displays a random sentence",
        "links": get_links(app.url_map.iter_rules()),
        "message": fake.sentence(),
    }

    return jsonify(**response)
Exemplo n.º 4
0
def home():
    response = {
        "description": "Returns API documentation",
        "message": "Welcome to the Alegna Commission Calculator API!",
        "links": get_links(app.url_map.iter_rules()),
    }

    return jsonify(**response)
Exemplo n.º 5
0
def result(job_id):
    """ Displays a job result.

    Args:
        job_id (str): The job id.
    """
    response = get_job_result_by_id(job_id)
    response["links"] = get_links(app.url_map.iter_rules())
    return jsonify(**response)
Exemplo n.º 6
0
    def get(self):
        base_url = get_request_base()

        response = {
            "description":
            "Deletes a cache url",
            "links":
            get_links(app.url_map.iter_rules()),
            "message":
            f"The {request.method}:{base_url} route is not yet complete.",
        }

        return jsonify(**response)
Exemplo n.º 7
0
    def delete(self, path=None):
        if path:
            url = f"{PREFIX}/{path}"
            cache.delete(url)
            message = f"Deleted cache for {url}"
        else:
            cache.clear()
            message = "Caches cleared!"

        response = {
            "links": get_links(app.url_map.iter_rules()),
            "message": message
        }
        return jsonify(**response)
Exemplo n.º 8
0
    def get(self, order_id):
        info = {
            "description": "Get a Cloze customer for a PriceCloser order",
            "links": get_links(app.url_map.iter_rules()),
        }

        order_response = get_pc_orders(order_id)

        if order_response["ok"]:
            pricecloser_order = order_response["result"]
            response = get_cloze_customer(pricecloser_order)
        else:
            response = order_response

        response.update(info)
        return jsonify(**response)
Exemplo n.º 9
0
    def post(self):
        """ get all threat_actor using pagination default limit=5 """

        data = parser.parse_args()

        if data['limit'] is None:
            limit = 5
        else:
            limit = int(data['limit'])

        if data['offset'] is None:
            offset = 0
        else:
            offset = int(data['offset'])

        if data['sorted'] is not None:
            sort = ast.literal_eval(data['sorted'])
        else:
            sort = None

        if data['filtered'] is not None:
            filt = ast.literal_eval(data['filtered'])
        else:
            filt = None

        # get data
        threat_actor = ThreatActor()
        threat_actor_data, size = threat_actor.get_all(limit, offset, sort,
                                                       filt)

        # get links
        links = get_links(size, limit, offset)

        return {
            '_links': links,
            'limit': limit,
            'offset': offset,
            'data': threat_actor_data,
            'size': size
        }
Exemplo n.º 10
0
    def post(self):
        """ get all attack_pattern using pagination default limit=5 """

        data = parser.parse_args()

        if data['limit'] is None:
            limit = 5
        else:
            limit = int(data['limit'])

        if data['offset'] is None:
            offset = 0
        else:
            offset = int(data['offset'])

        if data['sorted'] is not None:
            sort = ast.literal_eval(data['sorted'])
        else:
            sort = None

        if data['filtered'] is not None:
            filt = ast.literal_eval(data['filtered'])
        else:
            filt = None

        # get data
        attack_pattern = AttackPattern()
        attack_pattern_data, size = attack_pattern.get_all(
            limit, offset, sort, filt)

        # get links
        links = get_links(size, limit, offset)

        return {
            '_links': links,
            'limit': limit,
            'offset': offset,
            'data': attack_pattern_data,
            'size': size
        }
Exemplo n.º 11
0
    def post(self):
        """ get all observed data using pagination default limit=5 """

        data = parser.parse_args()

        if data['limit'] is None:
            limit = 5
        else:
            limit = int(data['limit'])

        if data['offset'] is None:
            offset = 0
        else:
            offset = int(data['offset'])

        if data['sorted'] is not None:
            sort = ast.literal_eval(data['sorted'])
        else:
            sort = None

        if data['filtered'] is not None:
            filt = ast.literal_eval(data['filtered'])
        else:
            filt = None

        # get data
        observed_data = ObservedData()
        obs_data, size = observed_data.get_all(limit, offset, sort, filt)

        # get links
        links = get_links(size, limit, offset)

        return {
            '_links': links,
            'limit': limit,
            'offset': offset,
            'data': obs_data,
            'size': size
        }
Exemplo n.º 12
0
def root():
    response = {
        "message": "Welcome to the ClozeCart API!",
        "links": get_links(app.url_map.iter_rules()),
    }
    return jsonify(**response)