1 9 package org.ozoneDB.odmg; 10 11 import java.io.*; 12 import org.odmg.*; 13 import org.ozoneDB.DxLib.*; 14 15 16 32 public abstract class ODMG implements Implementation { 33 34 private static DxBag factories; 35 36 private static EnhDatabase theServerSideODMGDatabase; 37 38 39 static { 40 if (org.ozoneDB.core.Env.currentEnv() != null) { 42 theServerSideODMGDatabase = new OzoneServerODMGDatabase(); 43 } else { 44 factories = new DxArrayBag(); 46 } 47 } 48 49 50 public static Database getDatabase2( Object obj ) { 51 if (theServerSideODMGDatabase != null) { 53 return theServerSideODMGDatabase; 54 } else { 55 ODMG odmg = null; 57 DxIterator it = factories.iterator(); 58 while ((odmg = (ODMG)it.next()) != null) { 59 Database db = odmg.getDatabase( obj ); 60 if (db != null) { 61 return db; 62 } 63 } 64 return null; 65 } 66 } 67 68 69 public ODMG() { 70 factories.add( this ); 71 } 72 73 } 74 | Popular Tags |