description: >
    Implement to provide Dump attributes.

    Object which implements this interface must implement
    xyz.openbmc_project.Time.EpochTime for the Dump creation time. Object which
    implements this interface should implement xyz.openbmc_project.Object.Delete
    to allow the deletion of individual Dump objects (and its dump object
    manager should implement xyz.openbmc_project.Collection.DeleteAll).

methods:
    - name: InitiateOffload
      description: >
          This method initiates the offload of the dump from the dump storage.
          The transfer will be initiated to the target provide. The caller of
          this function should set up a method to transfer and pass the URI to
          to this function. If there is no exceptions the caller can assume the
          transfer is successfully initiated. Once the transfer is completed.
          The application which is transferring the dump should set offloaded
          property to true to indicate offload is completed.
      parameters:
          - name: OffloadUri
            type: string
            description: >
                The location to offload dump file, error InvalidArgument will be
                returned if the URI is not well formated.
      errors:
          - xyz.openbmc_project.Common.File.Error.Open
          - xyz.openbmc_project.Common.File.Error.Write
          - xyz.openbmc_project.Common.Error.InvalidArgument
          - xyz.openbmc_project.Common.Error.NotAllowed
          - xyz.openbmc_project.Common.Error.Unavailable

properties:
    - name: Size
      type: uint64
      description: >
          Size of the Dump.
    - name: Offloaded
      type: boolean
      description: >
          Indicates whether the dump is offloaded to a client. The BMC
          application which knows the status of the offload operation should set
          this to true once the entire dump is offloaded.
    - name: OffloadUri
      type: string
      description: >
          The URI to write the dump file.
