This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
The following commit(s) were added to refs/heads/master by this push:
new b3adfafa95 TINKERPOP-2981 Removed deprecated code around
AbstractAuthenticationHandler CTR
b3adfafa95 is described below
commit b3adfafa955c5d0f542eeac0584375eeaa7d70af
Author: Stephen Mallette <[email protected]>
AuthorDate: Mon Dec 4 12:18:43 2023 -0500
TINKERPOP-2981 Removed deprecated code around AbstractAuthenticationHandler
CTR
---
CHANGELOG.asciidoc | 5 ++++-
docs/src/upgrade/release-4.x.x.asciidoc | 7 ++++++
.../gremlin/server/AbstractChannelizer.java | 26 ++++------------------
.../gremlin/server/channel/HttpChannelizer.java | 2 +-
.../server/channel/WebSocketChannelizer.java | 2 +-
.../handler/AbstractAuthenticationHandler.java | 8 -------
.../handler/HttpBasicAuthenticationHandler.java | 9 --------
.../SaslAndHttpBasicAuthenticationHandler.java | 10 +--------
.../server/handler/SaslAuthenticationHandler.java | 8 -------
9 files changed, 18 insertions(+), 59 deletions(-)
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 368353a533..c59d1039e6 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -24,7 +24,10 @@
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
=== TinkerPop 4.0.0 (NOT OFFICIALLY RELEASED YET)
* Added support for deserialization of `Set` for `gremlin-javascript`.
-* Added integer overflow checks.
+* Added integer overflow checks for `sum()`.
+* Gremlin Server only supports instantiation of
`authentication.authenticationHandler` with three-arg constructor.
+* Removed previously deprecated two-arg constructors for
`authentication.authenticationHandler` implementations.
+* Removed previously deprecated one-arg constructor for
`AbstractAuthenticationHandler`.
* Deprecated `withEmbedded()` and `withRemote()` options on
`AnonymousTraversalSource`.
* Added `with()` on `AnonymousTraversalSource` to cover both embedded and
remote creation options.
* Removed the deprecated `withGraph()` option from `AnonymousTraversalSource`.
diff --git a/docs/src/upgrade/release-4.x.x.asciidoc
b/docs/src/upgrade/release-4.x.x.asciidoc
index c3bd27412a..ddaf969d05 100644
--- a/docs/src/upgrade/release-4.x.x.asciidoc
+++ b/docs/src/upgrade/release-4.x.x.asciidoc
@@ -84,4 +84,11 @@ skipped with incorrect result.
==== Graph System Providers
+===== AbstractAuthenticatorHandler Constructor
+
+The deprecated one-arg constructor for `AbstractAuthenticationHandler` has
been removed along with two-arg constructors
+for the implementations. Gremlin Server formerly supported the two-arg
`Authenticator`, and `Settings` constructor for
+instantiating new custom instances. It now expects implementations of
`AbstractAuthenticationHandler` to use a
+three-arg constructor that takes `Authenticator`, `Authorizer`, and `Settings`.
+
==== Graph Driver Providers
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
index c086ffae24..e487464fe7 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/AbstractChannelizer.java
@@ -185,28 +185,10 @@ public abstract class AbstractChannelizer extends
ChannelInitializer<SocketChann
try {
final Class<?> clazz =
Class.forName(settings.authentication.authenticationHandler);
AbstractAuthenticationHandler aah;
- try {
- // the three arg constructor is the new form as a handler may
need the authorizer in some cases
- final Class<?>[] threeArgForm = new
Class[]{Authenticator.class, Authorizer.class, Settings.class};
- final Constructor<?> twoArgConstructor =
clazz.getDeclaredConstructor(threeArgForm);
- return (AbstractAuthenticationHandler)
twoArgConstructor.newInstance(authenticator, authorizer, settings);
- } catch (Exception threeArgEx) {
- try {
- // the two arg constructor is the "old form" that existed
prior to Authorizers. should probably
- // deprecate this form
- final Class<?>[] twoArgForm = new
Class[]{Authenticator.class, Settings.class};
- final Constructor<?> twoArgConstructor =
clazz.getDeclaredConstructor(twoArgForm);
-
- if (authorizer != null) {
- logger.warn("There is an authorizer configured but the
{} does not have a constructor of ({}, {}, {}) so it cannot be added",
- clazz.getName(),
Authenticator.class.getSimpleName(), Authorizer.class.getSimpleName(),
Settings.class.getSimpleName());
- }
-
- return (AbstractAuthenticationHandler)
twoArgConstructor.newInstance(authenticator, settings);
- } catch (Exception twoArgEx) {
- throw twoArgEx;
- }
- }
+ // the three arg constructor is the new form as a handler may need
the authorizer in some cases
+ final Class<?>[] threeArgForm = new Class[]{Authenticator.class,
Authorizer.class, Settings.class};
+ final Constructor<?> threeArgConstructor =
clazz.getDeclaredConstructor(threeArgForm);
+ return (AbstractAuthenticationHandler)
threeArgConstructor.newInstance(authenticator, authorizer, settings);
} catch (Exception ex) {
logger.warn(ex.getMessage());
throw new IllegalStateException(String.format("Could not
create/configure AuthenticationHandler %s",
settings.authentication.authenticationHandler), ex);
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/HttpChannelizer.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/HttpChannelizer.java
index 6d3bdbf2ff..0a9842ba9d 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/HttpChannelizer.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/HttpChannelizer.java
@@ -92,7 +92,7 @@ public class HttpChannelizer extends AbstractChannelizer {
final String authHandlerClass =
settings.authentication.authenticationHandler;
if (authHandlerClass == null) {
//Keep things backwards compatible
- return new HttpBasicAuthenticationHandler(authenticator, settings);
+ return new HttpBasicAuthenticationHandler(authenticator,
authorizer, settings);
} else {
return createAuthenticationHandler(settings);
}
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/WebSocketChannelizer.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/WebSocketChannelizer.java
index b8baed1b53..beec5cbd99 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/WebSocketChannelizer.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/channel/WebSocketChannelizer.java
@@ -143,7 +143,7 @@ public class WebSocketChannelizer extends
AbstractChannelizer {
final String authenticationHandler =
settings.authentication.authenticationHandler;
if (authenticationHandler == null) {
//Keep things backwards compatible
- return new SaslAuthenticationHandler(authenticator, settings);
+ return new SaslAuthenticationHandler(authenticator, authorizer,
settings);
} else {
return createAuthenticationHandler(settings);
}
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/AbstractAuthenticationHandler.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/AbstractAuthenticationHandler.java
index 074e4ab873..7fa37953ed 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/AbstractAuthenticationHandler.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/AbstractAuthenticationHandler.java
@@ -30,14 +30,6 @@ public abstract class AbstractAuthenticationHandler extends
ChannelInboundHandle
protected final Authenticator authenticator;
protected final Authorizer authorizer;
- /**
- * @deprecated As of release 3.5.0, replaced by {@link
#AbstractAuthenticationHandler(Authenticator, Authorizer)}.
- */
- @Deprecated
- public AbstractAuthenticationHandler(final Authenticator authenticator) {
- this(authenticator, null);
- }
-
public AbstractAuthenticationHandler(final Authenticator authenticator,
final Authorizer authorizer) {
this.authenticator = authenticator;
this.authorizer = authorizer;
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/HttpBasicAuthenticationHandler.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/HttpBasicAuthenticationHandler.java
index 41fd3a42ee..55d4ee17ff 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/HttpBasicAuthenticationHandler.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/HttpBasicAuthenticationHandler.java
@@ -49,20 +49,11 @@ import static
org.apache.tinkerpop.gremlin.groovy.jsr223.dsl.credential.Credenti
* @author Stephen Mallette (http://stephen.genoprime.com)
*/
public class HttpBasicAuthenticationHandler extends
AbstractAuthenticationHandler {
- private static final Logger logger =
LoggerFactory.getLogger(HttpBasicAuthenticationHandler.class);
private static final Logger auditLogger =
LoggerFactory.getLogger(GremlinServer.AUDIT_LOGGER_NAME);
private final Settings settings;
private final Base64.Decoder decoder = Base64.getUrlDecoder();
- /**
- * @deprecated As of release 3.5.0, replaced by {@link
#HttpBasicAuthenticationHandler(Authenticator, Authorizer, Settings)}.
- */
- @Deprecated
- public HttpBasicAuthenticationHandler(final Authenticator authenticator,
final Settings settings) {
- this(authenticator, null, settings);
- }
-
public HttpBasicAuthenticationHandler(final Authenticator authenticator,
final Authorizer authorizer, final Settings settings) {
super(authenticator, authorizer);
this.settings = settings;
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAndHttpBasicAuthenticationHandler.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAndHttpBasicAuthenticationHandler.java
index 31dabd0046..d529a02461 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAndHttpBasicAuthenticationHandler.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAndHttpBasicAuthenticationHandler.java
@@ -39,14 +39,6 @@ public class SaslAndHttpBasicAuthenticationHandler extends
SaslAuthenticationHan
private final String HTTP_AUTH = "http-authentication";
- /**
- * @deprecated As of release 3.5.0, replaced by {@link
#SaslAndHttpBasicAuthenticationHandler(Authenticator, Authorizer, Settings)}.
- */
- @Deprecated
- public SaslAndHttpBasicAuthenticationHandler(final Authenticator
authenticator, final Settings settings) {
- this(authenticator, null, settings);
- }
-
public SaslAndHttpBasicAuthenticationHandler(final Authenticator
authenticator, final Authorizer authorizer, final Settings settings) {
super(authenticator, authorizer, settings);
}
@@ -58,7 +50,7 @@ public class SaslAndHttpBasicAuthenticationHandler extends
SaslAuthenticationHan
if (null != pipeline.get(HTTP_AUTH)) {
pipeline.remove(HTTP_AUTH);
}
- pipeline.addAfter(PIPELINE_AUTHENTICATOR, HTTP_AUTH, new
HttpBasicAuthenticationHandler(authenticator, this.settings));
+ pipeline.addAfter(PIPELINE_AUTHENTICATOR, HTTP_AUTH, new
HttpBasicAuthenticationHandler(authenticator, authorizer, this.settings));
if (authorizer != null) {
final ChannelInboundHandlerAdapter authorizationHandler = new
HttpBasicAuthorizationHandler(authorizer);
diff --git
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAuthenticationHandler.java
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAuthenticationHandler.java
index 07faaa6f51..b9870ead46 100644
---
a/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAuthenticationHandler.java
+++
b/gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/handler/SaslAuthenticationHandler.java
@@ -60,14 +60,6 @@ public class SaslAuthenticationHandler extends
AbstractAuthenticationHandler {
protected final Settings settings;
- /**
- * @deprecated As of release 3.5.0, replaced by {@link
#SaslAuthenticationHandler(Authenticator, Authorizer, Settings)}.
- */
- @Deprecated
- public SaslAuthenticationHandler(final Authenticator authenticator, final
Settings settings) {
- this(authenticator, null, settings);
- }
-
public SaslAuthenticationHandler(final Authenticator authenticator, final
Authorizer authorizer, final Settings settings) {
super(authenticator, authorizer);
this.settings = settings;