ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
ilDerivedTaskProviderMasterFactory Class Reference

Derived task providers factory. More...

+ Collaboration diagram for ilDerivedTaskProviderMasterFactory:

Public Member Functions

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

Protected Attributes

 $service
 
 $default_provider_factories
 
 $provider_factories
 

Detailed Description

Derived task providers factory.

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

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

Constructor & Destructor Documentation

◆ __construct()

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

Constructor.

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

37 {
38 if (is_null($provider_factories)) {
39 $this->provider_factories = array_map(function ($class) use ($service) {
40 return new $class($service);
42 } else {
43 $this->provider_factories = $provider_factories;
44 }
45 $this->service = $service;
46 }

References $default_provider_factories, $provider_factories, and $service.

Member Function Documentation

◆ getAllProviders()

ilDerivedTaskProviderMasterFactory::getAllProviders (   $active_only = false,
  $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 55 of file class.ilDerivedTaskProviderMasterFactory.php.

56 {
57 $providers = array();
58
59 if ($user_id == 0) {
60 $user_id = $this->service->getDependencies()->user()->getId();
61 }
62
63 foreach ($this->provider_factories as $provider_factory) {
64 foreach ($provider_factory->getProviders() as $provider) {
65 if (!$active_only || $provider->isActive()) {
66 $providers[] = $provider;
67 }
68 }
69 }
70
71 return $providers;
72 }

Field Documentation

◆ $default_provider_factories

ilDerivedTaskProviderMasterFactory::$default_provider_factories
protected
Initial value:
= array(
ilExerciseDerivedTaskProviderFactory::class,
\ilForumDerivedTaskProviderFactory::class,
\ILIAS\Survey\Tasks\DerivedTaskProviderFactory::class,
ilBlogDerivedTaskProviderFactory::class
)
Class ChatMainBarProvider \MainMenu\Provider.

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

Referenced by __construct().

◆ $provider_factories

ilDerivedTaskProviderMasterFactory::$provider_factories
protected

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

Referenced by __construct().

◆ $service

ilDerivedTaskProviderMasterFactory::$service
protected

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

Referenced by __construct().


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