ItEr20S07CUIntroducionAvanceUnidadeTraballoItEr19S12: Adding new constructors for Duplicate...Exceptions so the class can be passed.

This way they're more resilient to change.
This commit is contained in:
Óscar González Fernández 2009-08-03 16:05:05 +02:00
parent 9c5a913d84
commit 4461f72dcf
3 changed files with 16 additions and 5 deletions

View file

@ -1,5 +1,6 @@
package org.navalplanner.business.advance.exceptions;
/**
* An exception for modeling a problem with duplicated advance assigment of the
* same type for an order element. It contains a message, the key of the
@ -21,6 +22,11 @@ public class DuplicateAdvanceAssigmentForOrderElementException extends
this.className = className;
}
public DuplicateAdvanceAssigmentForOrderElementException(
String specificMessage, Object key, Class<?> klass) {
this(specificMessage, key, klass.getName());
}
public Object getKey() {
return key;
}

View file

@ -1,5 +1,6 @@
package org.navalplanner.business.advance.exceptions;
/**
* An exception for modeling a problem with duplicated values to true for the
* property reportGlobalAdvance of the advanceAsigment class for an order
@ -20,6 +21,11 @@ public class DuplicateValueTrueReportGlobalAdvanceException extends Exception {
this.className = className;
}
public DuplicateValueTrueReportGlobalAdvanceException(
String specificMessage, Object key, Class<?> klass) {
this(specificMessage, key, klass.getName());
}
public Object getKey() {
return key;
}

View file

@ -190,8 +190,7 @@ public abstract class OrderElement {
if (advanceAssigment.getReportGlobalAdvance())
throw new DuplicateValueTrueReportGlobalAdvanceException(
"Duplicate Value True ReportGlobalAdvance For Order Element",
this,
"org.navalplanner.business.orders.entities.OrderElement");
this, OrderElement.class);
}
}
@ -202,8 +201,8 @@ public abstract class OrderElement {
* @param newAdvanceAssigment
* @throws DuplicateAdvanceAssigmentForOrderElementException
*/
private void checkNoOtherAssignmentWithSameAdvanceType(OrderElement orderElement,
AdvanceAssigment newAdvanceAssigment)
private void checkNoOtherAssignmentWithSameAdvanceType(
OrderElement orderElement, AdvanceAssigment newAdvanceAssigment)
throws DuplicateAdvanceAssigmentForOrderElementException {
for (AdvanceAssigment advanceAssigment : orderElement
.getAdvanceAssigments()) {
@ -211,7 +210,7 @@ public abstract class OrderElement {
.getAdvanceType().getId()) {
throw new DuplicateAdvanceAssigmentForOrderElementException(
"Duplicate Advance Assigment For Order Element", this,
"org.navalplanner.business.orders.entities.OrderElement");
OrderElement.class);
}
}
if (orderElement.getParent() != null) {