org.restlet.ext.spring
Class SpringRouter

java.lang.Object
  extended by org.restlet.Restlet
      extended by org.restlet.routing.Router
          extended by org.restlet.ext.spring.SpringRouter
All Implemented Interfaces:
Uniform

public class SpringRouter
extends Router

Router that is easily configurable with Spring. Here is a usage example:

 <bean class="org.restlet.ext.spring.SpringRouter">
     <constructor-arg ref="application" />
 
     <property name="attachments">
         <map>
             <entry key="/users/{user}"                  value="org.restlet.example.tutorial.UserResource" />
             <entry key="/users/{user}/orders"           value="org.restlet.example.tutorial.OrdersResource" />
             <entry key="/users/{user}/orders/{order}"   value="org.restlet.example.tutorial.OrderResource" />
         </map>
     </property>
 </bean>
 
Concurrency note: instances of this class or its subclasses can be invoked by several threads at the same time and therefore must be thread-safe. You should be especially careful when storing state in member variables.

Author:
Jerome Louvel
See Also:
Spring home page

Field Summary
 
Fields inherited from class org.restlet.routing.Router
MODE_BEST_MATCH, MODE_CUSTOM, MODE_FIRST_MATCH, MODE_LAST_MATCH, MODE_NEXT_MATCH, MODE_RANDOM_MATCH
 
Constructor Summary
SpringRouter()
          Constructor.
SpringRouter(Context context)
          Constructor with a parent context.
SpringRouter(Restlet parent)
          Constructor with a parent Restlet.
 
Method Summary
static void setAttachment(Router router, String path, Object route)
          Attach a single route.
 void setAttachments(Map<String,Object> routes)
          Sets the map of routes to attach.
static void setAttachments(Router router, Map<String,Object> routes)
          Sets the map of routes to attach.
 void setDefaultAttachment(Object route)
          Sets the default route to attach.
 
Methods inherited from class org.restlet.routing.Router
attach, attach, attach, attach, attach, attach, attachDefault, attachDefault, createRoute, createRoute, detach, detach, doHandle, getCustom, getDefaultMatchingMode, getDefaultMatchingQuery, getDefaultRoute, getMatchingMode, getMaxAttempts, getNext, getRequiredScore, getRetryDelay, getRoutes, getRoutingMode, handle, logRoute, setDefaultMatchingMode, setDefaultMatchingQuery, setDefaultRoute, setMaxAttempts, setRequiredScore, setRetryDelay, setRoutes, setRoutingMode, start, stop
 
Methods inherited from class org.restlet.Restlet
createFinder, finalize, getApplication, getAuthor, getContext, getDescription, getFinderClass, getLogger, getName, getOwner, handle, handle, handle, isStarted, isStopped, setAuthor, setContext, setDescription, setFinderClass, setName, setOwner
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringRouter

public SpringRouter()
Constructor.


SpringRouter

public SpringRouter(Context context)
Constructor with a parent context.

Parameters:
context - The parent context.

SpringRouter

public SpringRouter(Restlet parent)
Constructor with a parent Restlet.

Parameters:
parent - The parent Restlet.
Method Detail

setAttachment

public static void setAttachment(Router router,
                                 String path,
                                 Object route)
Attach a single route.

Parameters:
router - The router to attach to.
path - The attachment URI path.
route - The route object to attach.

setAttachments

public static void setAttachments(Router router,
                                  Map<String,Object> routes)
Sets the map of routes to attach.

Parameters:
router - The router to attach to.
routes - The map of routes to attach

setAttachments

public void setAttachments(Map<String,Object> routes)
Sets the map of routes to attach. The map keys are the URI templates and the values can be either Restlet instances, ServerResource subclasses (as Class instances or as qualified class names).

Parameters:
routes - The map of routes to attach.

setDefaultAttachment

public void setDefaultAttachment(Object route)
Sets the default route to attach. The route can be either Restlet instances, ServerResource subclasses (as Class instances or as qualified class names).

Parameters:
route - The default route to attach.


Copyright © 2005-2013 Restlet.