Como criar um filtro no Angularjs?

Eu tenho esta coleção de cursos:

 [{ id: 1, courseId: 2, text: 'John' },
  { id: 2, courseId: 2, text: 'Willi' },
  { id: 3, courseId: 2, text: 'Inga' },
  { id: 4, courseId: 1, text: 'Jerry' },
  { id: 5, courseId: 1, text: 'Michael' },
  { id: 1, courseId: 3, text: 'John' },
  { id: 2, courseId: 3, text: 'Willi' },
  { id: 3, courseId: 4, text: 'Inga' },
  { id: 4, courseId: 5, text: 'Jerry' },
  { id: 5, courseId: 5, text: 'Michael' }]

E eu tenho essa matriz de IDs:

[{"id": 3},{"id": 2},{"id": 1}] 

Eu preciso filtrar a matriz de cursos pela matriz de IDs (ou seja, para exibir apenas os cursos de texto que possuem courseId = 3,2,1):

ng-repeat="course in courses| customFilter: [{"id": 3},{"id": 2},{"id": 1}]"

Eu preciso criar um filtro personalizado no angularJS que irá filtrar a matriz de cursos pela matriz de IDs.

Alguma idéia de como posso implementar o customFilter para esse fim?

questionAnswers(2)

yourAnswerToTheQuestion