Package org.sakaiproject.entitybroker.util

Class Summary
AbstractEntityProvider WARNING: Requires Spring 1.2.8 or newer libraries in the classpath
Makes it easier to write EntityProviders in webapps
A class to extend that gets rid of some of the redundant code that has to be written over and over, causes this provider to be registered when it is created and unregistered when it is destroyed, also includes the DeveloperHelperService as a protected variable, pairs with the parent bean (org.sakaiproject.entitybroker.entityprovider.AbstractEntityProvider)
Create your spring bean like so (class is your provider, set whatever properties you are using): <bean parent="org.sakaiproject.entitybroker.entityprovider.AbstractEntityProvider" class="org.sakaiproject.entitybroker.entitywebapp.WebappEntityProvider"> <property name="dao" ref="MemoryDao" /> </bean>
EntityDataUtils Utilities which are useful when working with EntityData objects and their properties
ReloadableComponentProxy WARNING: Requires Spring 1.2.8 or newer libraries in the classpath
Allows you to define a Sakai component in a webapp so it can be reloaded, this makes development easier since it does not require all of Sakai to be restarted and yet allows you to expose beans to the Sakai component manager
WARNING: This is currently experimental as your bean will not be able to be found by the component manager while things are starting up (since your webapp will not have loaded up yet), it is basically only useful for development and some testing right now
How to use:
1) Create a bean for the service you want to proxy in your webapp application context (example: myLocalBean)
2) Create a bean in your webapp like so: <bean class="org.sakaiproject.entitybroker.util.ReloadableComponentProxy"> <property name="proxyInterfaces" value="org.sakaiproject.myproject.MyService" /> <property name="sakaiComponentName" value="org.sakaiproject.myproject.MyService" /> <property name="localSakaiComponentBean" ref="myLocalBeanName" /> </bean>
3) Put the interface for your service into shared (this has to be the same interface you are registering in proxyInterfaces)
4) Use ComponentManager.get(Class) to load up the proxied bean in the service/thing that is using your service at the point where it is used (not in the init or it will fail): if (webappService == null) { webappService = (MyService) ComponentManager.get(MyService.class); } That's it.
VersionConstants Tracking the version for output on screen
 



Copyright © 2007-2013 CARET, University of Cambridge. All Rights Reserved.