It may not need to class eval'd, have you tried just calling protected?