public function assemble() {
		if ($this->inputFiles->isEmpty()) {
			throw new OperationError('Nothing to assemble, you should add at least one item');
		}
		
		$result = '';
		
		foreach ($this->inputFiles as $path) {
			$content = file_get_contents($path);
			
			if ($content === false) {
				throw new OperationError('Unable to read the file: "' . $path . '"');
			}
			
			if ($this->fileInfo) {
				$result .= sprintf($this->fileInfoTemplate, $path);
				$result .= $this->delimiter;
			}
			
			$result .= $content;
			$result .= $this->delimiter;
		}
		
		return $result;
	}