示例#1
0
def post_universe_names(
    callbacks: Optional[models.CallbackCollection] = None, ):
    if callbacks is None:
        callbacks = default_callback_collection()
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_esi_job_to_json_file",
                kwargs={
                    "file_path_template":
                    "data/post_universe_names-${esi_job_uid}-esi-job.json"
                },
            ))
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_result_to_json_file",
                kwargs={
                    "file_path_template":
                    "data/post_universe_names-${esi_job_uid}.json"
                },
            ))
    job = models.EsiJob(
        op_id="post_universe_names",
        name="post_universe_names",
        callbacks=callbacks,
    )
    job.parameters = {"ids": [95465499, 30000142]}
    return job
示例#2
0
def result_with_pages_to_json_file():
    work_order = models.EsiWorkOrder(
        name="result_with_pages_to_json_file",
        output_path="samples/order_output/${ewo_name}",
        description=
        ("An example of saving the raw results with a paged api to a json file."
         ),
    )
    job = models.EsiJob(
        op_id="get_contracts_public_region_id",
        parameters={"region_id": 10000002},
    )
    work_order.jobs.append(job)
    job.callbacks.success.append(
        models.JobCallback(callback_id="response_content_to_json"))
    job.callbacks.success.append(
        models.JobCallback(callback_id="check_for_pages"))
    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template": "data/public-contracts/${region_id}.json"
            },
        ))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="response_to_esi_job"))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="log_job_failure"))
    return work_order
示例#3
0
def result_to_json_file():
    work_order = models.EsiWorkOrder(
        name="result_to_json_file",
        output_path="samples/order_output/${ewo_name}",
        description=("An example of saving the raw results to a json file."),
    )
    job = models.EsiJob(
        op_id="get_markets_region_id_history",
        parameters={
            "region_id": 10000002,
            "type_id": 34
        },
    )
    work_order.jobs.append(job)
    job.callbacks.success.append(
        models.JobCallback(callback_id="response_content_to_json"))

    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template":
                "data/market-history/${region_id}-${type_id}.json"
            },
        ))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="response_to_esi_job"))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="log_job_failure"))
    return work_order
示例#4
0
def get_markets_region_id_history(
    region_id: int,
    type_id: int,
    callbacks: Optional[models.CallbackCollection] = None,
):
    if callbacks is None:
        callbacks = default_callback_collection()
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_esi_job_to_json_file",
                kwargs={
                    "file_path_template":
                    "data/market-history-${region_id}-${type_id}-esi-job.json"
                },
            ))
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_result_to_json_file",
                kwargs={
                    "file_path_template":
                    "data/market-history-${region_id}-${type_id}-esi-job.json"
                },
            ))
    job = models.EsiJob(
        op_id="get_markets_region_id_history",
        name="get_markets_region_id_history",
        callbacks=callbacks,
    )
    job.parameters = {"region_id": region_id, "type_id": type_id}
    return job
示例#5
0
def no_file_output() -> models.CallbackCollection:
    callback_collection = models.CallbackCollection()
    callback_collection.success.append(
        models.JobCallback(callback_id="response_content_to_json")
    )
    callback_collection.success.append(
        models.JobCallback(callback_id="response_to_esi_job")
    )
    callback_collection.fail.append(
        models.JobCallback(callback_id="response_to_esi_job")
    )
    callback_collection.fail.append(models.JobCallback(callback_id="log_job_failure"))
    return callback_collection
示例#6
0
def get_industry_facilities():
    job = models.EsiJob(
        op_id="get_industry_facilities",
    )
    job.callbacks.success.append(
        models.JobCallback(callback_id="response_content_to_json")
    )
    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_esi_job_to_json_file",
            kwargs={"file_path_template": "data/industry-facilities.json"},
        )
    )
    return job
示例#7
0
def result_to_csv_file():
    work_order = models.EsiWorkOrder(
        name="result_to_csv_file",
        output_path="samples/order_output/${ewo_name}",
        description=(
            "An example of saving the json results to a csv file. Also, shows "
            "reordering columns, and adding additional columns"),
    )
    job = models.EsiJob(
        op_id="get_markets_region_id_history",
        parameters={
            "region_id": 10000002,
            "type_id": 34
        },
    )
    work_order.jobs.append(job)
    job.callbacks.success.append(
        models.JobCallback(callback_id="response_content_to_json"))

    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_list_of_dict_result_to_csv_file",
            kwargs={
                "additional_fields": {
                    "region_id": 10000002,
                    "type_id": 34
                },
                "field_names": [
                    "date",
                    "average",
                    "highest",
                    "lowest",
                    "order_count",
                    "volume",
                    "region_id",
                    "type_id",
                ],
                "file_path_template":
                "data/market-history/${region_id}-${type_id}.csv",
            },
        ))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="response_to_esi_job"))
    job.callbacks.fail.append(
        models.JobCallback(callback_id="log_job_failure"))
    return work_order
