Benutzung der generierten abstrakten inneren Switch-Klasse
public static boolean pruefeVertrag(
final Vertrag vertrag ,
// Zentrale oder Niederlassung
final ORB_Z_N_OREConstraint constraint ) {
// anonyme innere Klasse des übergebenen Constraint
return constraint.new Switch<Boolean>() {
@Override
protected Boolean caseZ(
// Zentrale
ZConstraint zConstraint ) {
return pruefeVertrag(
vertrag ,
zConstraint );
}
@Override
protected Boolean caseN(
// Niederlassung
NConstraint rConstraint ) {
...
}
}.doSwitch();
}
alle case-Methoden müssen implementiert werden
Lösung: kein vergessenes else (kein undefinierter Default)