<?php

namespace App\Console\Commands\Debug;

use Illuminate\Console\Command;

use App\Classes\File\Send;
use App\Classes\File\Send\Dynamic;
use App\Models\Address;
use App\Models\Dynamic as DynamicModel;

class DynamicItem extends Command
{
	protected $signature = 'debug:dynamic:item'
		.' {name : Dynamic Item}';

	protected $description = 'Generate a dynamic item';

	public function handle(): int
	{
		$do = DynamicModel::where('name',$this->argument('name'))->single();

		if (! $do)
			throw new \Exception(sprintf('Dynamic Item [%s] doesnt exist?',$this->argument('name')));

		$d = new Dynamic($do,$do->address,Send::T_FILE);

		$d->open();
		echo $d->read($d->size);

		return self::SUCCESS;
	}
}