FileDocCategorySizeDatePackage
ASSessionProperty.javaAPI DocGlassfish v2 API5182Fri May 04 22:34:16 BST 2007com.sun.enterprise.tools.verifier.tests.web.runtime

ASSessionProperty

public class ASSessionProperty extends WebTest implements WebCheck

Fields Summary
Constructors Summary
Methods Summary
public Resultcheck(com.sun.enterprise.deployment.WebBundleDescriptor descriptor)



	Result result = getInitializedResult();
	ComponentNameConstructor compName = getVerifierContext().getComponentNameConstructor();

        boolean oneFailed = false;
        boolean notApp = false;
        try{
        SessionConfig sessionConfig = (descriptor.getSunDescriptor()).getSessionConfig();
        SessionProperties sessionProp=null;
        WebProperty[] SPwebProps=null;

        if(sessionConfig !=null){
            sessionProp = sessionConfig.getSessionProperties();
            if (sessionProp!=null)
                SPwebProps=sessionProp.getWebProperty();
        }

        if (sessionConfig!=null && sessionProp !=null && SPwebProps!=null && SPwebProps.length !=0 ) {

            if(ASWebProperty.checkWebProperties(SPwebProps,result ,descriptor, this )){
                  oneFailed=true;

                  addErrorDetails(result, compName);
                  result.failed(smh.getLocalString
                                (getClass().getName() + ".failed",
                                "FAILED [AS-WEB session-config] session-properties - Atleast one name/value pair is not valid in [ {0} ].",
                                new Object[] {descriptor.getName()}));
            }

        } else {
            notApp = true;
        }
            
        if(notApp) {
            addNaDetails(result, compName);
	    result.notApplicable(smh.getLocalString
				 (getClass().getName() + ".notApplicable",
				  "NOT APPLICABLE [AS-WEB session-config] session-properties element(s) not defined in the web archive [ {0} ].",
				  new Object[] {descriptor.getName()}));
        }

        if (oneFailed) {
            result.setStatus(Result.FAILED);
        } else if(notApp) {
            result.setStatus(Result.NOT_APPLICABLE);
        }else {
            result.setStatus(Result.PASSED);
            addGoodDetails(result, compName);
            result.passed
		    (smh.getLocalString
                    (getClass().getName() + ".passed",
                    "PASSED [AS-WEB session-config] session-properties element(s) are valid within the web archive [ {0} ].",
                    new Object[] {descriptor.getName()} ));
        }
        }catch(Exception ex){
        oneFailed = true;
            addErrorDetails(result, compName);
            result.failed(smh.getLocalString
                (getClass().getName() + ".failed1",
                    "FAILED [AS-WEB session-config] could not create the session-config object"));
        
        }
	return result;