public abstract class AbstractClientSourceHandler extends AbstractClientRequestHandler
Xrootd Third Party copy requires the destination server to be active, and request a read of the source file from the source server.
This handler implements open and close.
Concrete implementations must handle the actual read and checksum requests and responses.
If the close response is OK, it hands it off to the next handler in the chain.
client, future, LOGGER| Constructor and Description |
|---|
AbstractClientSourceHandler() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
doOnAsynResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundAttnResponse response) |
protected void |
doOnAuthenticationResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundAuthenticationResponse response)
If this method is called on this handler with status OK,
this means that step has succeeded.
|
protected abstract void |
doOnChecksumResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundChecksumResponse response)
Should check the checksum and fail or succeed accordingly.
|
protected void |
doOnCloseResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundCloseResponse response) |
protected void |
doOnLoginResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundLoginResponse response)
If the response contains a security context, then
it was not handled by an authentication plugin, and the
transfer should fail.
|
protected void |
doOnOpenResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundOpenReadOnlyResponse response) |
protected abstract void |
doOnReadResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundReadResponse response)
Should implement the proper read logic.
|
protected void |
doOnWaitResponse(io.netty.channel.ChannelHandlerContext ctx,
AbstractXrootdInboundResponse response) |
protected abstract void |
sendChecksumRequest(io.netty.channel.ChannelHandlerContext ctx)
If checksum option is expressed.
|
protected void |
sendOpenRequest(io.netty.channel.ChannelHandlerContext ctx) |
protected abstract void |
sendReadRequest(io.netty.channel.ChannelHandlerContext ctx)
Should take care of any special handling, such as vectorization.
|
channelRead, doOnAttnResponse, doOnErrorResponse, doOnHandshakeResponse, doOnProtocolResponse, doOnRedirectResponse, exceptionCaught, getWaitInSeconds, responseReceived, sendAuthenticationRequest, sendCloseRequest, sendLoginRequest, setClient, unsupportedchannelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, userEventTriggeredhandlerAdded, handlerRemoved, isSharableprotected void doOnLoginResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundLoginResponse response)
If the response contains a security context, then it was not handled by an authentication plugin, and the transfer should fail.
doOnLoginResponse in class AbstractClientRequestHandlerprotected void doOnAsynResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundAttnResponse response)
doOnAsynResponse in class AbstractClientRequestHandlerprotected void doOnAuthenticationResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundAuthenticationResponse response)
If this method is called on this handler with status OK, this means that step has succeeded.
doOnAuthenticationResponse in class AbstractClientRequestHandlerprotected void doOnCloseResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundCloseResponse response)
doOnCloseResponse in class AbstractClientRequestHandlerprotected void doOnOpenResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundOpenReadOnlyResponse response)
doOnOpenResponse in class AbstractClientRequestHandlerprotected void sendOpenRequest(io.netty.channel.ChannelHandlerContext ctx)
sendOpenRequest in class AbstractClientRequestHandlerprotected void doOnWaitResponse(io.netty.channel.ChannelHandlerContext ctx,
AbstractXrootdInboundResponse response)
doOnWaitResponse in class AbstractClientRequestHandlerprotected abstract void doOnChecksumResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundChecksumResponse response)
doOnChecksumResponse in class AbstractClientRequestHandlerprotected abstract void doOnReadResponse(io.netty.channel.ChannelHandlerContext ctx,
InboundReadResponse response)
doOnReadResponse in class AbstractClientRequestHandlerprotected abstract void sendChecksumRequest(io.netty.channel.ChannelHandlerContext ctx)
sendChecksumRequest in class AbstractClientRequestHandlerprotected abstract void sendReadRequest(io.netty.channel.ChannelHandlerContext ctx)
sendReadRequest in class AbstractClientRequestHandlerCopyright © 2011–2018 dCache.org. All rights reserved.