You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by ra...@apache.org on 2019/01/17 13:10:24 UTC
[tomee] 10/17: TOMEE-2365 - Added API annotations literals.
This is an automated email from the ASF dual-hosted git repository.
radcortez pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomee.git
commit 8c2ce3a491706307f836c1fdc0977f5d3c602c4b
Author: Roberto Cortez <ra...@yahoo.com>
AuthorDate: Thu Jan 17 12:27:50 2019 +0000
TOMEE-2365 - Added API annotations literals.
---
.../mechanism/http/AutoApplySession.java | 8 +++
.../mechanism/http/LoginToContinue.java | 80 ++++++++++++++++++++++
.../authentication/mechanism/http/RememberMe.java | 1 +
3 files changed, 89 insertions(+)
diff --git a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/AutoApplySession.java b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/AutoApplySession.java
index 6af744b..534e78f 100644
--- a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/AutoApplySession.java
+++ b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/AutoApplySession.java
@@ -16,6 +16,7 @@
*/
package javax.security.enterprise.authentication.mechanism.http;
+import javax.enterprise.util.AnnotationLiteral;
import javax.interceptor.InterceptorBinding;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
@@ -29,4 +30,11 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME;
@Retention(RUNTIME)
@Target(TYPE)
public @interface AutoApplySession {
+ @SuppressWarnings("all")
+ public final static class Literal extends AnnotationLiteral<AutoApplySession> implements AutoApplySession {
+ private static final long serialVersionUID = 1L;
+
+ public static final Literal INSTANCE = new Literal();
+
+ }
}
diff --git a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/LoginToContinue.java b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/LoginToContinue.java
index e38f0d1..37faac9 100644
--- a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/LoginToContinue.java
+++ b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/LoginToContinue.java
@@ -16,6 +16,7 @@
*/
package javax.security.enterprise.authentication.mechanism.http;
+import javax.enterprise.util.AnnotationLiteral;
import javax.enterprise.util.Nonbinding;
import javax.interceptor.InterceptorBinding;
import java.lang.annotation.Inherited;
@@ -41,4 +42,83 @@ public @interface LoginToContinue {
@Nonbinding
String errorPage() default "/login-error";
+
+ @SuppressWarnings("all") final class Literal extends AnnotationLiteral<LoginToContinue> implements LoginToContinue {
+ private static final long serialVersionUID = 1L;
+
+ private final String loginPage;
+ private final boolean useForwardToLogin;
+ private final String useForwardToLoginExpression;
+ private final String errorPage;
+
+ public static LiteralBuilder builder() {
+ return new LiteralBuilder();
+ }
+
+ public static class LiteralBuilder {
+ private String loginPage = "/login";
+ private boolean useForwardToLogin = true;
+ private String useForwardToLoginExpression;
+ private String errorPage = "/login-error";
+
+ public LiteralBuilder loginPage(String loginPage) {
+ this.loginPage = loginPage;
+ return this;
+ }
+
+ public LiteralBuilder useForwardToLogin(boolean useForwardToLogin) {
+ this.useForwardToLogin = useForwardToLogin;
+ return this;
+ }
+
+ public LiteralBuilder useForwardToLoginExpression(String useForwardToLoginExpression) {
+ this.useForwardToLoginExpression = useForwardToLoginExpression;
+ return this;
+ }
+
+ public LiteralBuilder errorPage(String errorPage) {
+ this.errorPage = errorPage;
+ return this;
+ }
+
+ public Literal build() {
+ return new Literal(
+ loginPage,
+ useForwardToLogin,
+ useForwardToLoginExpression,
+ errorPage);
+ }
+ }
+
+ public Literal(String loginPage,
+ boolean useForwardToLogin,
+ String useForwardToLoginExpression,
+ String errorPage) {
+ this.loginPage = loginPage;
+ this.useForwardToLogin = useForwardToLogin;
+ this.useForwardToLoginExpression = useForwardToLoginExpression;
+ this.errorPage = errorPage;
+ }
+
+ @Override
+ public String loginPage() {
+ return loginPage;
+ }
+
+ @Override
+ public boolean useForwardToLogin() {
+ return useForwardToLogin;
+ }
+
+ @Override
+ public String useForwardToLoginExpression() {
+ return useForwardToLoginExpression;
+ }
+
+ @Override
+ public String errorPage() {
+ return errorPage;
+ }
+
+ }
}
diff --git a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/RememberMe.java b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/RememberMe.java
index e8b7e47..065e54f 100644
--- a/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/RememberMe.java
+++ b/tomee/tomee-security/src/main/java/javax/security/enterprise/authentication/mechanism/http/RememberMe.java
@@ -58,6 +58,7 @@ public @interface RememberMe {
@Nonbinding
String isRememberMeExpression() default "";
+ @SuppressWarnings("all")
final class Literal extends AnnotationLiteral<RememberMe> implements RememberMe {
private static final long serialVersionUID = 1L;