rjack-jetty 6.1.22.1-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.rdoc +42 -0
- data/Manifest.static +18 -0
- data/Manifest.txt +24 -0
- data/README.rdoc +117 -0
- data/Rakefile +72 -0
- data/assembly.xml +19 -0
- data/bin/rjack-jetty-service +79 -0
- data/lib/rjack-jetty/base.rb +26 -0
- data/lib/rjack-jetty/jetty-6.1.22.jar +0 -0
- data/lib/rjack-jetty/jetty-rewrite-handler-6.1.22.jar +0 -0
- data/lib/rjack-jetty/jetty-util-6.1.22.jar +0 -0
- data/lib/rjack-jetty/rewrite.rb +2 -0
- data/lib/rjack-jetty/rjack-jetty-1.0.jar +0 -0
- data/lib/rjack-jetty/servlet-api-2.5-20081211.jar +0 -0
- data/lib/rjack-jetty/test-servlets.rb +36 -0
- data/lib/rjack-jetty.rb +272 -0
- data/pom.xml +67 -0
- data/src/main/java/rjack/testservlets/PerfTestServlet.java +153 -0
- data/src/main/java/rjack/testservlets/SnoopServlet.java +97 -0
- data/test/test.txt +1 -0
- data/test/test_jetty.rb +160 -0
- data/webapps/test/WEB-INF/web.xml +28 -0
- data/webapps/test/index.html +11 -0
- data/webapps/test.war +0 -0
- metadata +113 -0
data/test/test_jetty.rb
ADDED
@@ -0,0 +1,160 @@
|
|
1
|
+
#!/usr/bin/env jruby
|
2
|
+
#.hashdot.profile += jruby-shortlived
|
3
|
+
#--
|
4
|
+
# Copyright (C) 2008 David Kellum
|
5
|
+
#
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License"); you
|
7
|
+
# may not use this file except in compliance with the License. You
|
8
|
+
# may obtain a copy of the License at
|
9
|
+
#
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
#
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
15
|
+
# implied. See the License for the specific language governing
|
16
|
+
# permissions and limitations under the License.
|
17
|
+
#++
|
18
|
+
|
19
|
+
TEST_DIR = File.dirname(__FILE__)
|
20
|
+
|
21
|
+
$LOAD_PATH.unshift File.join( TEST_DIR, "..", "lib" )
|
22
|
+
|
23
|
+
require 'rubygems'
|
24
|
+
|
25
|
+
# Disable jetty logging if rjack-slf4j is available
|
26
|
+
begin
|
27
|
+
gem( 'rjack-slf4j', '~> 1.5' )
|
28
|
+
require 'rjack-slf4j'
|
29
|
+
require 'rjack-slf4j/nop'
|
30
|
+
rescue Gem::LoadError
|
31
|
+
end
|
32
|
+
|
33
|
+
require 'rjack-jetty'
|
34
|
+
require 'rjack-jetty/test-servlets'
|
35
|
+
require 'test/unit'
|
36
|
+
require 'net/http'
|
37
|
+
|
38
|
+
include RJack
|
39
|
+
|
40
|
+
class TestJetty < Test::Unit::TestCase
|
41
|
+
|
42
|
+
def default_factory
|
43
|
+
factory = Jetty::ServerFactory.new
|
44
|
+
factory.max_threads = 1
|
45
|
+
factory.stop_at_shutdown = false
|
46
|
+
factory
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_start_stop
|
50
|
+
10.times do
|
51
|
+
factory = default_factory
|
52
|
+
factory.static_contexts[ '/' ] = TEST_DIR
|
53
|
+
server = factory.create
|
54
|
+
server.start
|
55
|
+
assert( server.is_started )
|
56
|
+
assert( server.connectors[0].local_port > 0 )
|
57
|
+
server.stop
|
58
|
+
assert( server.is_stopped )
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def test_static_context
|
63
|
+
factory = default_factory
|
64
|
+
factory.static_contexts[ '/' ] = TEST_DIR
|
65
|
+
server = factory.create
|
66
|
+
server.start
|
67
|
+
port = server.connectors[0].local_port
|
68
|
+
test_text = Net::HTTP.get( 'localhost', '/test.txt', port )
|
69
|
+
assert_equal( File.read( File.join( TEST_DIR, 'test.txt' ) ), test_text )
|
70
|
+
server.stop
|
71
|
+
end
|
72
|
+
|
73
|
+
import 'org.mortbay.jetty.handler.AbstractHandler'
|
74
|
+
class TestHandler < AbstractHandler
|
75
|
+
TEST_TEXT = 'test handler text'
|
76
|
+
|
77
|
+
def handle( target, request, response, dispatch )
|
78
|
+
response.content_type = "text/plain"
|
79
|
+
response.writer.write( TEST_TEXT )
|
80
|
+
request.handled = true
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
def test_custom_handler
|
85
|
+
factory = default_factory
|
86
|
+
def factory.create_pre_handlers
|
87
|
+
super << TestHandler.new
|
88
|
+
end
|
89
|
+
server = factory.create
|
90
|
+
server.start
|
91
|
+
port = server.connectors[0].local_port
|
92
|
+
assert_equal( TestHandler::TEST_TEXT,
|
93
|
+
Net::HTTP.get( 'localhost', '/whatever', port ) )
|
94
|
+
server.stop
|
95
|
+
end
|
96
|
+
|
97
|
+
import 'javax.servlet.http.HttpServlet'
|
98
|
+
class TestServlet < HttpServlet
|
99
|
+
def initialize( text )
|
100
|
+
super()
|
101
|
+
@text = text
|
102
|
+
end
|
103
|
+
|
104
|
+
def doGet( request, response )
|
105
|
+
response.content_type = "text/plain"
|
106
|
+
response.writer.write( @text )
|
107
|
+
end
|
108
|
+
end
|
109
|
+
|
110
|
+
def test_servlet_handler
|
111
|
+
factory = default_factory
|
112
|
+
factory.set_context_servlets( '/some',
|
113
|
+
{ '/test' => TestServlet.new( 'resp-test' ),
|
114
|
+
'/other' => TestServlet.new( 'resp-other' ) } )
|
115
|
+
|
116
|
+
factory.set_context_servlets( '/',
|
117
|
+
{ '/one' => TestServlet.new( 'resp-one' ),
|
118
|
+
'/snoop' => Jetty::TestServlets::SnoopServlet.new } )
|
119
|
+
|
120
|
+
server = factory.create
|
121
|
+
server.start
|
122
|
+
port = server.connectors[0].local_port
|
123
|
+
|
124
|
+
assert_equal( 'resp-test',
|
125
|
+
Net::HTTP.get( 'localhost', '/some/test', port ) )
|
126
|
+
assert_equal( 'resp-other',
|
127
|
+
Net::HTTP.get( 'localhost', '/some/other', port ) )
|
128
|
+
assert_equal( 'resp-one',
|
129
|
+
Net::HTTP.get( 'localhost', '/one', port ) )
|
130
|
+
|
131
|
+
response = Net::HTTP.get_response( 'localhost', '/', port )
|
132
|
+
assert( response.is_a?( Net::HTTPNotFound ) )
|
133
|
+
|
134
|
+
response = Net::HTTP.get_response( 'localhost', '/snoop', port )
|
135
|
+
assert( response.is_a?( Net::HTTPSuccess ) )
|
136
|
+
|
137
|
+
server.stop
|
138
|
+
end
|
139
|
+
|
140
|
+
def test_webapp
|
141
|
+
factory = default_factory
|
142
|
+
index_html = File.read(
|
143
|
+
File.join( Jetty::TestServlets::WEBAPP_TEST_EXPANDED, 'index.html' ) )
|
144
|
+
|
145
|
+
factory.webapp_contexts[ '/test' ] = Jetty::TestServlets::WEBAPP_TEST_WAR
|
146
|
+
factory.webapp_contexts[ '/expanded' ] = Jetty::TestServlets::WEBAPP_TEST_EXPANDED
|
147
|
+
|
148
|
+
server = factory.create
|
149
|
+
server.start
|
150
|
+
port = server.connectors[0].local_port
|
151
|
+
|
152
|
+
assert_equal( index_html, Net::HTTP.get( 'localhost', '/test/', port ) )
|
153
|
+
assert_equal( index_html, Net::HTTP.get( 'localhost', '/expanded/', port ) )
|
154
|
+
|
155
|
+
response = Net::HTTP.get_response( 'localhost', '/test/snoop/info?i=33', port )
|
156
|
+
assert( response.is_a?( Net::HTTPSuccess ) )
|
157
|
+
|
158
|
+
server.stop
|
159
|
+
end
|
160
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
<!DOCTYPE web-app PUBLIC
|
2
|
+
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
|
3
|
+
"http://java.sun.com/dtd/web-app_2_3.dtd" >
|
4
|
+
|
5
|
+
<web-app>
|
6
|
+
<display-name>Gravitext Test Webapp</display-name>
|
7
|
+
|
8
|
+
<servlet>
|
9
|
+
<servlet-name>PerfTest</servlet-name>
|
10
|
+
<servlet-class>rjack.testservlets.PerfTestServlet</servlet-class>
|
11
|
+
</servlet>
|
12
|
+
|
13
|
+
<servlet>
|
14
|
+
<servlet-name>Snoop</servlet-name>
|
15
|
+
<servlet-class>rjack.testservlets.SnoopServlet</servlet-class>
|
16
|
+
</servlet>
|
17
|
+
|
18
|
+
<servlet-mapping>
|
19
|
+
<servlet-name>PerfTest</servlet-name>
|
20
|
+
<url-pattern>/perf</url-pattern>
|
21
|
+
</servlet-mapping>
|
22
|
+
|
23
|
+
<servlet-mapping>
|
24
|
+
<servlet-name>Snoop</servlet-name>
|
25
|
+
<url-pattern>/snoop/*</url-pattern>
|
26
|
+
</servlet-mapping>
|
27
|
+
|
28
|
+
</web-app>
|
data/webapps/test.war
ADDED
Binary file
|
metadata
ADDED
@@ -0,0 +1,113 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rjack-jetty
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 6.1.22.1
|
5
|
+
platform: java
|
6
|
+
authors:
|
7
|
+
- David Kellum
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2010-03-06 00:00:00 -08:00
|
13
|
+
default_executable:
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: rjack-logback
|
17
|
+
type: :development
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.9.17
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: rjack-tarpit
|
27
|
+
type: :development
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.2.0
|
34
|
+
version:
|
35
|
+
description: |-
|
36
|
+
A gem packaging of the {Jetty Web Server}[http://www.mortbay.org/jetty/]
|
37
|
+
for JRuby:
|
38
|
+
|
39
|
+
* Provides jetty, jetty-util, servlet-api, and jetty-rewrite-handler
|
40
|
+
jars.
|
41
|
+
* A Jetty::ServerFactory for simple programmatic server setup in ruby.
|
42
|
+
* A set of Jetty::TestServlets containing a SnoopServlet and
|
43
|
+
PerfTestServlet (implemented in Java).
|
44
|
+
* A jetty-service bin script for easy testing from the command line.
|
45
|
+
|
46
|
+
Note that JSP support is provided separately in the companion
|
47
|
+
jetty-jsp[http://rjack.rubyforge.org/jetty-jsp/] gem.
|
48
|
+
email:
|
49
|
+
- dek-oss@gravitext.com
|
50
|
+
executables:
|
51
|
+
- rjack-jetty-service
|
52
|
+
extensions: []
|
53
|
+
|
54
|
+
extra_rdoc_files:
|
55
|
+
- Manifest.txt
|
56
|
+
- README.rdoc
|
57
|
+
- History.rdoc
|
58
|
+
files:
|
59
|
+
- Manifest.static
|
60
|
+
- Manifest.txt
|
61
|
+
- README.rdoc
|
62
|
+
- History.rdoc
|
63
|
+
- Rakefile
|
64
|
+
- pom.xml
|
65
|
+
- assembly.xml
|
66
|
+
- lib/rjack-jetty/base.rb
|
67
|
+
- lib/rjack-jetty.rb
|
68
|
+
- lib/rjack-jetty/rewrite.rb
|
69
|
+
- lib/rjack-jetty/test-servlets.rb
|
70
|
+
- bin/rjack-jetty-service
|
71
|
+
- src/main/java/rjack/testservlets/PerfTestServlet.java
|
72
|
+
- src/main/java/rjack/testservlets/SnoopServlet.java
|
73
|
+
- test/test_jetty.rb
|
74
|
+
- test/test.txt
|
75
|
+
- webapps/test/WEB-INF/web.xml
|
76
|
+
- webapps/test/index.html
|
77
|
+
- webapps/test.war
|
78
|
+
- lib/rjack-jetty/jetty-6.1.22.jar
|
79
|
+
- lib/rjack-jetty/jetty-rewrite-handler-6.1.22.jar
|
80
|
+
- lib/rjack-jetty/jetty-util-6.1.22.jar
|
81
|
+
- lib/rjack-jetty/rjack-jetty-1.0.jar
|
82
|
+
- lib/rjack-jetty/servlet-api-2.5-20081211.jar
|
83
|
+
has_rdoc: true
|
84
|
+
homepage: http://rjack.rubyforge.org
|
85
|
+
licenses: []
|
86
|
+
|
87
|
+
post_install_message:
|
88
|
+
rdoc_options:
|
89
|
+
- --main
|
90
|
+
- README.rdoc
|
91
|
+
require_paths:
|
92
|
+
- lib
|
93
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
94
|
+
requirements:
|
95
|
+
- - ">="
|
96
|
+
- !ruby/object:Gem::Version
|
97
|
+
version: "0"
|
98
|
+
version:
|
99
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: "0"
|
104
|
+
version:
|
105
|
+
requirements: []
|
106
|
+
|
107
|
+
rubyforge_project: rjack
|
108
|
+
rubygems_version: 1.3.5
|
109
|
+
signing_key:
|
110
|
+
specification_version: 3
|
111
|
+
summary: "A gem packaging of the {Jetty Web Server}[http://www.mortbay.org/jetty/] for JRuby: * Provides jetty, jetty-util, servlet-api, and jetty-rewrite-handler jars"
|
112
|
+
test_files:
|
113
|
+
- test/test_jetty.rb
|