class SecurityFunctionServiceImpl implements SecurityFunctionService {

    @Override
    public SecurityFunction getSecurityFunction(SecurityFunctionKey securityFunctionKey)
    {
        // Perform validation and trim.
        validateAndTrimSecurityFunctionKey(securityFunctionKey);

        // Retrieve and ensure that a security function already exists with the specified key.
        SecurityFunctionEntity securityFunctionEntity =
            securityFunctionDaoHelper.getSecurityFunctionEntity(securityFunctionKey.getSecurityFunctionName());

        // Create and return the security function object from the persisted entity.
        return createSecurityFunctionFromEntity(securityFunctionEntity);
    }

}