<?php
namespace Bitrix\Main\IO;

abstract class FileEntry
	extends FileSystemEntry
{
	public function __construct($path)
	{
		parent::__construct($path);
	}

	public function GetExtension()
	{
		return Path::GetExtension($this->path);
	}

	public abstract function GetContents();
	public abstract function PutContents($data);
	public abstract function GetFileSize();
	public abstract function IsWritable();
	public abstract function IsReadable();
	public abstract function ReadFile();

	public function IsDirectory()
	{
		return false;
	}

	public function IsFile()
	{
		return true;
	}

	public function IsLink()
	{
		return false;
	}
}
