Test that the implementation class for
javax.resource.cci.ConnectionFactory provides a default constructor
Result result = getInitializedResult();
ComponentNameConstructor compName =
getVerifierContext().getComponentNameConstructor();
Class connFactoryImpl = null;
if(isCCIImplemented(descriptor, result))
{
connFactoryImpl = testConnectionFactoryImpl(descriptor, result);
if (connFactoryImpl == null)
return result;
}
else
{
// test is NA
result.addNaDetails(smh.getLocalString
("tests.componentNameConstructor",
"For [ {0} ]",
new Object[] {compName.toString()}));
result.notApplicable(smh.getLocalString
("com.sun.enterprise.tools.verifier.tests.connector.cci.notApp",
"The CCI interfaces do not seem to be implemented by this resource adapter"));
return result;
}
// check if connectionfactory-impl-class has a default constructor
try
{
connFactoryImpl.getConstructor(new Class[0]);
result.addGoodDetails(smh.getLocalString
("tests.componentNameConstructor",
"For [ {0} ]",
new Object[] {compName.toString()}));
result.passed(smh.getLocalString
("com.sun.enterprise.tools.verifier.tests.connector.cci.ConnectionFactoryDefaultConstructor.defConstr",
"The connectionfactory-impl-class: [ {0} ] provides a default constructor.", new Object[] {connFactoryImpl.getName()} ));
}
catch(NoSuchMethodException nsme)
{
result.addErrorDetails(smh.getLocalString
("tests.componentNameConstructor",
"For [ {0} ]",
new Object[] {compName.toString()}));
result.failed(smh.getLocalString
("com.sun.enterprise.tools.verifier.tests.connector.cci.ConnectionFactoryDefaultConstructor.noDefConstr",
"Error: The connectionfactory-impl-class: [ {0} ] must provide a default constructor.", new Object[] {connFactoryImpl.getName()} ));
}
catch(SecurityException se)
{
}
return result;