KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > hivemind > ServiceInterceptorFactory


1 // Copyright 2004, 2005 The Apache Software Foundation
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14

15 package org.apache.hivemind;
16
17 import org.apache.hivemind.internal.Module;
18
19 /**
20  * Interface defining an interceptor factory, an object that can create
21  * an interceptor. Interceptors are objects that implement a particular
22  * interface, adding logic before or after invoking methods on a wrapped
23  * object (implementing the same instance).
24  *
25  * <p>
26  * Implementations must be stateless and multi-threaded.
27  * An interceptor may only be applied once to any single service.
28  * The factory will only be invoked once for any single service (even in the case
29  * of non-standard service models such as threaded and pooled).
30  *
31  * @author Howard Lewis Ship
32  */

33 public interface ServiceInterceptorFactory
34 {
35     /**
36       * Creates an interceptor and pushes it onto the interceptor stack.
37       * @param parameters factory specific parameters. The implementatation class
38       * should document which type is expected here.
39       */

40     public void createInterceptor(InterceptorStack stack, Module invokingModule, Object JavaDoc parameters);
41 }
42
Popular Tags