1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.rendering.renderer.registry;
35
36 import info.magnolia.cms.util.DeprecationUtil;
37 import info.magnolia.config.registry.AbstractRegistry;
38 import info.magnolia.config.registry.DefinitionMetadataBuilder;
39 import info.magnolia.config.registry.DefinitionProvider;
40 import info.magnolia.config.registry.DefinitionType;
41 import info.magnolia.module.ModuleRegistry;
42 import info.magnolia.objectfactory.Components;
43 import info.magnolia.registry.RegistrationException;
44 import info.magnolia.rendering.DefinitionTypes;
45 import info.magnolia.rendering.context.RenderingListener;
46 import info.magnolia.rendering.engine.DefaultRenderingEngine;
47 import info.magnolia.rendering.renderer.Renderer;
48
49 import java.util.List;
50
51 import javax.inject.Inject;
52 import javax.inject.Singleton;
53
54
55
56
57 @Singleton
58 public class RendererRegistry extends AbstractRegistry<Renderer> {
59
60 @Inject
61 public RendererRegistry(final ModuleRegistry moduleRegistry) {
62 super(moduleRegistry);
63 }
64
65
66
67
68 @Deprecated
69 public RendererRegistry() {
70 this(Components.getComponent(ModuleRegistry.class));
71 }
72
73 @Override
74 public DefinitionType type() {
75 return DefinitionTypes.RENDERER;
76 }
77
78 @Override
79 public DefinitionMetadataBuilder newMetadataBuilder() {
80 return DefinitionMetadataBuilder.usingNameAsId();
81 }
82
83 public Renderer getRenderer(String type) throws RegistrationException {
84
85 DefinitionProvider<Renderer> provider;
86 provider = getProvider(type);
87
88 return provider.get();
89 }
90
91
92
93
94
95
96 public void register(RendererProvider provider) {
97 throw new IllegalStateException("Not implemented yet/anymore - meant to be restored as a compatibility layer");
98 }
99
100
101
102
103 public void registerListener(final String listenerClassName) {
104 DeprecationUtil.isDeprecated(String.format("Was replaced by %s.setListeners()", DefaultRenderingEngine.class.getName()));
105 }
106
107
108
109
110 public List<Class<RenderingListener>> getListeners() {
111 DeprecationUtil.isDeprecated(String.format("Was replaced by %s.setListeners()", DefaultRenderingEngine.class.getName()));
112 return null;
113 }
114 }
115