private void checkForDeletingVariant ( JMFType nonVar , JSVariant var , boolean varIsAccess , JSchema accSchema , JSchema encSchema ) throws JMFSchemaViolationException { // Deleting variant always has exactly two cases if ( var . getCaseCount ( ) != 2 ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) JmfTr . debug ( this , tc , "Compatibility violation (deleting variant):" + " var CaseCount = " + var . getCaseCount ( ) + ", varIsAccess " + varIsAccess ) ; if ( varIsAccess ) { violation ( var , nonVar ) ; } else { violation ( nonVar , var ) ; } } if ( isEmpty ( var . getCase ( 1 ) ) ) { // Second case is empty tuple, so we proceed to compare the first case to the // candidate deletable type. JMFType compare = var . getCase ( 0 ) ; if ( varIsAccess ) recordCompatibilityInfo ( compare , accSchema , nonVar , encSchema ) ; else recordCompatibilityInfo ( nonVar , accSchema , compare , encSchema ) ; } else { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) JmfTr . debug ( this , tc , "Compatibility violation (deleting variant):" + " var Case(1) not empty" ) ; if ( varIsAccess ) { violation ( var , nonVar ) ; } else { violation ( nonVar , var ) ; } } }
info stripping off the deleting variant .