示例#8
0
def generic_save_result_to_json() -> models.CallbackCollection:
    callback_collection = models.CallbackCollection()
    callback_collection.success.append(
        models.JobCallback(callback_id="response_content_to_json")
    )
    callback_collection.success.append(
        models.JobCallback(callback_id="response_to_esi_job")
    )
    callback_collection.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template": "job_data/${esi_job_op_id}-${esi_job_uid}.json"
            },
        )
    )
    callback_collection.fail.append(
        models.JobCallback(callback_id="response_to_esi_job")
    )
    callback_collection.fail.append(models.JobCallback(callback_id="log_job_failure"))
    return callback_collection
示例#9
0
def get_industry_systems(
    callbacks: Optional[models.CallbackCollection] = None, ):
    if callbacks is None:
        callbacks = default_callback_collection()
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_esi_job_to_json_file",
                kwargs={
                    "file_path_template": "data/industry-systems-esi-job.json"
                },
            ))
        callbacks.success.append(
            models.JobCallback(
                callback_id="save_result_to_json_file",
                kwargs={"file_path_template": "data/industry-systems.json"},
            ))
    job = models.EsiJob(
        op_id="get_industry_systems",
        name="get_industry_systems",
        callbacks=callbacks,
    )
    return job
示例#10
0
def example_workorder():

    region_id = 10000002
    type_id = 34
    work_order = models.EsiWorkOrder(
        name="example_workorder",
        output_path="samples/workorder_output/${ewo_name}",
        description=
        ("An example of a workorder, with a collection of "
         "jobs whose output is gathered under a file path defined in the workorder."
         ),
    )
    job = get_markets_region_id_history(region_id, type_id,
                                        default_callback_collection())
    job.name = "Save market history as json"
    job.id_ = 1
    job.description = ("Get the market history for Tritainium in The Forge "
                       "region, and save it to a json file.")
    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}-esi-job.json"
            },
        ))
    job.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_yaml_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}-esi-job.yaml"
            },
        ))

    work_order.jobs.append(job)
    #####
    job_2 = get_markets_region_id_history(region_id, type_id,
                                          default_callback_collection())
    job_2.name = "Save market history and job as json"
    job_2.id_ = 2
    job_2.description = (
        "Get the market history for Tritainium in The Forge "
        "region, and save it to a json file. Also save the job,"
        " including the response metadata, to a separate json file.")
    job_2.callbacks.success.append(
        models.JobCallback(
            callback_id="save_esi_job_to_json_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}-esi-job.json"
            },
        ))
    job_2.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}.json"
            },
        ))
    work_order.jobs.append(job_2)
    #####
    job_3 = get_markets_region_id_history(region_id, type_id,
                                          default_callback_collection())
    job_3.name = "Save market history as csv and job with data as json"
    job_3.id_ = 3
    job_3.description = (
        "Get the market history for Tritainium in The Forge "
        "region, and save it to a csv file. The region_id and type_id added to each row, "
        "and the columns are given a custom order. "
        "Also save the job, including the response metadata and the result data, "
        "to a separate json file.")
    job_3.callbacks.success.append(
        models.JobCallback(callback_id="result_to_esi_job"))
    job_3.callbacks.success.append(
        models.JobCallback(
            callback_id="save_esi_job_to_json_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}-esi-job.json"
            },
        ))
    job_3.callbacks.success.append(
        models.JobCallback(
            callback_id="save_list_of_dict_result_to_csv_file",
            kwargs={
                "additional_fields": {
                    "region_id": 10000002,
                    "type_id": 34
                },
                "field_names": [
                    "date",
                    "average",
                    "highest",
                    "lowest",
                    "order_count",
                    "volume",
                    "region_id",
                    "type_id",
                ],
                "file_path_template":
                "${esi_job_id_}/market-history-${region_id}-${type_id}.csv",
            },
        ))
    work_order.jobs.append(job_3)
    #####
    job_4 = models.EsiJob(
        name="get paged data",
        description="Get the all the pages from a paged api.",
        id_=4,
        op_id="get_contracts_public_region_id",
        parameters={"region_id": 10000002},
        callbacks=default_callback_collection(),
    )
    job_4.callbacks.success.append(
        models.JobCallback(callback_id="check_for_pages"))
    job_4.callbacks.success.append(
        models.JobCallback(
            callback_id="save_result_to_json_file",
            kwargs={
                "file_path_template":
                "${esi_job_id_}/public-contracts/${region_id}.json"
            },
        ))
    work_order.jobs.append(job_4)
    return work_order