return rider;
}
private void verifyAnnuityValues(OpenJPAEntityManagerFactorySPI myEMF, IAnnuity annuity, AnnuityType annuityType)
throws Exception {
IAnnuity results = findAnnuityById(myEMF, Annuity.class, annuity.getId());
if (annuity instanceof IFixedAnnuity) {
assertEqual((IFixedAnnuity)annuity, (IFixedAnnuity)results,
"Fixed Annuity from Client is not equal to DB value", "Mismacth was found.");
} else if (annuity instanceof IEquityAnnuity) {
assertEqual((IEquityAnnuity)annuity, (IEquityAnnuity)results,
"Equity Annuity from Client is not equal to DB value", "Mismacth was found.");
} else {
assertEqual(annuity, results,
"Basic Annuity from Client is not equal to DB value", "Mismacth was found.");
}
assertEqual(annuity.getPayouts(), results.getPayouts(),
"Annuity payouts from Client is not equal to DB value", "Mismacth was found in number of payouts");
boolean found = false;
if (annuity.getPayouts() != null) {
IPayout clientPayout = null;
for (int i=0; i<annuity.getPayouts().size(); i++) {
found = false; // reset
clientPayout = annuity.getPayouts().get(i);
for (IPayout resultPayout: results.getPayouts()) {
if (clientPayout.getId().equals(resultPayout.getId())){
found = true;
assertEqual(clientPayout, resultPayout,
"Annuity Payout from Client is not equal to DB value at location: " +i , "Mismacth was found");
}else{
continue;
}
}
if (!(found) && clientPayout != null) {
throw new RuntimeException("Annuity: Payout from client is not equal to DB. " +
"Found Payout with id: " + clientPayout.getId() +
" on the client side, but not in the database for annuity id:" + annuity.getId());
}
}
}
assertRidersEqual(annuity.getRiders(), results.getRiders(),
"Annuity rider from Client is not equal to DB value", "Mismacth was found in number of rider");
if (annuity.getRiders() != null) {
IRider clientRider = null;
for (int i=0; i<annuity.getRiders().size(); i++) {
found = false; // reset
clientRider = annuity.getRiders().get(i);
for (IRider resultRider : results.getRiders()) {
if (clientRider.getId().equals(resultRider.getId())){
found = true;
assertEqual(clientRider, resultRider,
"Annuity rider from Client is not equal to DB value at location: " +i , "Mismacth was found");
}else{
continue;
}
}
if (!(found) && clientRider != null) {
throw new RuntimeException("Annuity: Rider from client is not equal to DB. " +
"Found rider with id: " + clientRider.getId() +
" on the client side, but not in the database for annuity id:" + annuity.getId());
}
}
}
assertPayorsEqual(annuity.getPayors(), results.getPayors(),
"Annuity Payor from Client is not equal to DB value", "Mismacth was found.");
if (annuity.getPayors() != null) {
IPayor clientPayor = null;
for (int i=0; i<annuity.getPayors().size(); i++) {
found = false; // reset
clientPayor = annuity.getPayors().get(i);
for (IPayor resultPayor : results.getPayors()) {
if (clientPayor.getId().equals(resultPayor.getId())){
found = true;
assertEqual(annuity.getPayors().get(i), resultPayor,
"Annuity payor from Client is not equal to DB value at location: " +i , "Mismacth was found");
}else{