RemoteInvocationExecutor.java
上传用户:jiancairen
上传日期:2007-08-27
资源大小:26458k
文件大小:2k
源码类别:

Java编程

开发平台:

Java

  1. /*
  2.  * Copyright 2002-2004 the original author or authors.
  3.  *
  4.  * Licensed under the Apache License, Version 2.0 (the "License");
  5.  * you may not use this file except in compliance with the License.
  6.  * You may obtain a copy of the License at
  7.  *
  8.  *      http://www.apache.org/licenses/LICENSE-2.0
  9.  *
  10.  * Unless required by applicable law or agreed to in writing, software
  11.  * distributed under the License is distributed on an "AS IS" BASIS,
  12.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13.  * See the License for the specific language governing permissions and
  14.  * limitations under the License.
  15.  */
  16. package org.springframework.remoting.support;
  17. import java.lang.reflect.InvocationTargetException;
  18. /**
  19.  * Strategy interface for executing a RemoteInvocation on a target object.
  20.  * Used by RmiServiceExporter (for RMI invokers) and HttpInvokerServiceExporter.
  21.  * @author Juergen Hoeller
  22.  * @since 1.1
  23.  * @see DefaultRemoteInvocationFactory
  24.  * @see org.springframework.remoting.rmi.RmiServiceExporter#setRemoteInvocationExecutor
  25.  * @see org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter#setRemoteInvocationExecutor
  26.  */
  27. public interface RemoteInvocationExecutor {
  28. /**
  29.  * Perform this invocation on the given target object.
  30.  * Typically called when a RemoteInvocation is received on the server.
  31.  * @param targetObject the target object to apply the invocation to
  32.  * @return the invocation result
  33.  * @throws NoSuchMethodException if the method name could not be resolved
  34.  * @throws IllegalAccessException if the method could not be accessed
  35.  * @throws InvocationTargetException if the method invocation resulted in an exception
  36.  * @see java.lang.reflect.Method#invoke
  37.  */
  38. Object invoke(RemoteInvocation invocation, Object targetObject)
  39. throws NoSuchMethodException, IllegalAccessException, InvocationTargetException;
  40. }