Package com.linkedin.venice.router.acl
Class RouterStoreAclHandler
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.SimpleChannelInboundHandler<io.netty.handler.codec.http.HttpRequest>
com.linkedin.venice.acl.handler.AbstractStoreAclHandler<RouterResourceType>
com.linkedin.venice.router.acl.RouterStoreAclHandler
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler
Store-level access control handler, which is being used by both Router and Server.
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable -
Field Summary
Fields inherited from class com.linkedin.venice.acl.handler.AbstractStoreAclHandler
STORE_ACL_CHECK_RESULT, STORE_ACL_CHECK_RESULT_ATTRIBUTE_KEY -
Constructor Summary
ConstructorsConstructorDescriptionRouterStoreAclHandler(IdentityParser identityParser, DynamicAccessController accessController, ReadOnlyStoreRepository metadataRepository, int cacheTTLMs) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringextractStoreName(RouterResourceType resourceType, String[] requestParts) Extract the store name from the incoming resource name.protected booleanneedsAclValidation(RouterResourceType resourceType) protected RouterResourceTypevalidateRequest(String[] requestParts) Validate the request and return the request type.Methods inherited from class com.linkedin.venice.acl.handler.AbstractStoreAclHandler
channelRead0, checkAccess, isAccessAlreadyApprovedMethods inherited from class io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelReadMethods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggeredMethods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.netty.channel.ChannelHandler
handlerAdded, handlerRemoved
-
Constructor Details
-
RouterStoreAclHandler
public RouterStoreAclHandler(IdentityParser identityParser, DynamicAccessController accessController, ReadOnlyStoreRepository metadataRepository, int cacheTTLMs)
-
-
Method Details
-
needsAclValidation
- Specified by:
needsAclValidationin classAbstractStoreAclHandler<RouterResourceType>
-
extractStoreName
Extract the store name from the incoming resource name.- Specified by:
extractStoreNamein classAbstractStoreAclHandler<RouterResourceType>
-
validateRequest
Description copied from class:AbstractStoreAclHandlerValidate the request and return the request type. If the request is invalid, returnnull- Specified by:
validateRequestin classAbstractStoreAclHandler<RouterResourceType>- Parameters:
requestParts- the parts of the request URI- Returns:
- the request type; null if the request is invalid
-