Completed
Pull Request — develop (#1350)
by Naveen
03:22
created

Loader   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 9

Importance

Changes 0
Metric Value
dl 0
loc 33
rs 10
c 0
b 0
f 0
wmc 3
lcom 0
cbo 9

3 Methods

Rating   Name   Duplication   Size   Complexity  
A init_all_dependencies() 0 22 1
A get_feature_slug() 0 3 1
A get_feature_default_value() 0 3 1
1
<?php
2
3
namespace Wordlift\Videoobject;
4
5
use Wordlift\Cache\Ttl_Cache;
6
use Wordlift\Common\Loader\Default_Loader;
7
use Wordlift\Videoobject\Api\Rest_Controller;
8
use Wordlift\Videoobject\Data\Video_Storage\Video_Storage_Factory;
9
use Wordlift\Videoobject\Filters\Post_Filter;
10
use Wordlift\Videoobject\Jsonld\Jsonld;
11
use Wordlift\Videoobject\Sitemap\Video_Sitemap;
12
use Wordlift\Videoobject\Tabs\Settings_Tab;
13
use Wordlift\Videoobject\Ui\Post_Edit_Screen;
14
15
16
/**
17
 * @since 3.31.0
18
 * @author Naveen Muthusamy <[email protected]>
19
 */
20
class Loader extends Default_Loader {
21
22
	public function init_all_dependencies() {
23
		$video_storage = Video_Storage_Factory::get_storage();
24
		new Jsonld( $video_storage );
25
26
		$sitemap_cache = new Ttl_Cache( "wl_video_sitemap", 86400 );
27
28
		// Hook in to save_post to save the videos
29
		$post_filter = new Post_Filter();
30
		$post_filter->init();
31
		// Add entry to wordlift admin tabs
32
		$settings_tab = new Settings_Tab();
33
		$settings_tab->init();
34
35
36
		$video_sitemap = new Video_Sitemap( $sitemap_cache );
37
		$video_sitemap->init();
38
		$rest_controller = new Rest_Controller();
39
		$rest_controller->register_all_routes();
40
41
		$post_edit_screen = new Post_Edit_Screen();
42
		$post_edit_screen->init();
43
	}
44
45
	public function get_feature_slug() {
46
		return 'videoobject';
47
	}
48
49
	public function get_feature_default_value() {
50
		return false;
51
	}
52
}