Lift использует PartialFunction при реализации Comet Actors, и вы обычно заканчиваете этим в своем классе:
override def lowPriority: PartialFunction[Any,Unit] = {
case MyCaseClass1(a) => do something here
case MyCaseClass2(a) => do something here
case AlwaysPresentCaseClass => default action
}
Что бы я хотел сделать, и я не уверен, если этовозможно даже разделить эту частичную функцию так, чтобы последний случай мог быть перемещен в черту.
Поэтому, когда у меня есть новый кометный актер, я просто делаю:
class MyNewComet extends MyActorTrait {
override def lowPriority: PartialFunction[Any,Unit] = {
case MyCaseClass1(a) => do something here
case MyCaseClass2(a) => do something here
}
}
И как-тоу черты MyActorTrait будет отсутствовать
case AlwaysPresentCaseClass => default action