Package com.github.ambry.router
Class NonBlockingRouterFactory
- java.lang.Object
-
- com.github.ambry.router.NonBlockingRouterFactory
-
- All Implemented Interfaces:
com.github.ambry.router.RouterFactory
public class NonBlockingRouterFactory extends java.lang.Object implements com.github.ambry.router.RouterFactory
NonBlockingRouter
specific implementation ofRouterFactory
. Sets up all the supporting cast required for the operation ofNonBlockingRouter
and returns a new instance ongetRouter()
.
-
-
Constructor Summary
Constructors Constructor Description NonBlockingRouterFactory(com.github.ambry.config.VerifiableProperties verifiableProperties, com.github.ambry.clustermap.ClusterMap clusterMap, com.github.ambry.notification.NotificationSystem notificationSystem, com.github.ambry.commons.SSLFactory sslFactory, com.github.ambry.account.AccountService accountService)
Creates an instance of NonBlockingRouterFactory with the givenverifiableProperties
,clusterMap
andnotificationSystem
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.github.ambry.router.Router
getRouter()
Construct and return aNonBlockingRouter
-
-
-
Constructor Detail
-
NonBlockingRouterFactory
public NonBlockingRouterFactory(com.github.ambry.config.VerifiableProperties verifiableProperties, com.github.ambry.clustermap.ClusterMap clusterMap, com.github.ambry.notification.NotificationSystem notificationSystem, com.github.ambry.commons.SSLFactory sslFactory, com.github.ambry.account.AccountService accountService) throws java.lang.Exception
Creates an instance of NonBlockingRouterFactory with the givenverifiableProperties
,clusterMap
andnotificationSystem
.- Parameters:
verifiableProperties
- the in-memory properties to use to construct configurations.clusterMap
- theClusterMap
to use to determine where operations should go.notificationSystem
- theNotificationSystem
to use to log operations.sslFactory
- theSSLFactory
to support SSL transmissions. Required if SSL is enabled for any datacenters.accountService
- theAccountService
to use.- Throws:
java.lang.Exception
- if any of the arguments are null or if instantiation of KMS or CryptoService fails
-
-