code: @Override
      public ServiceRegistration<?> registerService(String clazz, Object service, Dictionary<String, ?> properties) {
          MockServiceReference<Object> serviceReference = new MockServiceReference<Object>(getBundle(), properties);
          if (serviceRegistrations.get(clazz) == null) { serviceRegistrations.put(clazz, new ArrayList<ServiceReference<?>>()); }
          serviceRegistrations.get(clazz).add(serviceReference);
          serviceImplementations.put(serviceReference, service);
          notifyListenersAboutNewService(clazz, serviceReference);
          return new MockServiceRegistration<Object>(this, serviceReference);
      }
docs: Register a service with the bundle context.
  
  @param clazz the fully qualified name of the interface of the service being registered
  @param service the object referencing the service
  @param properties a name/value map for names and values that can be used to qualify the service when multiple implementations are availabl
  @return a {@link ServiceRegistration} object that can be used to unregister the service later