For those who are using the collectionprovider code you'll need to make
a couple changes.
1. WorkspaceProvider is now ServiceProvider
2. You no longer have to have a separate target resolver.
ServiceProvider has a built in one now, which greatly simplifies
configuration. So if you're using spring it will look something like this:
<a:serviceContext>
<a:provider>
<ref bean="provider"/>
</a:provider>
<a:targetResolver>
<ref bean="provider"/>
</a:targetResolver>
</a:serviceContext>
<bean id="provider"
class="org.apache.abdera.protocol.server.impl.ServiceProvider">
<property name="servicesPath" value="/service/"/> <!-- This is
optional, defaults to "/" -->
<property name="workspaces">
<list>
<bean
class="org.apache.abdera.protocol.server.impl.SimpleWorkspaceInfo">
<property name="name" value="Title of your workspace"/>
<property name="collectionProviders">
<map>
<entry key="relative/href/to/feed">
<bean class="YourCollectionProvider"/>
</entry>
</map>
</property>
</bean>
</list>
</property>
</bean>
Yeah we still need nice xml for ServiceProvider/CollectionProvider, but
that'll come. We also need to figure out a way to auto detect that the
Provider implements Target<Resolver>.
3. Note the servicesPath proeprty on ServiceProvider. This just
specifies the path to your services document from the Abdera servlet.
4. Note that the map of collection providers is now keyed by a relative
URI. So in the above example, the collection would be located at
http://localhost/services/relative/href/to/feed. This allows a lot more
flexible mappings.
Cheers,
- Dan
--
Dan Diephouse
MuleSource
http://mulesource.com | http://netzooid.com/blog