ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilDerivedTaskProviderMasterFactory Class Reference

Derived task providers factory. More...

+ Collaboration diagram for ilDerivedTaskProviderMasterFactory:

Public Member Functions

 __construct (ilTaskService $service, $provider_factories=null)
 Constructor. More...
 
 getAllProviders (bool $active_only=false, ?int $user_id=null)
 Get all task providers. More...
 

Protected Attributes

ilTaskService $service
 
array $default_provider_factories
 
 $provider_factories = []
 

Detailed Description

Derived task providers factory.

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 26 of file class.ilDerivedTaskProviderMasterFactory.php.

Constructor & Destructor Documentation

◆ __construct()

ilDerivedTaskProviderMasterFactory::__construct ( ilTaskService  $service,
  $provider_factories = null 
)

Constructor.

Definition at line 48 of file class.ilDerivedTaskProviderMasterFactory.php.

49 {
50 if (is_null($provider_factories)) {
51 $this->provider_factories = array_map(fn ($class): ilDerivedTaskProviderFactory => new $class($service), $this->default_provider_factories);
52 } else {
53 $this->provider_factories = $provider_factories;
54 }
55 $this->service = $service;
56 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References $provider_factories, and $service.

Member Function Documentation

◆ getAllProviders()

ilDerivedTaskProviderMasterFactory::getAllProviders ( bool  $active_only = false,
?int  $user_id = null 
)

Get all task providers.

Parameters
bool$active_onlyget only active providers
int$user_idget instances for user with user id
Returns
ilLearningHistoryProviderInterface[]

Definition at line 65 of file class.ilDerivedTaskProviderMasterFactory.php.

65 : array
66 {
67 $providers = array();
68
69 if ($user_id == 0) {
70 $user_id = $this->service->getDependencies()->user()->getId();
71 }
72
73 foreach ($this->provider_factories as $provider_factory) {
74 foreach ($provider_factory->getProviders() as $provider) {
75 if (!$active_only || $provider->isActive()) {
76 $providers[] = $provider;
77 }
78 }
79 }
80
81 return $providers;
82 }
$provider
Definition: ltitoken.php:80

References $provider, and $user_id.

Field Documentation

◆ $default_provider_factories

array ilDerivedTaskProviderMasterFactory::$default_provider_factories
protected
Initial value:
= array(
ilExerciseDerivedTaskProviderFactory::class,
ilForumDerivedTaskProviderFactory::class,
DerivedTaskProviderFactory::class,
ilBlogDerivedTaskProviderFactory::class
)

Definition at line 33 of file class.ilDerivedTaskProviderMasterFactory.php.

◆ $provider_factories

ilDerivedTaskProviderMasterFactory::$provider_factories = []
protected

Definition at line 43 of file class.ilDerivedTaskProviderMasterFactory.php.

Referenced by __construct().

◆ $service

ilTaskService ilDerivedTaskProviderMasterFactory::$service
protected

Definition at line 28 of file class.ilDerivedTaskProviderMasterFactory.php.

Referenced by __construct().


The documentation for this class was generated from the following file: