foliolib.folio.api.inventoryStorage.InstanceIteration

class foliolib.folio.api.inventoryStorage.InstanceIteration(tenant: str, okapi: Optional[foliolib.okapi.okapiClient.OkapiClient] = None)

Bases: foliolib.folio.FolioApi

Instance iteration

Iterate instances by generating domain events for them

Parameters
  • tenant (str) – Tenant id

  • okapi (OkapiClient, optional) – Instance of OkapiClient. Defaults to None.

Methods

delete_iteration(iterationId)

Cancel iteration job by id

get_iteration(iterationId)

Get iteration job by id

set_iteration(iteration)

Submit an iteration job

delete_iteration(iterationId: str)

Cancel iteration job by id

DELETE /instance-storage/instances/iteration/{iterationId}

Parameters

iterationId (str) –

Raises
  • OkapiRequestNotFound – Not Found

  • OkapiFatalError – Server Error

get_iteration(iterationId: str)

Get iteration job by id

GET /instance-storage/instances/iteration/{iterationId}

Parameters

iterationId (str) –

Returns

See Schema below

Return type

dict

Raises
  • OkapiRequestNotFound – Not Found

  • OkapiFatalError – Server Error

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "Iteration job",
  "type": "object",
  "properties": {
    "id": {
      "description": "Job id",
      "type": "string",
      "$ref": "../raml-util/schemas/uuid.schema"
    },
    "messagesPublished": {
      "description": "Number of messages that was published so far",
      "type": "integer",
      "minimum": 0,
      "default": 0
    },
    "jobStatus": {
      "description": "Overall job status",
      "type": "string",
      "enum": [
        "In progress",
        "Failed",
        "Completed",
        "Cancellation pending",
        "Cancelled"
      ]
    },
    "submittedDate": {
      "description": "Timestamp when the job has been submitted",
      "type": "string",
      "format": "date-time"
    },
    "jobParams": {
      "description": "Job parameters",
      "type": "object",
      "$ref": "iteration-job-params.json"
    }
  },
  "additionalProperties": false
}
set_iteration(iteration: dict)

Submit an iteration job

POST /instance-storage/instances/iteration

Parameters

iteration (dict) – See Schema below

Returns

See Schema below

Return type

dict

Raises

OkapiFatalError – Server Error

Schema

{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "Iteration job parameters",
  "type": "object",
  "javaType": "org.folio.rest.jaxrs.model.IterationJobParams",
  "properties": {
    "eventType": {
      "description": "Type of events to be published",
      "type": "string",
      "default": "ITERATE"
    },
    "topicName": {
      "description": "Name of Kafka topic to publish events to",
      "type": "string"
    }
  },
  "additionalProperties": false,
  "required": [
    "topicName"
  ]
}
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "description": "Iteration job",
  "type": "object",
  "properties": {
    "id": {
      "description": "Job id",
      "type": "string",
      "$ref": "../raml-util/schemas/uuid.schema"
    },
    "messagesPublished": {
      "description": "Number of messages that was published so far",
      "type": "integer",
      "minimum": 0,
      "default": 0
    },
    "jobStatus": {
      "description": "Overall job status",
      "type": "string",
      "enum": [
        "In progress",
        "Failed",
        "Completed",
        "Cancellation pending",
        "Cancelled"
      ]
    },
    "submittedDate": {
      "description": "Timestamp when the job has been submitted",
      "type": "string",
      "format": "date-time"
    },
    "jobParams": {
      "description": "Job parameters",
      "type": "object",
      "$ref": "iteration-job-params.json"
    }
  },
  "additionalProperties": false
}