EjbReferenceNodepublic class EjbReferenceNode extends DeploymentDescriptorNode This class handles all information in the ejb-reference xml node |
Fields Summary |
---|
protected com.sun.enterprise.deployment.types.EjbReference | descriptor |
Constructors Summary |
---|
public EjbReferenceNode()
super();
registerElementHandler(new XMLElement(TagNames.INJECTION_TARGET),
InjectionTargetNode.class, "addInjectionTarget");
|
Methods Summary |
---|
public java.lang.Object | getDescriptor()
if (descriptor==null) {
descriptor = (EjbReference) DescriptorFactory.getDescriptor(getXMLPath());
descriptor.setLocal(false);
}
return descriptor;
| protected java.util.Map | getDispatchTable()all sub-implementation of this class can use a dispatch table to map xml element to
method name on the descriptor class for setting the element value.
Map table = super.getDispatchTable();
table.put(EjbTagNames.EJB_REFERENCE_NAME, "setName");
table.put(EjbTagNames.EJB_REFERENCE_TYPE, "setType");
table.put(EjbTagNames.HOME, "setEjbHomeInterface");
table.put(EjbTagNames.REMOTE, "setEjbInterface");
table.put(EjbTagNames.LOCAL_HOME, "setEjbHomeInterface");
table.put(EjbTagNames.LOCAL, "setEjbInterface");
table.put(EjbTagNames.EJB_LINK, "setLinkName");
table.put(TagNames.MAPPED_NAME, "setMappedName");
return table;
| public org.w3c.dom.Node | writeDescriptor(org.w3c.dom.Node parent, java.lang.String nodeName, com.sun.enterprise.deployment.types.EjbReference descriptor)write the descriptor class to a DOM tree and return it
Node ejbRefNode = appendChild(parent, nodeName);
if (descriptor instanceof Descriptor) {
Descriptor ejbRefDesc = (Descriptor)descriptor;
writeLocalizedDescriptions(ejbRefNode, ejbRefDesc);
}
appendTextChild(ejbRefNode, EjbTagNames.EJB_REFERENCE_NAME, descriptor.getName());
appendTextChild(ejbRefNode, EjbTagNames.EJB_REFERENCE_TYPE, descriptor.getType());
if (descriptor.isLocal()) {
appendTextChild(ejbRefNode, EjbTagNames.LOCAL_HOME, descriptor.getEjbHomeInterface());
appendTextChild(ejbRefNode, EjbTagNames.LOCAL, descriptor.getEjbInterface());
} else {
appendTextChild(ejbRefNode, EjbTagNames.HOME, descriptor.getEjbHomeInterface());
appendTextChild(ejbRefNode, EjbTagNames.REMOTE, descriptor.getEjbInterface());
}
appendTextChild(ejbRefNode, EjbTagNames.EJB_LINK, descriptor.getLinkName());
if( descriptor instanceof EnvironmentProperty) {
EnvironmentProperty envProp = (EnvironmentProperty)descriptor;
appendTextChild(ejbRefNode, TagNames.MAPPED_NAME, envProp.getMappedName());
}
if( descriptor.isInjectable() ) {
InjectionTargetNode ijNode = new InjectionTargetNode();
for (InjectionTarget target : descriptor.getInjectionTargets()) {
ijNode.writeDescriptor(ejbRefNode, TagNames.INJECTION_TARGET, target);
}
}
return ejbRefNode;
|
|