litesoft
@ 513
litesoft / trunk / GWT_Sandbox / MultiModule / common / src / org / litesoft / sandbox / multimodule / common / client / infrastructure / ActivityFactoryRegistry.java
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 |
package org.litesoft.sandbox.multimodule.common.client.infrastructure; import java.util.*; import org.litesoft.logger.*; import com.google.gwt.activity.shared.*; import com.google.gwt.event.shared.*; import com.google.gwt.place.shared.*; import com.google.gwt.user.client.ui.*; public class ActivityFactoryRegistry { public static <CommonActivityParam extends MessageUserSinkAccessor, View extends IsWidget, APlace extends Place> void register( ActivityFactory.Synchronous<CommonActivityParam, View, APlace> pFactory ) { add( pFactory ); } public static <CommonActivityParam extends MessageUserSinkAccessor, View extends IsWidget, APlace extends Place> void register( ActivityFactory.Asynchronous<CommonActivityParam, View, APlace> pFactory ) { add( pFactory ); } private static final Map<String, ActivityFactory> PLACEID2ACTIVITYFACTORIES = new HashMap<String, ActivityFactory>(); protected static synchronized ActivityFactory get( String pPlaceId ) { return PLACEID2ACTIVITYFACTORIES.get( pPlaceId ); } private static synchronized void add( ActivityFactory pFactory ) { if ( pFactory != null ) { PLACEID2ACTIVITYFACTORIES.put( pFactory.getPlaceId(), pFactory ); } } } |