X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmircoders%2Fstorage%2FDatabaseUsers.java;h=69ab2568c19a2ac55501b53c13ef50f87e2f817e;hb=ad39c6eee58bb0ca40cbdabe191e02ec71d248bf;hp=dd03a1b1295dc6c6368da9be59faea812ecef0d6;hpb=33ef3800295948ffa4e9b88cb30e4acf0a499dde;p=mir.git diff --git a/source/mircoders/storage/DatabaseUsers.java b/source/mircoders/storage/DatabaseUsers.java index dd03a1b1..69ab2568 100755 --- a/source/mircoders/storage/DatabaseUsers.java +++ b/source/mircoders/storage/DatabaseUsers.java @@ -21,7 +21,11 @@ public class DatabaseUsers extends Database implements StorageObject{ private static DatabaseUsers instance; - public static DatabaseUsers 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 DatabaseUsers getInstance() + throws StorageObjectException { if (instance == null) { instance = new DatabaseUsers(); instance.myselfDatabase = instance; @@ -42,7 +46,7 @@ public class DatabaseUsers extends Database implements StorageObject{ } } - public SimpleList getPopupData() { + public SimpleList getPopupData() throws StorageObjectException { return getPopupData("login",true); } }