public ServiceCache<S> build() { checkNotNull(_cachingPolicy, "cachingPolicy"); if (_cachingPolicy.useMultiThreadedClientPolicy()) { checkNotNull(_serviceFactory, "serviceFactory"); checkArgument((_serviceFactory instanceof MultiThreadedServiceFactory), "Please implement MultiThreadedServiceFactory to construct MultiThreadedClientServiceCache"); return new MultiThreadedClientServiceCache<>((MultiThreadedServiceFactory<S>) _serviceFactory, _metricRegistry); } else { checkNotNull(_serviceFactory, "serviceFactory"); checkNotNull(_metricRegistry, "metricRegistry"); return new SingleThreadedClientServiceCache<>(_cachingPolicy, _serviceFactory, _metricRegistry); } }
public ServiceCache<S> build() { checkNotNull(_cachingPolicy, "cachingPolicy"); if (_cachingPolicy.useMultiThreadedClientPolicy()) { checkNotNull(_serviceFactory, "serviceFactory"); checkArgument((_serviceFactory instanceof MultiThreadedServiceFactory), "Please implement MultiThreadedServiceFactory to construct MultiThreadedClientServiceCache"); return new MultiThreadedClientServiceCache<>((MultiThreadedServiceFactory<S>) _serviceFactory, _metricRegistry); } else { checkNotNull(_serviceFactory, "serviceFactory"); checkNotNull(_metricRegistry, "metricRegistry"); return new SingleThreadedClientServiceCache<>(_cachingPolicy, _serviceFactory, _metricRegistry); } }