[ticket/13904] Use factory instead of container and add factory to services

PHPBB3-13904
This commit is contained in:
Marc Alexander 2015-08-14 09:13:27 +02:00
parent f32a94ae5d
commit eb11973ea8
2 changed files with 18 additions and 12 deletions

View file

@ -2,6 +2,11 @@ services:
filesystem:
class: phpbb\filesystem\filesystem
files.factory:
class: phpbb\files\factory
arguments:
- @service_container
files.filespec:
class: phpbb\files\filespec
scope: prototype
@ -15,3 +20,4 @@ services:
scope: prototype
arguments:
- @filesystem
- @files.factory

View file

@ -36,20 +36,20 @@ class upload
*/
protected $filesystem;
/** @var \phpbb\files\factory Files factory */
protected $factory;
/**
* Init file upload class.
*
* @param \phpbb\filesystem\filesystem_interface $filesystem
* @param \phpbb\files\factory $factory Files factory
*
*/
public function __construct(\phpbb\filesystem\filesystem_interface $filesystem)
public function __construct(\phpbb\filesystem\filesystem_interface $filesystem, factory $factory)
{
// $this->set_allowed_extensions($allowed_extensions);
// $this->set_max_filesize($max_filesize);
// $this->set_allowed_dimensions($min_width, $min_height, $max_width, $max_height);
// $this->set_error_prefix($error_prefix);
// $this->set_disallowed_content($disallowed_content);
$this->filesystem = $filesystem;
$this->factory = $factory;
}
/**
@ -138,7 +138,7 @@ class upload
*/
function form_upload($form_name, \phpbb\plupload\plupload $plupload = null)
{
global $user, $request, $phpbb_container;
global $user, $request;
$upload = $request->file($form_name);
unset($upload['local_mode']);
@ -153,7 +153,7 @@ class upload
}
/** @var \phpbb\files\filespec $file */
$file = $phpbb_container->get('files.filespec')
$file = $this->factory->get('filespec')
->set_upload_ary($upload)
->set_upload_namespace($this);
@ -217,7 +217,7 @@ class upload
*/
function local_upload($source_file, $filedata = false)
{
global $user, $request, $phpbb_container;
global $user, $request;
$upload = array();
@ -237,7 +237,7 @@ class upload
}
/** @var \phpbb\files\filespec $file */
$file = $phpbb_container->get('files.filespec')
$file = $this->factory->get('filespec')
->set_upload_ary($upload)
->set_upload_namespace($this);
@ -299,7 +299,7 @@ class upload
*/
function remote_upload($upload_url)
{
global $user, $phpbb_root_path, $phpbb_container;
global $user, $phpbb_root_path;
$upload_ary = array();
$upload_ary['local_mode'] = true;
@ -477,7 +477,7 @@ class upload
$upload_ary['tmp_name'] = $filename;
/** @var \phpbb\files\filespec $file */
$file = $phpbb_container->get('files.filespec')
$file = $this->factory->get('filespec')
->set_upload_ary($upload_ary)
->set_upload_namespace($this);
$this->common_checks($file);