<?php

namespace HelpGent\App\DTO;

defined( 'ABSPATH' ) || exit;

class ChunkFileStateDTO {
    private bool $is_done;

    private int  $last_sent_bytes;

    private ?AttachmentFileDTO $file = null;

    /**
     * Get the value of is_done
     *
     * @return bool
     */
    public function get_is_done(): bool {
        return $this->is_done;
    }
    
    /**
     * Set the value of is_done
     *
     * @param bool $is_done
     * @return self
     */
    public function set_is_done( bool $is_done ): self {
        $this->is_done = $is_done;
    
        return $this;
    }

    /**
     * Get the value of last_sent_bytes
     *
     * @return int
     */
    public function get_last_sent_bytes(): int {
        return $this->last_sent_bytes;
    }
    
    /**
     * Set the value of last_sent_bytes
     *
     * @param int $last_sent_bytes
     * @return self
     */
    public function set_last_sent_bytes( int $last_sent_bytes ): self {
        $this->last_sent_bytes = $last_sent_bytes;
    
        return $this;
    }

    /**
     * Get the value of file
     *
     * @return ?AttachmentFileDTO
     */
    public function get_file(): ?AttachmentFileDTO {
        return $this->file;
    }
    
    /**
     * Set the value of file
     *
     * @param ?AttachmentFileDTO $file
     * @return self
     */
    public function set_file( ?AttachmentFileDTO $file ): self {
        $this->file = $file;
    
        return $this;
    }
}