docs: @Override
      public ServiceInstance getInstance(String serviceName, String instanceId)
              throws ServiceException {
          if(! isStarted){
              ServiceDirectoryError error = new ServiceDirectoryError(ErrorCode.SERVICE_DIRECTORY_MANAGER_FACTORY_CLOSED);
              throw new ServiceException(error);
          }
          if(instanceId == null || instanceId.isEmpty()){
              return null;
          }
  
          ModelService service = getLookupService().getModelService(serviceName);
          if(service != null && service.getServiceInstances() != null
                  && service.getServiceInstances().size() > 0){
              for(ModelServiceInstance instance : service.getServiceInstances()){
                  if(instance.getInstanceId().equals(instanceId)){
                      return ServiceInstanceUtils.transferFromModelServiceInstance(instance);
                  }
              }
  
          }
          return null;
      }