1 23 package com.sun.enterprise.tools.verifier.tests.ejb.entity.cmp; 24 25 import com.sun.enterprise.tools.verifier.tests.ejb.EjbTest; 26 import java.lang.reflect.Field ; 27 import java.util.*; 28 import com.sun.enterprise.deployment.*; 29 import com.sun.enterprise.tools.verifier.*; 30 import com.sun.enterprise.tools.verifier.tests.ejb.RmiIIOPUtils; 31 import com.sun.enterprise.tools.verifier.tests.ejb.EjbCheck; 32 import java.lang.ClassLoader ; 33 import com.sun.enterprise.tools.verifier.tests.*; 34 35 41 public class CmpFieldsDefinedForContainerPersistence extends EjbTest implements EjbCheck { 42 43 44 53 public Result check(EjbDescriptor descriptor) { 54 55 Result result = getInitializedResult(); 56 ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor(); 57 58 if (descriptor instanceof EjbEntityDescriptor) { 59 String persistentType = 60 ((EjbEntityDescriptor)descriptor).getPersistenceType(); 61 if (EjbEntityDescriptor.CONTAINER_PERSISTENCE.equals(persistentType)) { 62 Set persistentFields = 67 ((EjbCMPEntityDescriptor)descriptor).getPersistenceDescriptor().getCMPFields(); 68 69 if (persistentFields.size() >= 1) { 70 result.addGoodDetails(smh.getLocalString 71 ("tests.componentNameConstructor", 72 "For [ {0} ]", 73 new Object [] {compName.toString()})); 74 result.passed(smh.getLocalString 75 (getClass().getName() + ".passed", 76 "[ {0} ] container managed fields found in [ {1} ]", 77 new Object [] {new Integer (persistentFields.size()).toString(),descriptor.getName()})); 78 } else { 79 result.addErrorDetails(smh.getLocalString 80 ("tests.componentNameConstructor", 81 "For [ {0} ]", 82 new Object [] {compName.toString()})); 83 result.failed(smh.getLocalString 84 (getClass().getName() + ".failed", 85 "Error: [ {0} ] container managed fields found in [ {1} ]. Container managed fields must have at least one element for container-managed persistence", 86 new Object [] {new Integer (persistentFields.size()).toString(),descriptor.getName()})); 87 } 88 } else { result.addNaDetails(smh.getLocalString 90 ("tests.componentNameConstructor", 91 "For [ {0} ]", 92 new Object [] {compName.toString()})); 93 result.notApplicable(smh.getLocalString 94 (getClass().getName() + ".notApplicable1", 95 "Expected persistence type [ {0} ], but [ {1} ] bean has persistence type [ {2} ]", 96 new Object [] {EjbEntityDescriptor.CONTAINER_PERSISTENCE,descriptor.getName(),persistentType})); 97 } 98 return result; 99 } else { 100 result.addNaDetails(smh.getLocalString 101 ("tests.componentNameConstructor", 102 "For [ {0} ]", 103 new Object [] {compName.toString()})); 104 result.notApplicable(smh.getLocalString 105 (getClass().getName() + ".notApplicable", 106 "[ {0} ] expected {1} bean, but called with {2} bean.", 107 new Object [] {getClass(),"Entity","Session"})); 108 return result; 109 } 110 } 111 } 112 | Popular Tags |