GUAC-919: Copy REST and Guice changes over from GUAC-546 branch.

This commit is contained in:
James Muehlner
2014-10-30 23:54:58 -07:00
committed by Michael Jumper
parent 48382b8285
commit 6bf2ff3e2f
77 changed files with 3930 additions and 3477 deletions

View File

@@ -20,286 +20,35 @@
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
-->
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<!-- Basic config -->
<welcome-file-list>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
<session-config>
<session-timeout>
30
</session-timeout>
<session-timeout>30</session-timeout>
</session-config>
<!-- Automatically detect and load WebSocket support -->
<listener>
<listener-class>org.glyptodon.guacamole.net.basic.websocket.WebSocketSupportLoader</listener-class>
</listener>
<!-- Init logging on startup -->
<listener>
<listener-class>org.glyptodon.guacamole.net.basic.log.LogbackInitializer</listener-class>
</listener>
<!-- Authenticate against service calls and pages -->
<!-- Guice -->
<filter>
<filter-name>AuthenticatingFilter</filter-name>
<filter-class>org.glyptodon.guacamole.net.basic.AuthenticatingFilter</filter-class>
<filter-name>guiceFilter</filter-name>
<filter-class>com.google.inject.servlet.GuiceFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>AuthenticatingFilter</filter-name>
<url-pattern>*.xhtml</url-pattern>
<url-pattern>/login</url-pattern>
<url-pattern>/clipboard</url-pattern>
<url-pattern>/connections/*</url-pattern>
<url-pattern>/connectiongroups/*</url-pattern>
<url-pattern>/users/*</url-pattern>
<url-pattern>/permissions/*</url-pattern>
<url-pattern>/protocols/*</url-pattern>
<filter-name>guiceFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Restrict requests to the WebSocket tunnel -->
<filter>
<filter-name>RestrictedFilter</filter-name>
<filter-class>org.glyptodon.guacamole.net.basic.RestrictedFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>RestrictedFilter</filter-name>
<url-pattern>/websocket-tunnel</url-pattern>
</filter-mapping>
<listener>
<listener-class>org.glyptodon.guacamole.net.basic.BasicServletContextListener</listener-class>
</listener>
<!-- Basic Login Servlet -->
<servlet>
<description>Login servlet.</description>
<servlet-name>Login</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.BasicLogin</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Login</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<!-- Basic Logout Servlet -->
<servlet>
<description>Logout servlet.</description>
<servlet-name>Logout</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.BasicLogout</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Logout</servlet-name>
<url-pattern>/logout</url-pattern>
</servlet-mapping>
<!-- Session Keep-Alive Servlet -->
<servlet>
<description>Session keep-alive servlet.</description>
<servlet-name>SessionKeepAlive</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.SessionKeepAlive</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SessionKeepAlive</servlet-name>
<url-pattern>/keep-alive</url-pattern>
</servlet-mapping>
<!-- Clipboard State Servlet -->
<servlet>
<description>Clipboard state servlet.</description>
<servlet-name>Clipboard</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.CaptureClipboard</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Clipboard</servlet-name>
<url-pattern>/clipboard</url-pattern>
</servlet-mapping>
<!-- Connection Creation Servlet -->
<servlet>
<description>Connection creation servlet.</description>
<servlet-name>ConnectionCreate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connections.Create</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionCreate</servlet-name>
<url-pattern>/connections/create</url-pattern>
</servlet-mapping>
<!-- Connection List Servlet -->
<servlet>
<description>Connection list servlet.</description>
<servlet-name>Connections</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connections.List</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Connections</servlet-name>
<url-pattern>/connections</url-pattern>
</servlet-mapping>
<!-- Connection Update Servlet -->
<servlet>
<description>Connection update servlet.</description>
<servlet-name>ConnectionUpdate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connections.Update</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionUpdate</servlet-name>
<url-pattern>/connections/update</url-pattern>
</servlet-mapping>
<!-- Connection Move Servlet -->
<servlet>
<description>Connection move servlet.</description>
<servlet-name>ConnectionMove</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connections.Move</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionMove</servlet-name>
<url-pattern>/connections/move</url-pattern>
</servlet-mapping>
<!-- Connection Deletion Servlet -->
<servlet>
<description>Connection deletion servlet.</description>
<servlet-name>ConnectionDelete</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connections.Delete</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionDelete</servlet-name>
<url-pattern>/connections/delete</url-pattern>
</servlet-mapping>
<!-- Connection Group Creation Servlet -->
<servlet>
<description>ConnectionGroup creation servlet.</description>
<servlet-name>ConnectionGroupCreate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connectiongroups.Create</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionGroupCreate</servlet-name>
<url-pattern>/connectiongroups/create</url-pattern>
</servlet-mapping>
<!-- Connection Group List Servlet -->
<servlet>
<description>ConnectionGroup list servlet.</description>
<servlet-name>ConnectionGroups</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connectiongroups.List</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionGroups</servlet-name>
<url-pattern>/connectiongroups</url-pattern>
</servlet-mapping>
<!-- Connection Group Update Servlet -->
<servlet>
<description>ConnectionGroup update servlet.</description>
<servlet-name>ConnectionGroupUpdate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connectiongroups.Update</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionGroupUpdate</servlet-name>
<url-pattern>/connectiongroups/update</url-pattern>
</servlet-mapping>
<!-- Connection Group Move Servlet -->
<servlet>
<description>ConnectionGroup move servlet.</description>
<servlet-name>ConnectionGroupMove</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connectiongroups.Move</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionGroupMove</servlet-name>
<url-pattern>/connectiongroups/move</url-pattern>
</servlet-mapping>
<!-- Connection Group Deletion Servlet -->
<servlet>
<description>ConnectionGroup deletion servlet.</description>
<servlet-name>ConnectionGroupDelete</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.connectiongroups.Delete</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ConnectionGroupDelete</servlet-name>
<url-pattern>/connectiongroups/delete</url-pattern>
</servlet-mapping>
<!-- User Creation Servlet -->
<servlet>
<description>User creation servlet.</description>
<servlet-name>UserCreate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.users.Create</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserCreate</servlet-name>
<url-pattern>/users/create</url-pattern>
</servlet-mapping>
<!-- User List Servlet -->
<servlet>
<description>User list servlet.</description>
<servlet-name>Users</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.users.List</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Users</servlet-name>
<url-pattern>/users</url-pattern>
</servlet-mapping>
<!-- User Update Servlet -->
<servlet>
<description>User update servlet.</description>
<servlet-name>UserUpdate</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.users.Update</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserUpdate</servlet-name>
<url-pattern>/users/update</url-pattern>
</servlet-mapping>
<!-- User Deletion Servlet -->
<servlet>
<description>User deletion servlet.</description>
<servlet-name>UserDelete</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.users.Delete</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>UserDelete</servlet-name>
<url-pattern>/users/delete</url-pattern>
</servlet-mapping>
<!-- Permission List Servlet -->
<servlet>
<description>Permission list servlet.</description>
<servlet-name>Permissions</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.permissions.List</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Permissions</servlet-name>
<url-pattern>/permissions</url-pattern>
</servlet-mapping>
<!-- Protocol List Servlet -->
<servlet>
<description>Protocol list servlet.</description>
<servlet-name>Protocols</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.crud.protocols.List</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Protocols</servlet-name>
<url-pattern>/protocols</url-pattern>
</servlet-mapping>
<!-- Guacamole Tunnel Servlet -->
<servlet>
<description>Tunnel servlet.</description>
<servlet-name>Tunnel</servlet-name>
<servlet-class>org.glyptodon.guacamole.net.basic.BasicGuacamoleTunnelServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Tunnel</servlet-name>
<url-pattern>/tunnel</url-pattern>
</servlet-mapping>
<!-- Audio file mimetype mappings -->
<mime-mapping>
<extension>mp3</extension>
<mime-type>audio/mpeg</mime-type>