46 */ 47 public abstract class ServerPipelineHook { 48 /** 49 * Called during the pipeline construction process once to allow a container 50 * to register a pipe for monitoring. 51 * 52 * This pipe will be injected to a point very close to the transport, allowing 53 * it to measure the time it takes for processing as well as detecting errors. 54 * 55 * @param ctxt 56 * Represents abstraction of SEI, WSDL abstraction etc. Context can be used 57 * whether add a new pipe to the head or not. 58 * 59 * @param tail 60 * Head of the partially constructed pipeline. If the implementation 61 * wishes to add new pipes, it should do so by extending 62 * {@link AbstractFilterPipeImpl} and making sure that this {@link Pipe} 63 * eventually processes messages. 64 * 65 * @return 66 * The default implementation just returns <tt>tail</tt>, which means 67 * no additional pipe is inserted. If the implementation adds 68 * new pipes, return the new head pipe. 69 */ 70 public @NotNull Pipe createMonitoringPipe(ServerPipeAssemblerContext ctxt, @NotNull Pipe tail) { 71 return tail; 72 } 73 74 /** 75 * Called during the pipeline construction process once to allow a container 76 * to register a pipe for security. 77 * 78 * This pipe will be injected to a point very close to the transport, allowing 79 * it to do some security operations. 80 * 81 * @param ctxt 82 * Represents abstraction of SEI, WSDL abstraction etc. Context can be used 83 * whether add a new pipe to the head or not. 84 * 85 * @param tail 86 * Head of the partially constructed pipeline. If the implementation 87 * wishes to add new pipes, it should do so by extending 88 * {@link AbstractFilterPipeImpl} and making sure that this {@link Pipe} 89 * eventually processes messages. 90 * 91 * @return 92 * The default implementation just returns <tt>tail</tt>, which means 93 * no additional pipe is inserted. If the implementation adds 94 * new pipes, return the new head pipe. 95 */ 96 public @NotNull Pipe createSecurityPipe(ServerPipeAssemblerContext ctxt, @NotNull Pipe tail) { 97 return tail; 98 } 99 } | 46 */ 47 public abstract class ServerPipelineHook { 48 /** 49 * Called during the pipeline construction process once to allow a container 50 * to register a pipe for monitoring. 51 * 52 * This pipe will be injected to a point very close to the transport, allowing 53 * it to measure the time it takes for processing as well as detecting errors. 54 * 55 * @param ctxt 56 * Represents abstraction of SEI, WSDL abstraction etc. Context can be used 57 * whether add a new pipe to the head or not. 58 * 59 * @param tail 60 * Head of the partially constructed pipeline. If the implementation 61 * wishes to add new pipes, it should do so by extending 62 * {@link AbstractFilterPipeImpl} and making sure that this {@link Pipe} 63 * eventually processes messages. 64 * 65 * @return 66 * The default implementation just returns {@code tail}, which means 67 * no additional pipe is inserted. If the implementation adds 68 * new pipes, return the new head pipe. 69 */ 70 public @NotNull Pipe createMonitoringPipe(ServerPipeAssemblerContext ctxt, @NotNull Pipe tail) { 71 return tail; 72 } 73 74 /** 75 * Called during the pipeline construction process once to allow a container 76 * to register a pipe for security. 77 * 78 * This pipe will be injected to a point very close to the transport, allowing 79 * it to do some security operations. 80 * 81 * @param ctxt 82 * Represents abstraction of SEI, WSDL abstraction etc. Context can be used 83 * whether add a new pipe to the head or not. 84 * 85 * @param tail 86 * Head of the partially constructed pipeline. If the implementation 87 * wishes to add new pipes, it should do so by extending 88 * {@link AbstractFilterPipeImpl} and making sure that this {@link Pipe} 89 * eventually processes messages. 90 * 91 * @return 92 * The default implementation just returns {@code tail}, which means 93 * no additional pipe is inserted. If the implementation adds 94 * new pipes, return the new head pipe. 95 */ 96 public @NotNull Pipe createSecurityPipe(ServerPipeAssemblerContext ctxt, @NotNull Pipe tail) { 97 return tail; 98 } 99 } |