You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by ta...@apache.org on 2024/08/05 08:02:22 UTC
(myfaces) branch main updated: Faces Spec #1934 - Migrate FacesMessage.Severity to ENUM
This is an automated email from the ASF dual-hosted git repository.
tandraschko pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/myfaces.git
The following commit(s) were added to refs/heads/main by this push:
new 998b97f40 Faces Spec #1934 - Migrate FacesMessage.Severity to ENUM
998b97f40 is described below
commit 998b97f409d3022629b79a3f8efdd8d1f0bc0e57
Author: tandraschko <ta...@apache.org>
AuthorDate: Mon Aug 5 10:02:14 2024 +0200
Faces Spec #1934 - Migrate FacesMessage.Severity to ENUM
---
.../jakarta/faces/application/FacesMessage.java | 120 ++++++++++++++-------
.../faces/application/FacesMessageTest.java | 40 +++----
2 files changed, 103 insertions(+), 57 deletions(-)
diff --git a/api/src/main/java/jakarta/faces/application/FacesMessage.java b/api/src/main/java/jakarta/faces/application/FacesMessage.java
index 54501cc8e..3d619979e 100755
--- a/api/src/main/java/jakarta/faces/application/FacesMessage.java
+++ b/api/src/main/java/jakarta/faces/application/FacesMessage.java
@@ -59,7 +59,7 @@ import org.apache.myfaces.core.api.shared.lang.Assert;
*/
public class FacesMessage implements Serializable
{
- private static final long serialVersionUID = 4851488727794169661L;
+ private static final long serialVersionUID = 4851488727794169611L;
/**
* <code>ResourceBundle</code> identifier for messages whose message identifiers are defined in the JavaServer Faces
@@ -70,28 +70,26 @@ public class FacesMessage implements Serializable
/**
* Message severity level indicating an informational message rather than an error.
*/
- public static final FacesMessage.Severity SEVERITY_INFO = new Severity("INFO", 0);
-
- /**
- * Message severity level indicating an success message rather than an error.
- * @since 5.0
- */
- public static final FacesMessage.Severity SEVERITY_SUCCESS = new Severity("SUCCESS", 1);
+ @Deprecated(since = "5.0", forRemoval = true)
+ public static final FacesMessage.Severity SEVERITY_INFO = Severity.INFO;
/**
* Message severity level indicating that an error might have occurred.
*/
- public static final FacesMessage.Severity SEVERITY_WARN = new Severity("WARN", 2);
+ @Deprecated(since = "5.0", forRemoval = true)
+ public static final FacesMessage.Severity SEVERITY_WARN = Severity.WARN;
/**
* Message severity level indicating that an error has occurred.
*/
- public static final FacesMessage.Severity SEVERITY_ERROR = new Severity("ERROR", 3);
+ @Deprecated(since = "5.0", forRemoval = true)
+ public static final FacesMessage.Severity SEVERITY_ERROR = Severity.ERROR;
/**
* Message severity level indicating that a serious error has occurred.
*/
- public static final FacesMessage.Severity SEVERITY_FATAL = new Severity("FATAL", 4);
+ @Deprecated(since = "5.0", forRemoval = true)
+ public static final FacesMessage.Severity SEVERITY_FATAL = Severity.FATAL;
/**
* Immutable <code>Lis</code> of valid {@link FacesMessage.Severity}instances, in ascending order of their ordinal
@@ -107,11 +105,11 @@ public class FacesMessage implements Serializable
static
{
Map<String, FacesMessage.Severity> map = new HashMap<>(7);
- map.put(SEVERITY_INFO.toString(), SEVERITY_INFO);
- map.put(SEVERITY_SUCCESS.toString(), SEVERITY_SUCCESS);
- map.put(SEVERITY_WARN.toString(), SEVERITY_WARN);
- map.put(SEVERITY_ERROR.toString(), SEVERITY_ERROR);
- map.put(SEVERITY_FATAL.toString(), SEVERITY_FATAL);
+ map.put(Severity.INFO.toString(), Severity.INFO);
+ map.put(Severity.SUCCESS.toString(), Severity.SUCCESS);
+ map.put(Severity.WARN.toString(), Severity.WARN);
+ map.put(Severity.ERROR.toString(), Severity.ERROR);
+ map.put(Severity.FATAL.toString(), Severity.FATAL);
VALUES_MAP = Collections.unmodifiableMap(map);
List<FacesMessage.Severity> severityList = new ArrayList<>(map.values());
@@ -291,7 +289,7 @@ public class FacesMessage implements Serializable
private void writeObject(ObjectOutputStream out) throws IOException
{
out.defaultWriteObject(); // write summary, detail, rendered
- out.writeInt(this.severity.ordinal); // FacesMessage.Severity is not Serializable, write ordinal only
+ out.writeInt(this.severity.ordinal()); // FacesMessage.Severity is not Serializable, write ordinal only
}
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
@@ -300,35 +298,83 @@ public class FacesMessage implements Serializable
// FacesMessage.Severity is not Serializable, read ordinal and get related FacesMessage.Severity
int severityOrdinal = in.readInt();
- this.severity = (Severity) VALUES.get(severityOrdinal);
+ this.severity = VALUES.get(severityOrdinal);
}
- public static class Severity implements Comparable
+ /**
+ * <p>
+ * <span class="changed_modified_5_0">Enum</span> used to represent message severity levels.
+ * </p>
+ */
+ public enum Severity
{
- private String name;
- private int ordinal;
-
- private Severity(String name, int ordinal)
- {
- this.name = name;
- this.ordinal = ordinal;
- }
-
- public int getOrdinal()
- {
- return this.ordinal;
- }
-
+ /**
+ * <p>
+ * Message severity level indicating an informational message rather than an error.
+ * </p>
+ * <p>
+ * Historically, this was a constant class known as FacesMessage.SEVERITY_INFO.
+ * </p>
+ * @since 5.0
+ */
+ INFO,
+
+ /**
+ * <p>
+ * Message severity level indicating an success message rather than an error.
+ * </p>
+ * @since 5.0
+ */
+ SUCCESS,
+
+ /**
+ * <p>
+ * Message severity level indicating that an error might have occurred.
+ * </p>
+ * <p>
+ * Historically, this was a constant class known as FacesMessage.SEVERITY_WARN.
+ * </p>
+ * @since 5.0
+ */
+ WARN,
+
+ /**
+ * <p>
+ * Message severity level indicating that an error has occurred.
+ * </p>
+ * <p>
+ * Historically, this was a constant class known as FacesMessage.SEVERITY_ERROR.
+ * </p>
+ * @since 5.0
+ */
+ ERROR,
+
+ /**
+ * <p>
+ * Message severity level indicating that a serious error has occurred.
+ * </p>
+ * <p>
+ * Historically, this was a constant class known as FacesMessage.SEVERITY_FATAL.
+ * </p>
+ * @since 5.0
+ */
+ FATAL;
+
+ /**
+ * <p>
+ * Return a String representation of this {@link FacesMessage.Severity} instance.
+ * </p>
+ */
@Override
public String toString()
{
- return this.name;
+ return name() + ' ' + ordinal();
}
- @Override
- public int compareTo(Object o)
+ // backward compatibility
+ public int getOrdinal()
{
- return getOrdinal() - ((Severity)o).getOrdinal();
+ return ordinal();
}
}
diff --git a/impl/src/test/java/jakarta/faces/application/FacesMessageTest.java b/impl/src/test/java/jakarta/faces/application/FacesMessageTest.java
index db68ad147..931e5aeaa 100644
--- a/impl/src/test/java/jakarta/faces/application/FacesMessageTest.java
+++ b/impl/src/test/java/jakarta/faces/application/FacesMessageTest.java
@@ -38,7 +38,7 @@ public class FacesMessageTest
public void testFacesMessage()
{
FacesMessage msg = new FacesMessage();
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
+ Assertions.assertEquals(msg.getSeverity(), Severity.INFO);
Assertions.assertNull(msg.getSummary());
Assertions.assertNull(msg.getDetail());
}
@@ -51,7 +51,7 @@ public class FacesMessageTest
{
String summary = "summary";
FacesMessage msg = new FacesMessage(summary);
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
+ Assertions.assertEquals(msg.getSeverity(), Severity.INFO);
Assertions.assertEquals(msg.getSummary(), summary);
Assertions.assertEquals(msg.getDetail(), summary);
}
@@ -65,7 +65,7 @@ public class FacesMessageTest
String summary = "summary";
String detail = "detail";
FacesMessage msg = new FacesMessage(summary, detail);
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
+ Assertions.assertEquals(msg.getSeverity(), Severity.INFO);
Assertions.assertEquals(msg.getSummary(), summary);
Assertions.assertEquals(msg.getDetail(), detail);
}
@@ -78,8 +78,8 @@ public class FacesMessageTest
{
String summary = "summary";
String detail = "detail";
- FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_ERROR, summary, detail);
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_ERROR);
+ FacesMessage msg = new FacesMessage(Severity.ERROR, summary, detail);
+ Assertions.assertEquals(msg.getSeverity(), Severity.ERROR);
Assertions.assertEquals(msg.getSummary(), summary);
Assertions.assertEquals(msg.getDetail(), detail);
}
@@ -109,9 +109,9 @@ public class FacesMessageTest
public void testSetSeverity()
{
FacesMessage msg = new FacesMessage();
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
- msg.setSeverity(FacesMessage.SEVERITY_FATAL);
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_FATAL);
+ Assertions.assertEquals(msg.getSeverity(), Severity.INFO);
+ msg.setSeverity(Severity.FATAL);
+ Assertions.assertEquals(msg.getSeverity(), Severity.FATAL);
}
/*
@@ -161,23 +161,23 @@ public class FacesMessageTest
public void testSeverityOrdering()
{
// make sure they are ordered correctly from least to worst
- Assertions.assertTrue(0 > FacesMessage.SEVERITY_INFO.compareTo(FacesMessage.SEVERITY_WARN));
- Assertions.assertTrue(0 > FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_ERROR));
- Assertions.assertTrue(0 > FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_FATAL));
+ Assertions.assertTrue(0 > Severity.INFO.compareTo(Severity.WARN));
+ Assertions.assertTrue(0 > Severity.WARN.compareTo(Severity.ERROR));
+ Assertions.assertTrue(0 > Severity.ERROR.compareTo(Severity.FATAL));
// make sure they are ordered correctly from worts to least
- Assertions.assertTrue(0 < FacesMessage.SEVERITY_FATAL.compareTo(FacesMessage.SEVERITY_ERROR));
- Assertions.assertTrue(0 < FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_WARN));
- Assertions.assertTrue(0 < FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_INFO));
+ Assertions.assertTrue(0 < Severity.FATAL.compareTo(Severity.ERROR));
+ Assertions.assertTrue(0 < Severity.ERROR.compareTo(Severity.WARN));
+ Assertions.assertTrue(0 < Severity.WARN.compareTo(Severity.INFO));
}
@Test
public void testSeverityEquality()
{
// make sure they all respond as equals when they should
- Assertions.assertEquals(0, FacesMessage.SEVERITY_INFO.compareTo(FacesMessage.SEVERITY_INFO));
- Assertions.assertEquals(0, FacesMessage.SEVERITY_WARN.compareTo(FacesMessage.SEVERITY_WARN));
- Assertions.assertEquals(0, FacesMessage.SEVERITY_ERROR.compareTo(FacesMessage.SEVERITY_ERROR));
- Assertions.assertEquals(0, FacesMessage.SEVERITY_FATAL.compareTo(FacesMessage.SEVERITY_FATAL));
+ Assertions.assertEquals(0, Severity.INFO.compareTo(Severity.INFO));
+ Assertions.assertEquals(0, Severity.WARN.compareTo(Severity.WARN));
+ Assertions.assertEquals(0, Severity.ERROR.compareTo(Severity.ERROR));
+ Assertions.assertEquals(0, Severity.FATAL.compareTo(Severity.FATAL));
}
@Test
@@ -187,7 +187,7 @@ public class FacesMessageTest
for (int i = 0, sz = FacesMessage.VALUES.size(); i < sz; i++)
{
FacesMessage.Severity severity = (Severity) FacesMessage.VALUES.get(i);
- Assertions.assertEquals(i, severity.getOrdinal());
+ Assertions.assertEquals(i, severity.ordinal());
}
}
@@ -211,7 +211,7 @@ public class FacesMessageTest
FacesMessage msg = new FacesMessage(summary, detail);
// check if properties are set correctly
- Assertions.assertEquals(msg.getSeverity(), FacesMessage.SEVERITY_INFO);
+ Assertions.assertEquals(msg.getSeverity(), Severity.INFO);
Assertions.assertEquals(msg.getSummary(), summary);
Assertions.assertEquals(msg.getDetail(), detail);
Assertions.assertEquals(msg.isRendered(), false);