litesoft
@ 947
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.orsup.base; import org.litesoft.changemanagement.*; import org.litesoft.core.*; public final class DataStoreLocator { public static DataStore get() { ServerContext zContext = ServerContext.get(); ServerStore zStore = zContext.getServerStore(); DataStore zDataStore = zStore.get( DataStore.class ); if ( zDataStore == null ) { zDataStore = ServerContext.getMasterServerStore().get( DataStore.class ); if ( zDataStore != null ) { zStore.set( DataStore.class, zDataStore ); } } return zDataStore; } public static void initialize( DataStore pDataStore ) { ServerContext.getMasterServerStore().set( DataStore.class, pDataStore ); ChangeListenerManager.BackDoor.setLocator( new ChangeListenerManager.Locator() { @Override public ChangeListenerManager getChangeListenerManager() { return get().getChangeListenerManager(); } } ); } public static void uninitialize() { ServerContext.getMasterServerStore().remove( DataStore.class ); ChangeListenerManager.BackDoor.setLocator( null ); } } |