Save This Page
Home » openejb-3.0-src » org.apache » openejb » util » proxy » [javadoc | source]
    1   /**
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *     http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    */
   17   package org.apache.openejb.util.proxy;
   18   
   19   import java.io.Serializable;
   20   import java.lang.reflect.Method;
   21   
   22   public class Jdk13InvocationHandler implements java.lang.reflect.InvocationHandler, Serializable {
   23       private org.apache.openejb.util.proxy.InvocationHandler delegate;
   24   
   25       public Jdk13InvocationHandler() {
   26       }
   27   
   28       public Jdk13InvocationHandler(org.apache.openejb.util.proxy.InvocationHandler delegate) {
   29           setInvocationHandler(delegate);
   30       }
   31   
   32       public org.apache.openejb.util.proxy.InvocationHandler getInvocationHandler() {
   33           return delegate;
   34       }
   35   
   36       public org.apache.openejb.util.proxy.InvocationHandler setInvocationHandler(org.apache.openejb.util.proxy.InvocationHandler handler) {
   37           org.apache.openejb.util.proxy.InvocationHandler old = delegate;
   38           delegate = handler;
   39           return old;
   40       }
   41   
   42       public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
   43           if (delegate == null) {
   44               throw new NullPointerException("No invocation handler for proxy " + proxy);
   45           }
   46           if (args == null) {
   47               args = new Object[0];
   48           }
   49           return delegate.invoke(proxy, method, args);
   50       }
   51   }
   52   

Save This Page
Home » openejb-3.0-src » org.apache » openejb » util » proxy » [javadoc | source]