All Classes
-
All Classes Interface Summary Class Summary Enum Summary Exception Summary Class Description AbstractDeveloperHelperService implementation of the helper service methods which are internal only NOTE: you should probably override encode and decode data rather than simply using the current implAbstractEntityPropertiesService This service allows us to track all the properties files related to describing the capabilities of our entities and the entities themselves, it allows lookup of strings as well
NOTE: For internal use only, has no dependenciesAbstractEntityPropertiesService.MessageBundle AbstractEntityProvider WARNING: Requires Spring 1.2.8 or newer libraries in the classpath
Makes it easier to writeEntityProviders 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 theDeveloperHelperServiceas 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):AccessProviderManagerImpl<T> A common generic implementation class for managers of different kinds of access providers.BeanCollectorAutoRegistrar This will collect the autoregistered beans and place them into all the locations which requested themBeanCollectorAutoRegistrar.OrderComparator Comparator to order the collected beans based on order or use default order otherwiseDeveloperHelperServiceMock This is the Mock for the developer helper service, allows the service to always be available even when someone has not implemented it for the system that is using EBDirectServlet This is the core abstract DirectServlet class which is meant to extended, extend this to plugin whatever system you have for initiating/retrieving the EB services and for handling logins
Direct servlet allows unfettered access to entity URLs within the EB system, it also can handle authentication (login) if required (without breaking an entity URL)EasySSLProtocolSocketFactory EasySSLProtocolSocketFactory can be used to creats SSLSockets that accept self-signed certificates.EasyX509TrustManager EasyX509TrustManager unlike defaultX509TrustManageraccepts self-signed certificates.EntityContent EntityDataUtils Utilities which are useful when working withEntityDataobjects and their propertiesEntityHttpServletRequest Makes a copy of the data in a servlet request into a new request objectEntityHttpServletRequest.EntityHttpSession A fake session for testing, from the spring mock sessionEntityHttpServletRequest.EntityRequestDispatcher A non-functional request dispatcher, based on the spring mock versionEntityHttpServletRequest.EntityServletContext For testing, based on the spring Mock versionEntityHttpServletResponse This is here to allow us to receive response data back which will not mess up an existing response object and to allow for mocking of responses, based on and built from the example in spring frameworkEntityPropertiesServiceSimple This is a simple implementation of the properties loader service which uses standard java resource bundlesEntityPropertiesServiceSpringImpl This service allows us to track all the properties files related to describing the capabilities of our entities and the entities themselves, it allows lookup of strings as well
NOTE: Depends on spring and extends the spring based message bundleEntityProviderAutoRegistrar Finds and registers anyEntityProviderimplementation which also implementsAutoRegisterEntityProviderEntityProviderMethodStoreImpl This stores the various methods used to track different methods allowed for providers and also tracks the various methods in the registryEntityServletInputStream This is a class which allows us to produce and controlServletInputStreams, normally there is no default implementation available for these for some stupid reasonEntityServletOutputStream This allows us to produce and controlServletOutputStreams, normally there is not a default implementation available for these for some crazed reasonEntityServletOutputStream.WriterOutputStream Wrap a Writer as an OutputStream.EntityViewAccessProviderManagerImpl Implementation for managing EntityView providersExternalIntegrationProviderMock A mock which provides a placeholder class to handle external integrationHttpClientWrapper Allows us to cleanly wrap an httpclient object without exposing the actual object classHttpResponse This is here to contain the information we get back from an http request fired by the methods inHttpRESTUtilsHttpRESTUtils Utilities for generating and processing http requests, allows the developer to fire off a request and get back information about the response
All encoding is automatically UTF-8HttpRESTUtils.HttpIOException Indicates an IO failureHttpRESTUtils.HttpRequestException Indicates a general failureHttpRESTUtils.Method HttpServletAccessProviderManagerImpl A simple implementation of theHttpServletAccessProviderManagerusing weak references.LazyRequestInputStream This provides lazy access to theServletInputStreamdata in a request, this avoids issues with attempting to read data which was is later requested from the reader since it will not actually do any reads using theServletInputStreambut still can pretend toLazyResponseOutputStream This will get the response to get an outputstream from but will not actually get it from the response until someone attempts to use the outputstream
This is horrible but required because of the way Sakai tool forwarding worksReloadableComponentProxy 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:
3) Put the interface for your service into shared (this has to be the same interface you are registering in proxyInterfaces)
4) UseComponentManager.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.RequestGetterImpl Service which will retrieve the current request information if it is available, this allows an application scoped bean to get access to request scoped informationRequestStorageImpl Impl for the request store, will store values in the request itself and will maintain a map of all request values in a threadlocal which should always be cleared at the end of the requestRequestStorageImpl.EntryComparator RequestUtils Contains a set of static utility methods for working with requestsRequestUtils.ShortestStringLastComparator Comparator which puts the longest strings first and the shortest lastResourceFinder Takes a path or list of paths to resources and turns them into different things (file/IS/resource), this also allows us to look on a relative or absolute path and will automatically check the typical places one might expect to put sakai config files
Checks the environmental and file paths first and then defaults to checking the classloaders
Allows us to find resources in our pack since the Sakai context classloader is wrong, too bad it is not correct, that would be cool, but it is wrong and it is not cool
Sample usage: Just call whichever get* method you want to depending on the needed output
You can also get arrays of resources at once like so:org/sakaiproject/hierarchy/dao/hbm/HierarchyPersistentNode.hbm.xml org/sakaiproject/hierarchy/dao/hbm/HierarchyNodeMetaData.hbm.xml URLData This is a storage and parsing utility class, supports the ability to get the data out of a URLVersionConstants Tracking the version for output on screen