public InvoicePosition prepareNewInvoicePosition() throws ServiceException {
if (logger.isDebugEnabled()) {
logger.debug("prepareNewInvoicePosition() - start");
}
InvoicePosition ip = null;
if (this.invoicePositionTemplate != null) {
try {
ip = invoicePositionTemplate.clone();
} catch (CloneNotSupportedException e) {
logger.warn("prepareNewInvoice()", e);
}
}
if (ip == null) {
ip = new InvoicePosition();
}
if (logger.isDebugEnabled()) {
logger.debug("prepareNewInvoicePosition() - end - return value=" + ip);
}