PluginProbe
Assistant – Every Day Productivity Apps / trunk
Assistant – Every Day Productivity Apps vtrunk
1.5.5 trunk 0.1.0 0.2.0 0.2.1 0.2.2 0.3.0 0.3.1 0.4 0.4.1 0.4.2 0.5.0 0.5.1 0.6.0 0.7.0 0.7.0.2 0.7.0.3 0.7.0.4 0.7.0.5 0.7.0.6 0.7.0.7 0.7.0.8 0.7.0.9 0.7.1 1.0 All 71 releases
assistant / backend / src / Providers / DataServiceProvider.php

DataServiceProvider.php in Assistant – Every Day Productivity Apps trunk, at backend/src/Providers/DataServiceProvider.php

80 lines 2.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3
4 namespace FL\Assistant\Providers;
5
6
7 use FL\Assistant\Data\Transformers\PluginUpdatesTransformer;
8 use FL\Assistant\Data\Transformers\TermsTransformer;
9 use FL\Assistant\Data\Repository\AttachmentsRepository;
10 use FL\Assistant\Data\Repository\CommentsRepository;
11 use FL\Assistant\Data\Repository\LabelsRepository;
12 use FL\Assistant\Data\Repository\NotationsRepository;
13 use FL\Assistant\Data\Repository\PostsRepository;
14 use FL\Assistant\Data\Repository\TermsRepository;
15 use FL\Assistant\Data\Repository\UsersRepository;
16 use FL\Assistant\Data\Repository\CodeRepository;
17 use FL\Assistant\Data\Site;
18 use FL\Assistant\Data\Transformers\AttachmentTransformer;
19 use FL\Assistant\Data\Transformers\CommentTransformer;
20 use FL\Assistant\Data\Transformers\PostTransformer;
21 use FL\Assistant\Data\Transformers\ThemeUpdatesTransformer;
22 use FL\Assistant\Data\Transformers\UserTransformer;
23 use FL\Assistant\System\Contracts\ServiceProviderAbstract;
24 use FL\Assistant\System\Integrations\BeaverBuilder;
25
26 /**
27 * Class DataServiceProvider
28 * @package FL\Assistant\Providers\
29 */
30 class DataServiceProvider extends ServiceProviderAbstract {
31
32 protected $repository = [
33 UsersRepository::class,
34 PostsRepository::class,
35 AttachmentsRepository::class,
36 CommentsRepository::class,
37 TermsRepository::class,
38 NotationsRepository::class,
39 LabelsRepository::class,
40 CodeRepository::class,
41 ];
42
43 protected $transformers = [
44 UserTransformer::class,
45 PostTransformer::class,
46 AttachmentTransformer::class,
47 TermsTransformer::class,
48 CommentTransformer::class,
49 PluginUpdatesTransformer::class,
50 ThemeUpdatesTransformer::class,
51 ];
52
53 /**
54 * Inject all data sources
55 * @throws \FL\Assistant\System\Container\InjectionException
56 */
57 public function bootstrap() {
58 // data
59 $this->injector->define( Site::class, [] );
60 // integrations
61 $this->injector->define( BeaverBuilder::class, [] );
62
63 $this->register_repositories();
64 $this->register_transformers();
65
66 }
67
68 public function register_repositories() {
69 foreach ( $this->repository as $repository_name ) {
70 $this->injector->define( $repository_name, [] );
71 }
72 }
73
74 public function register_transformers() {
75 foreach ( $this->transformers as $transformer_class ) {
76 $this->injector->define( $transformer_class, [] );
77 }
78 }
79 }
80