private String getDispatcherClassName(ServiceConfigHolder config)
     throws ServiceCreationException {
   String implClass = config.getServiceImplClassName();
   String dispatcher = null;
   if (implClass != null) {
     dispatcher = ServiceNameUtils.getServiceDispatcherClassName(config.getAdminName(), implClass);
   }
   String implFactory = null;
   if (implClass == null) {
     implFactory = config.getServiceImplFactoryClassName();
     if (implFactory == null) {
       // Same error message for backward compatibility
       throw new ServiceCreationException(
           ErrorDataFactory.createErrorData(
               ErrorConstants.SVC_FACTORY_UNDEFINED_IMPL_CLASS_NAME, ErrorConstants.ERRORDOMAIN));
     }
     String interfaceName = config.getServiceInterfaceClassName();
     dispatcher =
         ServiceNameUtils.getServiceDispatcherClassName(config.getAdminName(), interfaceName);
   }
   return dispatcher;
 }