Restlet 1.1 M1 (Development branch)


 
Thread Tools Search this Thread
Special Forums News, Links, Events and Announcements Software Releases - RSS News Restlet 1.1 M1 (Development branch)
# 1  
Old 12-24-2007
Restlet 1.1 M1 (Development branch)

Restlet is a lightweight REST framework for Java. The project is composed of two parts, the Restlet API (alternative to Servlet API) and a reference implementation (Noelios Restlet Engine). It supports all REST concepts (resource, representation, data, connector, components, etc.) and is suitable for both client and server REST applications. The server connectors provided areHTTP(S), AJP (via Mortbay's Jetty or an adapter Servlet) and the client connectors are HTTP(S), File, JDBC, and SMTP(S).License: GNU General Public License (GPL)Changes:
Resource was refactored into a lower-level class(Handler) and higher-level methods were moreclearly defined. Many improvements were made tofacilitate the usage with Spring. Component'sinternal router was added to modularize largeapplications. RIAP scheme was added for optimizedinternal dispatching. Built-in HTTP client andserver connectors were added to NRE (BIO).Experimental Grizzly HTTP server (full NIO) wasadded. An experimental WADL extension was added toconfigure components. Representations can now beexposed via BIO Reader/Writer. A new JAXBextension was added for easy XML to POJO mappings.Image

More...
Login or Register to Ask a Question

Previous Thread | Next Thread
Login or Register to Ask a Question
REST::Application::Routes(3pm)				User Contributed Perl Documentation			    REST::Application::Routes(3pm)

NAME
REST::Application::Routes - An implementation of Ruby on Rails type routes. SYNOPSIS
package MyApp; use base 'REST::Application::Routes'; my $obj = REST::Application::Routes->new(); $obj->loadResource( '/data/workspaces/:ws/pages/:page', => &do_thing, # ... other routes here ... ); sub do_thing { my %vars = @_; print $vars{ws} . " " . $vars{page} . " "; } # Now, in some other place. Maybe a CGI file or an Apache handler, do: use MyApp; MyApp->new->run("/data/workspaces/cows/pages/good"); # prints "cows good" DESCRIPTION
Ruby on Rails has this concept of routes. Routes are URI path info templates which are tied to specific code (i.e. Controllers and Actions in Rails). That is routes consist of key value pairs, called the route map, where the key is the path info template and the value is a code reference. A template is of the form: "/foo/:variable/bar" where variables are always prefaced with a colon. When a given path is passed to "run()" the code reference which the template maps to will be passed a hash where the keys are the variable names (sans colon) and the values are what was specified in place of the variables. The route map is ordered, so the most specific matching template is used and so you should order your templates from least generic to most generic. See REST::Application for details. The only difference between this module and that one is that this one uses URI templates as keys in the "resourceHooks" rather than regexes. METHODS
These are methods which REST::Application::Routes has but its superclass does not. getTemplateVars() Returns a hash whose keys are the ":symbols" from the URI template and whose values are what where matched to be there. It is assumed that this method is called either from within or after "loadResource()" is called. Otherwise you're likely to get an empty hash back. getLastMatchTemplate() This is an alias for "getLastMatchPattern()", since this class is about templates rather than regexes. AUTHORS
Matthew O'Connor <matthew@canonical.org> LICENSE
This program is free software. It is subject to the same license as Perl itself. SEE ALSO
REST::Application, <http://manuals.rubyonrails.com/read/chapter/65> perl v5.10.0 2007-08-09 REST::Application::Routes(3pm)