1 4 package com.nightlabs.ipanema.accounting; 5 6 import java.util.Iterator ; 7 8 import javax.jdo.PersistenceManager; 9 10 import com.nightlabs.ipanema.organisation.LocalOrganisation; 11 12 21 public class TariffRegistry 22 { 23 30 public static TariffRegistry getTariffRegistry(PersistenceManager pm) 31 { 32 Iterator it = pm.getExtent(TariffRegistry.class).iterator(); 33 if (it.hasNext()) 34 return (TariffRegistry)it.next(); 35 36 TariffRegistry categorySetRegistry = new TariffRegistry(); 37 38 it = pm.getExtent(LocalOrganisation.class).iterator(); 40 if (!it.hasNext()) 41 throw new IllegalStateException ("LocalOrganisation undefined in datastore!"); 42 LocalOrganisation localOrganisation = (LocalOrganisation) it.next(); 43 categorySetRegistry.organisationID = localOrganisation.getOrganisation().getOrganisationID(); 44 45 pm.makePersistent(categorySetRegistry); 46 return categorySetRegistry; 47 } 48 49 public TariffRegistry() 50 { 51 } 52 53 private long nextTariffID = 0; 54 55 private String organisationID; 56 57 public synchronized long createTariffID() 58 { 59 long res = nextTariffID; 60 nextTariffID = res + 1; 61 return res; 62 } 63 66 public String getOrganisationID() 67 { 68 return organisationID; 69 } 70 } 71 | Popular Tags |