package net.mattmccutchen.addins; import java.util.*; import net.mattmccutchen.measurements.*; import com.sun.star.comp.loader.*; import com.sun.star.lang.*; import com.sun.star.registry.*; public class ServiceHelper { public final String implementationName; public final List serviceNames; public ServiceHelper(String implementationName, List serviceNames) { this.implementationName = implementationName; this.serviceNames = serviceNames; } public String mainServiceName() { // First name is the main one return serviceNames.get(0); } public XSingleServiceFactory staticGetServiceFactory(String implName, XMultiServiceFactory multiFactory, XRegistryKey regKey) { if (implName.equals(implementationName)) return FactoryHelper.getServiceFactory(MeasurementsAddIn.class, serviceNames.get(0), multiFactory, regKey); else return null; } public boolean staticWriteRegistryServiceInfo(XRegistryKey regKey) { boolean success = true; for (String srv : serviceNames) success &= FactoryHelper.writeRegistryServiceInfo( implementationName, srv, regKey); return success; } }