Refactored to be JSR-352 specific