Author: markt Date: Tue Mar 20 22:26:56 2018 New Revision: 1827363 URL: http://svn.apache.org/viewvc?rev=1827363&view=rev Log: Add plumbing to support lookup-name. It is still ultimately a NO-OP but the contents of web.xml and annotations is now read into the right places.
Modified: tomcat/trunk/java/org/apache/catalina/startup/WebAnnotationSet.java tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/ResourceBase.java tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebXml.java Modified: tomcat/trunk/java/org/apache/catalina/startup/WebAnnotationSet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/WebAnnotationSet.java?rev=1827363&r1=1827362&r2=1827363&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/startup/WebAnnotationSet.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/WebAnnotationSet.java Tue Mar 20 22:26:56 2018 @@ -334,10 +334,9 @@ public class WebAnnotationSet { resource.setName(name); resource.setType(type); - resource.setDescription(annotation.description()); - resource.setValue(annotation.mappedName()); + resource.setLookupName(annotation.lookup()); context.getNamingResources().addEnvironment(resource); @@ -348,9 +347,9 @@ public class WebAnnotationSet { service.setName(name); service.setWsdlfile(annotation.mappedName()); - service.setType(type); service.setDescription(annotation.description()); + service.setLookupName(annotation.lookup()); context.getNamingResources().addService(service); @@ -379,6 +378,7 @@ public class WebAnnotationSet { resource.setScope(annotation.shareable() ? "Shareable" : "Unshareable"); resource.setProperty("mappedName", annotation.mappedName()); resource.setDescription(annotation.description()); + resource.setLookupName(annotation.lookup()); context.getNamingResources().addResource(resource); @@ -390,9 +390,9 @@ public class WebAnnotationSet { resource.setName(name); resource.setType(type); - resource.setUsage(annotation.mappedName()); resource.setDescription(annotation.description()); + resource.setLookupName(annotation.lookup()); context.getNamingResources().addMessageDestinationRef(resource); @@ -408,9 +408,9 @@ public class WebAnnotationSet { resource.setName(name); resource.setType(type); - resource.setProperty("mappedName", annotation.mappedName()); resource.setDescription(annotation.description()); + resource.setLookupName(annotation.lookup()); context.getNamingResources().addResourceEnvRef(resource); } Modified: tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/ResourceBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/ResourceBase.java?rev=1827363&r1=1827362&r2=1827363&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/ResourceBase.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/ResourceBase.java Tue Mar 20 22:26:56 2018 @@ -80,6 +80,17 @@ public class ResourceBase implements Ser } + private String lookupName = null; + + public String getLookupName() { + return lookupName; + } + + public void setLookupName(String lookupName) { + this.lookupName = lookupName; + } + + /** * Holder for our configured properties. */ @@ -136,14 +147,12 @@ public class ResourceBase implements Ser public int hashCode() { final int prime = 31; int result = 1; - result = prime * result + - ((description == null) ? 0 : description.hashCode()); - result = prime * result + - ((injectionTargets == null) ? 0 : injectionTargets.hashCode()); + result = prime * result + ((description == null) ? 0 : description.hashCode()); + result = prime * result + ((injectionTargets == null) ? 0 : injectionTargets.hashCode()); result = prime * result + ((name == null) ? 0 : name.hashCode()); - result = prime * result + - ((properties == null) ? 0 : properties.hashCode()); + result = prime * result + ((properties == null) ? 0 : properties.hashCode()); result = prime * result + ((type == null) ? 0 : type.hashCode()); + result = prime * result + ((lookupName == null) ? 0 : lookupName.hashCode()); return result; } @@ -195,12 +204,17 @@ public class ResourceBase implements Ser } else if (!type.equals(other.type)) { return false; } + if (lookupName == null) { + if (other.lookupName != null) { + return false; + } + } else if (!lookupName.equals(other.lookupName)) { + return false; + } return true; } - // -------------------------------------------------------- Package Methods - /** * The NamingResources with which we are associated (if any). */ Modified: tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java?rev=1827363&r1=1827362&r2=1827363&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebRuleSet.java Tue Mar 20 22:26:56 2018 @@ -498,6 +498,7 @@ public class WebRuleSet implements RuleS "setHome", 0); digester.addRule(fullPrefix + "/ejb-local-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/ejb-local-ref/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/ejb-local-ref/"); //ejb-ref @@ -520,6 +521,7 @@ public class WebRuleSet implements RuleS "setRemote", 0); digester.addRule(fullPrefix + "/ejb-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/ejb-ref/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/ejb-ref/"); //env-entry @@ -539,6 +541,7 @@ public class WebRuleSet implements RuleS "setValue", 0); digester.addRule(fullPrefix + "/env-entry/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/env-entry/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/env-entry/"); //resource-env-ref @@ -553,6 +556,7 @@ public class WebRuleSet implements RuleS "setType", 0); digester.addRule(fullPrefix + "/resource-env-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/resource-env-ref/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/resource-env-ref/"); //message-destination @@ -573,6 +577,7 @@ public class WebRuleSet implements RuleS "setName", 0); digester.addRule(fullPrefix + "/message-destination/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/message-destination/lookup-name", "setLookupName", 0); //message-destination-ref digester.addObjectCreate(fullPrefix + "/message-destination-ref", @@ -592,6 +597,8 @@ public class WebRuleSet implements RuleS "setUsage", 0); digester.addRule(fullPrefix + "/message-destination-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/message-destination-ref/lookup-name", + "setLookupName", 0); configureInjectionRules(digester, "web-app/message-destination-ref/"); //resource-ref @@ -612,6 +619,7 @@ public class WebRuleSet implements RuleS "setType", 0); digester.addRule(fullPrefix + "/resource-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/resource-ref/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/resource-ref/"); //service-ref @@ -671,6 +679,7 @@ public class WebRuleSet implements RuleS "addPortName", 0); digester.addRule(fullPrefix + "/service-ref/mapped-name", new MappedNameRule()); + digester.addCallMethod(fullPrefix + "/service-ref/lookup-name", "setLookupName", 0); configureInjectionRules(digester, "web-app/service-ref/"); } Modified: tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebXml.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebXml.java?rev=1827363&r1=1827362&r2=1827363&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebXml.java (original) +++ tomcat/trunk/java/org/apache/tomcat/util/descriptor/web/WebXml.java Tue Mar 20 22:26:56 2018 @@ -1037,7 +1037,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", resourceEnvRef.getLookupName()); sb.append(" </resource-env-ref>\n"); } sb.append('\n'); @@ -1063,7 +1063,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", resourceRef.getLookupName()); sb.append(" </resource-ref>\n"); } sb.append('\n'); @@ -1149,7 +1149,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", envEntry.getLookupName()); sb.append(" </env-entry>\n"); } sb.append('\n'); @@ -1171,7 +1171,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", ejbRef.getLookupName()); sb.append(" </ejb-ref>\n"); } sb.append('\n'); @@ -1196,7 +1196,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", ejbLocalRef.getLookupName()); sb.append(" </ejb-local-ref>\n"); } sb.append('\n'); @@ -1255,7 +1255,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", serviceRef.getLookupName()); sb.append(" </service-ref>\n"); } sb.append('\n'); @@ -1310,7 +1310,7 @@ public class WebXml extends XmlEncodingB target.getTargetName()); sb.append(" </injection-target>\n"); } - // TODO lookup-name + appendElement(sb, INDENT4, "lookup-name", mdr.getLookupName()); sb.append(" </message-destination-ref>\n"); } sb.append('\n'); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org