You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2018/03/20 22:26:56 UTC

svn commit: r1827363 - in /tomcat/trunk/java/org/apache: catalina/startup/WebAnnotationSet.java tomcat/util/descriptor/web/ResourceBase.java tomcat/util/descriptor/web/WebRuleSet.java tomcat/util/descriptor/web/WebXml.java

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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org