Revision 092998fe
b/src/gr/ebs/gss/server/ejb/GSSDAOBean.java | ||
---|---|---|
543 | 543 |
} |
544 | 544 |
|
545 | 545 |
if (ai==null) { |
546 |
// The right entry does not exist; must be created.
|
|
547 |
// This is where we set the initial time period.
|
|
548 |
// We now start from the user's creation, we can change this to something else.
|
|
549 |
Calendar creationDate = new GregorianCalendar();
|
|
550 |
creationDate.setTime(user.getAuditInfo().getCreationDate());
|
|
551 |
int offset = 0;
|
|
552 |
Calendar dateFrom;
|
|
553 |
Calendar dateTo;
|
|
554 |
long timeInMillis = date.getTime();
|
|
555 |
do {
|
|
556 |
dateFrom = (Calendar) creationDate.clone(); |
|
557 |
dateFrom.add(BANDWIDTH_TIME_PERIOD_FIELD, offset);
|
|
558 |
dateTo = (Calendar) dateFrom.clone();
|
|
559 |
dateTo.add(BANDWIDTH_TIME_PERIOD_FIELD, 1);
|
|
560 |
offset += BANDWIDTH_TIME_PERIOD_AMOUNT;
|
|
561 |
}
|
|
562 |
while (!(dateFrom.getTimeInMillis()<=timeInMillis && dateTo.getTimeInMillis()>timeInMillis));
|
|
546 |
Calendar dateFrom;
|
|
547 |
Calendar dateTo;
|
|
548 |
Calendar thisDate = new GregorianCalendar();
|
|
549 |
thisDate.setTime(date);
|
|
550 |
dateFrom = (Calendar) thisDate.clone();
|
|
551 |
dateFrom.set(Calendar.DAY_OF_MONTH, thisDate.getActualMinimum(Calendar.DAY_OF_MONTH));
|
|
552 |
dateFrom.set(Calendar.HOUR_OF_DAY, thisDate.getActualMinimum(Calendar.HOUR_OF_DAY));
|
|
553 |
dateFrom.set(Calendar.MINUTE, thisDate.getActualMinimum(Calendar.MINUTE));
|
|
554 |
dateFrom.set(Calendar.SECOND, thisDate.getActualMinimum(Calendar.SECOND));
|
|
555 |
dateFrom.set(Calendar.MILLISECOND, thisDate.getActualMinimum(Calendar.MILLISECOND));
|
|
556 |
|
|
557 |
dateTo = (Calendar) thisDate.clone();
|
|
558 |
dateTo.set(Calendar.DAY_OF_MONTH, thisDate.getActualMaximum(Calendar.DAY_OF_MONTH));
|
|
559 |
dateTo.set(Calendar.HOUR_OF_DAY, thisDate.getActualMaximum(Calendar.HOUR_OF_DAY));
|
|
560 |
dateTo.set(Calendar.MINUTE, thisDate.getActualMaximum(Calendar.MINUTE));
|
|
561 |
dateTo.set(Calendar.SECOND, thisDate.getActualMaximum(Calendar.SECOND));
|
|
562 |
dateTo.set(Calendar.MILLISECOND, thisDate.getActualMaximum(Calendar.MILLISECOND));
|
|
563 | 563 |
|
564 | 564 |
ai = new AccountingInfo(user, dateFrom.getTime(), dateTo.getTime()); |
565 | 565 |
manager.persist(ai); |
Also available in: Unified diff