org.apache.beehive.controls.system.ejb.EntityEJBControlBean Maven / Gradle / Ivy
package org.apache.beehive.controls.system.ejb;
import java.beans.*;
import java.lang.reflect.Method;
import java.lang.reflect.UndeclaredThrowableException;
import java.util.HashMap;
import java.util.Map;
import org.apache.beehive.controls.api.bean.*;
import org.apache.beehive.controls.api.context.ControlBeanContext;
import org.apache.beehive.controls.api.properties.PropertyKey;
import org.apache.beehive.controls.api.properties.PropertyMap;
import org.apache.beehive.controls.api.versioning.*;
@SuppressWarnings("all")
public class EntityEJBControlBean
extends org.apache.beehive.controls.system.ejb.EJBControlBean
implements org.apache.beehive.controls.system.ejb.EntityEJBControl
{
static final Method _getEJBNextBeanInstanceMethod;
//
// This HashMap will map from a Method to the array of names for parameters of the
// method. This is necessary because parameter name data isn't carried along in the
// class file, but if available can enable ease of use by referencing parameters by
// the declared name (vs. by index).
//
// This map should be read-only after its initialization in the static block, hence
// using a plain HashMap is thread-safe.
//
static HashMap _methodParamMap = new HashMap();
static
{
try
{
_getEJBNextBeanInstanceMethod = org.apache.beehive.controls.system.ejb.EntityEJBControl.class.getMethod("getEJBNextBeanInstance", new Class [] {});
_methodParamMap.put(_getEJBNextBeanInstanceMethod, new String [] { });
}
catch (NoSuchMethodException __bc_nsme)
{
throw new ExceptionInInitializerError(__bc_nsme);
}
}
static
{
}
/**
* This is the public constructor for the class. A client-defined control ID may
* be provided. This ID must be unique within the nesting ControlBeanContext.
* @param context The containing ControlBeanContext
* @param id The control identifier (or null to autogenerate a unique value)
* @param props The initialization Properties for the new instance (or null for defaults)
*/
public EntityEJBControlBean(ControlBeanContext context, String id, PropertyMap props)
{
this(context, id, props, org.apache.beehive.controls.system.ejb.EntityEJBControl.class);
}
/**
* This is the public null-arg constructor for this ControlBean. If a control id
* is not provided, a unique value will be auto-generated.
*/
public EntityEJBControlBean()
{
this(null, null, null);
}
/**
* This is the protected version that is used by any ControlBean subclass
*/
protected EntityEJBControlBean(ControlBeanContext context, String id, PropertyMap props, Class controlClass)
{
super(context, id, props, controlClass);
}
/**
* Returns an array of parameter names for the request method, or null if no parameter
* data is available.
*/
protected String [] getParameterNames(Method m)
{
// Check the local map for operations on this bean type
if (_methodParamMap.containsKey(m))
{
return _methodParamMap.get(m);
}
// Delegate up if not found locally
return super.getParameterNames(m);
}
/**
* Implements org.apache.beehive.controls.system.ejb.EntityEJBControl.getEJBNextBeanInstance
*/
public java.lang.Object getEJBNextBeanInstance()
{
Object [] __bc_argArray = new Object[] { };
Throwable __bc_thrown = null;
org.apache.beehive.controls.system.ejb.EntityEJBControl __bc_target = (org.apache.beehive.controls.system.ejb.EntityEJBControl)ensureControl();
java.lang.Object __bc_retval = null;
try
{
preInvoke(_getEJBNextBeanInstanceMethod, __bc_argArray);
__bc_retval =
__bc_target.getEJBNextBeanInstance()
;
}
catch (Throwable __bc_t)
{
//
// All exceptions are caught here, so postInvoke processing has visibility into
// the exception status. Errors, RuntimExceptions, or declared checked exceptions will
// be rethrown.
//
__bc_thrown = __bc_t;
if (__bc_t instanceof Error) throw (Error)__bc_t;
else if (__bc_t instanceof RuntimeException) throw (RuntimeException)__bc_t;
throw new UndeclaredThrowableException(__bc_t);
}
finally
{
Object __bc_rv = __bc_retval;
postInvoke(_getEJBNextBeanInstanceMethod, __bc_argArray, __bc_rv, __bc_thrown);
}
return __bc_retval;
}
/**
* A PropertyKey that can be used to access the controlImplementation property of the
* BaseProperties PropertySet
*/
public static final PropertyKey ControlImplementationKey = new PropertyKey(org.apache.beehive.controls.api.properties.BaseProperties.class, "controlImplementation");
public synchronized void setControlImplementation(java.lang.String value)
{
setControlProperty(ControlImplementationKey, value);
}
public java.lang.String getControlImplementation()
{
return (java.lang.String)getControlProperty(ControlImplementationKey);
}
/**
* The _annotCache maintains a lookup cache from AnnotatedElements to an associated
* PropertyMap. This enables these maps to be shared across multiple beans.
*/
static private HashMap __bc_annotCache = new HashMap();
protected Map getPropertyMapCache() { return __bc_annotCache; }
private static final long serialVersionUID = 1L;
}