1   /***************************************************************/
2   /* This class was generated by ds-to-spi-annotations-processor */
3   /***************************************************************/
4   
5   package org.daisy.pipeline.modules.impl;
6   
7   public class Module_epub_utils_SPI
8          extends org.daisy.pipeline.modules.impl.Module_epub_utils
9          implements org.daisy.common.spi.ServiceWithProperties
10  {
11  	
12  	private static final org.slf4j.Logger spi_log = org.slf4j.LoggerFactory.getLogger(Module_epub_utils_SPI.class);
13  	
14  	private final java.util.Map spi_props;
15  	private boolean spi_deactivated = false;
16  	
17  
18  	public Module_epub_utils_SPI() {
19  		super();
20  		spi_log.trace("Creating Module_epub_utils");
21  		spi_props = new java.util.HashMap();
22  		spi_props.put("component.name", "org.daisy.pipeline.modules.impl.Module_epub_utils");
23  		{
24  			spi_log.trace("Binding org.daisy.pipeline.xmlcatalog.XmlCatalogParser services...");
25  			// cardinality: 1..1
26  			int minRef = 1;
27  			int maxRef = 1;
28  			int refCount = 0;
29  			try {
30  				java.util.Iterator<org.daisy.pipeline.xmlcatalog.XmlCatalogParser> services
31  					= org.daisy.common.spi.ServiceLoader.load(org.daisy.pipeline.xmlcatalog.XmlCatalogParser.class).iterator();
32  				while (services.hasNext()) {
33  					try {
34  						org.daisy.pipeline.xmlcatalog.XmlCatalogParser service = services.next();
35  						setParser(service);
36  						spi_log.trace("Bound org.daisy.pipeline.xmlcatalog.XmlCatalogParser service: "
37  						              + service.getClass().getName() + "@"
38  						              + Integer.toHexString(System.identityHashCode(service)));
39  						refCount++;
40  						if (maxRef > 0 && refCount == maxRef)
41  							break;
42  					} catch (Throwable e) {
43  						spi_log.error("Error while binding org.daisy.pipeline.xmlcatalog.XmlCatalogParser service", e);
44  					}
45  				}
46  			} catch (Throwable e) {
47  				spi_log.error("Error while binding org.daisy.pipeline.xmlcatalog.XmlCatalogParser services", e);
48  			}
49  			if (refCount < minRef) {
50  				spi_log.warn("No org.daisy.pipeline.xmlcatalog.XmlCatalogParser found");
51  				throw new RuntimeException("No org.daisy.pipeline.xmlcatalog.XmlCatalogParser found");
52  			} else {
53  				spi_log.trace("Bound " + refCount + " org.daisy.pipeline.xmlcatalog.XmlCatalogParser services.");
54  			}
55  		}
56  		{
57  			spi_log.trace("Binding org.daisy.pipeline.modules.ModuleRegistry services...");
58  			// cardinality: 1..1
59  			int minRef = 1;
60  			int maxRef = 1;
61  			int refCount = 0;
62  			try {
63  				java.util.Iterator<org.daisy.pipeline.modules.ModuleRegistry> services
64  					= org.daisy.common.spi.ServiceLoader.load(org.daisy.pipeline.modules.ModuleRegistry.class).iterator();
65  				while (services.hasNext()) {
66  					try {
67  						org.daisy.pipeline.modules.ModuleRegistry service = services.next();
68  						setModuleRegistry(service);
69  						spi_log.trace("Bound org.daisy.pipeline.modules.ModuleRegistry service: "
70  						              + service.getClass().getName() + "@"
71  						              + Integer.toHexString(System.identityHashCode(service)));
72  						refCount++;
73  						if (maxRef > 0 && refCount == maxRef)
74  							break;
75  					} catch (Throwable e) {
76  						spi_log.error("Error while binding org.daisy.pipeline.modules.ModuleRegistry service", e);
77  					}
78  				}
79  			} catch (Throwable e) {
80  				spi_log.error("Error while binding org.daisy.pipeline.modules.ModuleRegistry services", e);
81  			}
82  			if (refCount < minRef) {
83  				spi_log.warn("No org.daisy.pipeline.modules.ModuleRegistry found");
84  				throw new RuntimeException("No org.daisy.pipeline.modules.ModuleRegistry found");
85  			} else {
86  				spi_log.trace("Bound " + refCount + " org.daisy.pipeline.modules.ModuleRegistry services.");
87  			}
88  		}
89  		spi_log.trace("Activating Module_epub_utils");
90  		init();
91  	}
92  	
93  	public void spi_deactivate() {
94  	}
95  	
96  	public java.util.Map spi_getProperties() {
97  		return spi_props;
98  	}
99  }