KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > tools > verifier > tests > ejb > ias > resource > ASEjbRRefName


1 package com.sun.enterprise.tools.verifier.tests.ejb.ias.resource;
2 /*
3  * The contents of this file are subject to the terms
4  * of the Common Development and Distribution License
5  * (the License). You may not use this file except in
6  * compliance with the License.
7  *
8  * You can obtain a copy of the license at
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
10  * glassfish/bootstrap/legal/CDDLv1.0.txt.
11  * See the License for the specific language governing
12  * permissions and limitations under the License.
13  *
14  * When distributing Covered Code, include this CDDL
15  * Header Notice in each file and include the License file
16  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
17  * If applicable, add the following below the CDDL Header,
18  * with the fields enclosed by brackets [] replaced by
19  * you own identifying information:
20  * "Portions Copyrighted [year] [name of copyright owner]"
21  *
22  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
23  */

24
25 import com.sun.enterprise.tools.verifier.tests.ejb.EjbTest;
26 import java.util.*;
27 import com.sun.enterprise.deployment.EjbDescriptor;
28 import com.sun.enterprise.deployment.EjbSessionDescriptor;
29 import com.sun.enterprise.tools.verifier.*;
30 import com.sun.enterprise.tools.verifier.tests.*;
31
32 import com.sun.enterprise.tools.verifier.tests.ejb.EjbCheck;
33
34 import com.sun.enterprise.tools.common.dd.ejb.SunEjbJar;
35 import com.sun.enterprise.tools.common.dd.ejb.Ejb;
36 import com.sun.enterprise.tools.common.dd.ResourceRef;
37 import com.sun.enterprise.tools.common.dd.DefaultResourcePrincipal;
38 import com.sun.enterprise.deployment.ResourceReferenceDescriptor;
39
40 /** ejb [0,n]
41  * resource-ref [0,n]
42  * res-ref-name [String]
43  * jndi-name [String]
44  * default-resource-principal ?
45  * name [String]
46  * password [String]
47  *
48  * The res-ref-name specfies the name of the resource in the ejb-jar.xml for which
49  * this element shows the jndi binding properties
50  *
51  * The res-ref-name should exist in the ejb-jar.xml file
52  *
53  * @author Irfan Ahmed
54  */

55 public class ASEjbRRefName extends ASEjbResRef {
56
57     public Result check(EjbDescriptor descriptor)
58     {
59     Result result = getInitializedResult();
60     ComponentNameConstructor compName = new ComponentNameConstructor(descriptor);
61
62         SunEjbJar ejbJar = descriptor.getEjbBundleDescriptor().getIasEjbObject();
63         boolean oneFailed = false;
64         
65         if(ejbJar!=null)
66         {
67             Ejb ejbs[] = ejbJar.getEnterpriseBeans().getEjb();
68             Ejb testCase = null;
69             for(int i=0;i<ejbs.length;i++)
70             {
71                 if(ejbs[i].getEjbName().equals(descriptor.getName()))
72                 {
73                     testCase = ejbs[i];
74                     break;
75                 }
76             }
77             
78             ResourceRef resRefs[] = testCase.getResourceRef();
79             if(resRefs.length > 0)
80             {
81                 for(int j=0;j<resRefs.length;j++)
82                 {
83                     String JavaDoc refName = resRefs[j].getResRefName();
84                     if(refName.length()==0)
85                     {
86                         result.failed(smh.getLocalString(getClass().getName()+".failed",
87                             "FAILED [AS-EJB resource-ref] : resource-ref has empty res-ref-name"));
88                     }
89                     else
90                     {
91                         result.passed(smh.getLocalString(getClass().getName()+".passed",
92                             "PASSED [AS-EJB resource-ref] : res-ref-name is {0}",new Object JavaDoc[]{refName}));
93                     }
94                 }
95             }
96             else
97             {
98                  result.notApplicable(smh.getLocalString
99                          (getClass().getName() + ".notApplicable",
100                           "{0} Does not define any resource-ref Elements",
101                           new Object JavaDoc[] {descriptor.getName()}));
102             }
103         }
104         else
105         {
106             result.addErrorDetails(smh.getLocalString
107                  (getClass().getName() + ".notRun",
108                   "NOT RUN [AS-EJB] : Could not create an SunEjbJar object"));
109         }
110         return result;
111     }
112 }
113
114
Popular Tags