@ Override public boolean matches ( ICpe target ) { boolean result = true ; result &= compareAttributes ( this . part , target . getPart ( ) ) ; result &= compareAttributes ( this . vendor , target . getWellFormedVendor ( ) ) ; result &= compareAttributes ( this . product , target . getWellFormedProduct ( ) ) ; result &= compareAttributes ( this . version , target . getWellFormedVersion ( ) ) ; result &= compareAttributes ( this . update , target . getWellFormedUpdate ( ) ) ; result &= compareAttributes ( this . edition , target . getWellFormedEdition ( ) ) ; result &= compareAttributes ( this . language , target . getWellFormedLanguage ( ) ) ; result &= compareAttributes ( this . swEdition , target . getWellFormedSwEdition ( ) ) ; result &= compareAttributes ( this . targetSw , target . getWellFormedTargetSw ( ) ) ; result &= compareAttributes ( this . targetHw , target . getWellFormedTargetHw ( ) ) ; result &= compareAttributes ( this . other , target . getWellFormedOther ( ) ) ; return result ; }
Determines if the CPE matches the given target CPE . This does not follow the CPE 2 . 3 Specification exactly as there are cases where undefined comparisons will result in either true or false . For instance ANY will match m + wild cards and NA will return false when the target has m + wild cards .