X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fstorage%2FDatabaseLanguage.java;h=4b5fa849f17cd13412a126883895c5976d275736;hb=5757f37a1bc4e2dcad3054a66611b1a02fb7d8b3;hp=221ffffc54085db478b4696f86a0d2005c5da0fe;hpb=635db236fe78484b5f7f0158ad8054b189bf7a79;p=mir.git diff --git a/source/mircoders/storage/DatabaseLanguage.java b/source/mircoders/storage/DatabaseLanguage.java index 221ffffc..4b5fa849 100755 --- a/source/mircoders/storage/DatabaseLanguage.java +++ b/source/mircoders/storage/DatabaseLanguage.java @@ -16,9 +16,9 @@ import java.util.*; import freemarker.template.*; -import webdb.storage.*; -import webdb.entity.*; -import webdb.misc.*; +import mir.storage.*; +import mir.entity.*; +import mir.misc.*; public class DatabaseLanguage extends Database implements StorageObject{ @@ -26,7 +26,11 @@ public class DatabaseLanguage extends Database implements StorageObject{ private static DatabaseLanguage instance; private static SimpleList languagePopupData; - public static DatabaseLanguage getInstance() throws StorageObjectException + // the following *has* to be sychronized cause this static method + // could get preemted and we could end up with 2 instances of DatabaseFoo.. + // see the "Singletons with needles and thread" article at JavaWorld -mh + public synchronized static DatabaseLanguage getInstance() + throws StorageObjectException { if (instance == null) { instance = new DatabaseLanguage(); @@ -40,11 +44,15 @@ public class DatabaseLanguage extends Database implements StorageObject{ super(); this.hasTimestamp = false; this.theTable="language"; - try { this.theEntityClass = Class.forName("mir.entity.EntityLanguage"); } - catch (Exception e) { throw new StorageObjectException(e.toString()); } } - public SimpleList getPopupData() { return getPopupData("name",false); } + public SimpleList getPopupData() throws StorageObjectException { + SimpleList pData = null; + try { + pData = getPopupData("name",false); + } catch (StorageObjectException e) {System.err.println("FF");} + return pData; + } }