Skip to content
This repository was archived by the owner on Jul 31, 2022. It is now read-only.

Commit 5c8cb3c

Browse files
committed
Implement #47
1 parent 3978e8e commit 5c8cb3c

File tree

3 files changed

+36
-38
lines changed

3 files changed

+36
-38
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.kttdevelopment</groupId>
88
<artifactId>simplehttpserver</artifactId>
9-
<version>03.04.02</version>
9+
<version>03.04.03</version>
1010
<packaging>jar</packaging>
1111

1212
<url>https://github.com/Ktt-Development/simplehttpserver</url>

src/main/java/com/kttdevelopment/simplehttpserver/SimpleHttpServerImpl.java

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*
1414
* @see SimpleHttpServer
1515
* @since 02.00.00
16-
* @version 03.04.00
16+
* @version 03.04.03
1717
* @author Ktt Development
1818
*/
1919
@SuppressWarnings("SpellCheckingInspection")
@@ -130,38 +130,37 @@ public final HttpSession getHttpSession(final SimpleHttpExchange exchange){
130130

131131
@Override
132132
public synchronized final HttpContext createContext(final String path){
133-
return createContext(path,(HttpExchange exchange) -> {});
133+
return createContext(path,HttpExchange::close,null);
134134
}
135135

136136
@Override
137137
public synchronized final HttpContext createContext(final String path, final HttpHandler handler){
138+
return createContext(path,handler,null);
139+
}
140+
141+
//
142+
143+
@Override
144+
public synchronized final HttpContext createContext(final String path, final Authenticator authenticator){
145+
return createContext(path,HttpExchange::close,authenticator);
146+
}
147+
148+
@Override
149+
public synchronized final HttpContext createContext(final String path, final HttpHandler handler, final Authenticator authenticator){
138150
if(!getContext(path).equals("/") && handler instanceof RootHandler)
139151
throw new IllegalArgumentException("RootHandler can only be used at the root '/' context");
140152

141153
final HttpHandler wrapper = exchange -> {
142154
handle(exchange);
143155
handler.handle(exchange);
144156
};
145-
final HttpContext context = server.createContext(getContext(path),wrapper);
146157

158+
final HttpContext context = server.createContext(getContext(path),wrapper);
147159
contexts.put(context,handler);
148160

149-
return context;
150-
}
151-
152-
//
161+
if(authenticator != null)
162+
context.setAuthenticator(authenticator);
153163

154-
@Override
155-
public synchronized final HttpContext createContext(final String path, final Authenticator authenticator){
156-
final HttpContext context = createContext(path);
157-
context.setAuthenticator(authenticator);
158-
return context;
159-
}
160-
161-
@Override
162-
public synchronized final HttpContext createContext(final String path, final HttpHandler handler, final Authenticator authenticator){
163-
final HttpContext context = createContext(path,handler);
164-
context.setAuthenticator(authenticator);
165164
return context;
166165
}
167166

src/main/java/com/kttdevelopment/simplehttpserver/SimpleHttpsServerImpl.java

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
*
1414
* @see SimpleHttpsServer
1515
* @since 03.04.00
16-
* @version 03.04.02
16+
* @version 03.04.03
1717
* @author Ktt Development
1818
*/
1919
final class SimpleHttpsServerImpl extends SimpleHttpsServer {
@@ -143,40 +143,39 @@ public final HttpSession getHttpSession(final SimpleHttpExchange exchange){
143143

144144
//
145145

146-
@Override
146+
@Override
147147
public synchronized final HttpContext createContext(final String path){
148-
return createContext(path,(HttpExchange exchange) -> {});
148+
return createContext(path,HttpExchange::close,null);
149149
}
150150

151151
@Override
152152
public synchronized final HttpContext createContext(final String path, final HttpHandler handler){
153+
return createContext(path,handler,null);
154+
}
155+
156+
//
157+
158+
@Override
159+
public synchronized final HttpContext createContext(final String path, final Authenticator authenticator){
160+
return createContext(path,HttpExchange::close,authenticator);
161+
}
162+
163+
@Override
164+
public synchronized final HttpContext createContext(final String path, final HttpHandler handler, final Authenticator authenticator){
153165
if(!getContext(path).equals("/") && handler instanceof RootHandler)
154166
throw new IllegalArgumentException("RootHandler can only be used at the root '/' context");
155167

156168
final HttpHandler wrapper = exchange -> {
157169
handle(exchange);
158170
handler.handle(exchange);
159171
};
160-
final HttpContext context = server.createContext(getContext(path),wrapper);
161172

173+
final HttpContext context = server.createContext(getContext(path),wrapper);
162174
contexts.put(context,handler);
163175

164-
return context;
165-
}
166-
167-
//
168-
169-
@Override
170-
public synchronized final HttpContext createContext(final String path, final Authenticator authenticator){
171-
final HttpContext context = createContext(path);
172-
context.setAuthenticator(authenticator);
173-
return context;
174-
}
176+
if(authenticator != null)
177+
context.setAuthenticator(authenticator);
175178

176-
@Override
177-
public synchronized final HttpContext createContext(final String path, final HttpHandler handler, final Authenticator authenticator){
178-
final HttpContext context = createContext(path,handler);
179-
context.setAuthenticator(authenticator);
180179
return context;
181180
}
182181

0 commit comments

Comments
 (0)