1 package org.daisy.pipeline.modules.impl;
2
3 import java.io.File;
4 import java.net.URI;
5
6 import org.daisy.pipeline.modules.AbstractModuleBuilder;
7 import org.daisy.pipeline.modules.JarModuleBuilder;
8 import org.daisy.pipeline.modules.Module;
9 import org.daisy.pipeline.modules.ModuleRef;
10 import org.daisy.pipeline.xmlcatalog.XmlCatalogParser;
11
12 import org.osgi.service.component.annotations.Component;
13 import org.osgi.service.component.annotations.Reference;
14 import org.osgi.service.component.annotations.ReferenceCardinality;
15 import org.osgi.service.component.annotations.ReferencePolicy;
16
17 @Component(
18 name = "org.daisy.pipeline.modules.impl.Module_braille_module",
19 service = { ModuleRef.class },
20 immediate = true
21 )
22 public class Module_braille_module implements ModuleRef {
23
24 private Module instance;
25 private XmlCatalogParser catalogParser;
26
27 public Module get() {
28 if (instance == null) {
29 AbstractModuleBuilder builder
30 = AbstractModuleBuilder.fromContainedClass(Module_braille_module.class)
31 .withCatalogParser(catalogParser);
32 if (builder instanceof JarModuleBuilder) {
33
34 builder.withName("braille-module")
35 .withVersion("1.6.5")
36 .withTitle("DP2 Braille Modules :: mod-dedicon");
37 }
38 instance = builder.build();
39 }
40 return instance;
41 }
42
43 @Reference(
44 name = "XmlCatalogParser",
45 unbind = "-",
46 service = XmlCatalogParser.class,
47 cardinality = ReferenceCardinality.MANDATORY,
48 policy = ReferencePolicy.STATIC
49 )
50 public void setParser(XmlCatalogParser parser) {
51 catalogParser = parser;
52 }
53 }