All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ow2.bonita.util.AccessorProxyUtil Maven / Gradle / Ivy

package org.ow2.bonita.util;

import java.lang.reflect.Proxy;

import org.ow2.bonita.facade.APIAccessor;
import org.ow2.bonita.facade.interceptor.ClientAPIInterceptor;

public final class AccessorProxyUtil {

  private AccessorProxyUtil() { }

  public static  T getClientAPI(final Class localClass, final Object internalApi) {
    final ClientAPIInterceptor apiInterceptor = new ClientAPIInterceptor(internalApi);
    return localClass.cast(Proxy.newProxyInstance(APIAccessor.class.getClassLoader(),
      new Class[] {localClass}, apiInterceptor));
  }

  public static  T getClientAPI(final Class localClass, final Object internalApi, final String queryList) {
    final ClientAPIInterceptor apiInterceptor = new ClientAPIInterceptor(internalApi, queryList);
    return localClass.cast(Proxy.newProxyInstance(APIAccessor.class.getClassLoader(),
      new Class[] {localClass}, apiInterceptor));
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy