Revision 01a30cd0 src/gr/ebs/gss/server/ejb/GSSDAOBean.java

b/src/gr/ebs/gss/server/ejb/GSSDAOBean.java
18 18
 */
19 19
package gr.ebs.gss.server.ejb;
20 20

  
21
import static gr.ebs.gss.server.configuration.GSSConfigurationFactory.getConfiguration;
21 22
import gr.ebs.gss.client.exceptions.ObjectNotFoundException;
22 23
import gr.ebs.gss.server.domain.AccountingInfo;
23 24
import gr.ebs.gss.server.domain.FileBody;
......
28 29
import gr.ebs.gss.server.domain.Invitation;
29 30
import gr.ebs.gss.server.domain.Nonce;
30 31
import gr.ebs.gss.server.domain.User;
32
import gr.ebs.gss.server.domain.UserClass;
31 33

  
32 34
import java.util.ArrayList;
33 35
import java.util.Calendar;
......
630 632
		return results.get(0);
631 633
	}
632 634

  
635
	@Override
636
	public List<UserClass> getUserClasses() {
637
		// Ordering by quota is important here.
638
		List<UserClass> ids = manager.createQuery("select uc from UserClass uc order by uc.quota").getResultList();
639
		return ids;
640
	}
641

  
642
	@Override
643
	public UserClass findCouponUserClass() {
644
		List<UserClass> results = manager.createQuery("select uc from UserClass uc where uc.name=:name").
645
				setParameter("name", getConfiguration().getString("couponQuota")).getResultList();
646
		if (results.isEmpty()) {
647
			// Create the coupon user class on first use.
648
			UserClass couponClass = new UserClass();
649
			couponClass.setName("coupon");
650
			Long couponQuota = getConfiguration().getLong("couponQuota", new Long(52428800L));
651
			couponClass.setQuota(couponQuota);
652
			create(couponClass);
653
			flush();
654
			results.add(couponClass);
655
		}
656
		return results.get(0);
657
	}
633 658
}

Also available in: Unified diff