You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@deltaspike.apache.org by jo...@apache.org on 2013/03/19 03:17:35 UTC
git commit: Fixed DELTASPIKE-321 by adding new methods that handle
other types of arguments.
Updated Branches:
refs/heads/master 3faba9943 -> 7d9fd5dc8
Fixed DELTASPIKE-321 by adding new methods that handle other types of arguments.
Project: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/commit/7d9fd5dc
Tree: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/tree/7d9fd5dc
Diff: http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/diff/7d9fd5dc
Branch: refs/heads/master
Commit: 7d9fd5dc8c68f608525fcd12b1633ca0a0ab8e89
Parents: 3faba99
Author: John D. Ament <jo...@gmail.com>
Authored: Mon Mar 18 22:17:23 2013 -0400
Committer: John D. Ament <jo...@gmail.com>
Committed: Mon Mar 18 22:17:23 2013 -0400
----------------------------------------------------------------------
.../deltaspike/core/api/message/Message.java | 19 +++++
.../core/impl/message/DefaultMessage.java | 21 +++++
.../test/core/api/message/MessageContextTest.java | 63 ++++++++-------
3 files changed, 73 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/7d9fd5dc/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/message/Message.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/message/Message.java b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/message/Message.java
index 1dce181..5184cb1 100644
--- a/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/message/Message.java
+++ b/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/message/Message.java
@@ -19,6 +19,7 @@
package org.apache.deltaspike.core.api.message;
import java.io.Serializable;
+import java.util.Collection;
/**
* <p>Basic interface for all messages.</p>
@@ -40,6 +41,24 @@ public interface Message extends Serializable
* @return the current instance of the message builder to allow a fluent api
*/
Message argument(Serializable... arguments);
+
+ /**
+ * Argument array. Similar to argument except it is meant to handle an array being passed in via a chain.
+ *
+ * @param arguments
+ * the arguments
+ * @return the message
+ */
+ Message argumentArray(Serializable[] arguments);
+
+ /**
+ * Argument. Similar to the other argument methods, exception it handles collections.
+ *
+ * @param arguments
+ * the arguments
+ * @return the message
+ */
+ Message argument(Collection<Serializable> arguments);
/**
* @return the message key (or inline-text) of the current message
http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/7d9fd5dc/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/message/DefaultMessage.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/message/DefaultMessage.java b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/message/DefaultMessage.java
index 713f308..8b36898 100644
--- a/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/message/DefaultMessage.java
+++ b/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/message/DefaultMessage.java
@@ -27,6 +27,7 @@ import javax.enterprise.inject.Typed;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
@@ -215,4 +216,24 @@ public class DefaultMessage implements Message
result = 31 * result + (arguments != null ? arguments.hashCode() : 0);
return result;
}
+
+ @Override
+ public Message argumentArray(Serializable[] arguments)
+ {
+ if (arguments != null)
+ {
+ return argument(Arrays.asList(arguments));
+ }
+ return this;
+ }
+
+ @Override
+ public Message argument(Collection<Serializable> arguments)
+ {
+ if (arguments != null)
+ {
+ this.arguments.addAll(arguments);
+ }
+ return this;
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-deltaspike/blob/7d9fd5dc/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/api/message/MessageContextTest.java
----------------------------------------------------------------------
diff --git a/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/api/message/MessageContextTest.java b/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/api/message/MessageContextTest.java
index cd084c3..c4bde2f 100644
--- a/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/api/message/MessageContextTest.java
+++ b/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/api/message/MessageContextTest.java
@@ -18,6 +18,11 @@
*/
package org.apache.deltaspike.test.core.api.message;
+import java.io.Serializable;
+
+import javax.enterprise.inject.spi.Extension;
+import javax.inject.Inject;
+
import org.apache.deltaspike.core.api.message.LocaleResolver;
import org.apache.deltaspike.core.api.message.Message;
import org.apache.deltaspike.core.api.message.MessageContext;
@@ -31,16 +36,12 @@ import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.Assert;
import org.junit.Assume;
import org.junit.Test;
import org.junit.experimental.categories.Category;
import org.junit.runner.RunWith;
-import javax.enterprise.inject.spi.Extension;
-import javax.inject.Inject;
-
-import org.junit.Assert;
-
/**
* Tests for {@link MessageContext}
*/
@@ -48,8 +49,9 @@ import org.junit.Assert;
@Category(SeCategory.class)
public class MessageContextTest
{
+
@Inject
- private SimpleMessage simpleMessage;
+ private SimpleMessage simpleMessage;
@Inject
private MessageContext messageContext;
@@ -61,7 +63,7 @@ public class MessageContextTest
@Deployment
public static WebArchive deploy()
{
- JavaArchive testJar = ShrinkWrap
+ final JavaArchive testJar = ShrinkWrap
.create(JavaArchive.class, "messageContextTest.jar")
.addPackage(MessageContextTest.class.getPackage())
.addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
@@ -79,7 +81,7 @@ public class MessageContextTest
public void testSimpleMessage()
{
Assert.assertEquals("Welcome to DeltaSpike",
- simpleMessage.welcomeTo(messageContext, "DeltaSpike").toString());
+ this.simpleMessage.welcomeTo(this.messageContext, "DeltaSpike").toString());
}
/**
@@ -89,31 +91,31 @@ public class MessageContextTest
public void testSimpleMessageCategory()
{
Assert.assertEquals("Welcome to DeltaSpike",
- simpleMessage.welcomeTo(messageContext, "DeltaSpike").toString("notexisting"));
+ this.simpleMessage.welcomeTo(this.messageContext, "DeltaSpike").toString("notexisting"));
}
@Test
public void resolveTextTest()
{
- LocaleResolver localeResolver = new FixedEnglishLocalResolver();
+ final LocaleResolver localeResolver = new FixedEnglishLocalResolver();
- String messageText = messageContext
+ final String messageText = this.messageContext
.localeResolver(localeResolver)
.messageResolver(new TestMessageResolver())
.message().template("{hello}").argument("hans").toString();
Assert.assertEquals("test message to hans", messageText);
}
-
+
@Test
public void ignoreNullArguments()
{
- LocaleResolver localeResolver = new FixedEnglishLocalResolver();
+ final LocaleResolver localeResolver = new FixedEnglishLocalResolver();
- String messageText = messageContext
+ final String messageText = this.messageContext
.localeResolver(localeResolver)
.messageResolver(new TestMessageResolver())
- .message().template("{hello}").argument(null).toString();
+ .message().template("{hello}").argument((Serializable[])null).toString();
Assert.assertEquals("test message to %s", messageText);
}
@@ -121,8 +123,8 @@ public class MessageContextTest
@Test
public void resolveGermanMessageTextTest()
{
- LocaleResolver localeResolver = new FixedGermanLocaleResolver();
- String messageText = messageContext
+ final LocaleResolver localeResolver = new FixedGermanLocaleResolver();
+ final String messageText = this.messageContext
.localeResolver(localeResolver)
.messageResolver(new TestMessageResolver())
.message().template("{hello}").argument("hans").toString();
@@ -133,24 +135,25 @@ public class MessageContextTest
@Test
public void testArbitraryMessageContextRendering()
{
- LocaleResolver localeResolver = new FixedGermanLocaleResolver();
- Message message = messageContext
+ final LocaleResolver localeResolver = new FixedGermanLocaleResolver();
+ final Message message = this.messageContext
.localeResolver(localeResolver)
.messageResolver(new TestMessageResolver())
.message().template("{hello}").argument("hans");
Assert.assertEquals("Test Nachricht an hans", message.toString());
- MessageContext messageContext2 = messageContext.clone().localeResolver(new FixedEnglishLocalResolver());
+ final MessageContext messageContext2 = this.messageContext.clone().localeResolver(
+ new FixedEnglishLocalResolver());
Assert.assertEquals("test message to hans", message.toString(messageContext2));
}
@Test
public void createInvalidMessageTest()
{
- String messageText = messageContext.message().template("{xyz123}").toString();
+ String messageText = this.messageContext.message().template("{xyz123}").toString();
Assert.assertEquals("???xyz123???", messageText);
- messageText = messageContext
+ messageText = this.messageContext
.messageSource("nonexistingbundle.properties")
.message()
.template("{xyz123}")
@@ -161,7 +164,7 @@ public class MessageContextTest
@Test
public void createInvalidMessageWithArgumentsTest()
{
- String messageText = messageContext.message().template("{xyz123}").
+ final String messageText = this.messageContext.message().template("{xyz123}").
argument("123").argument("456").argument("789").toString();
Assert.assertEquals("???xyz123??? [123, 456, 789]", messageText);
@@ -170,9 +173,9 @@ public class MessageContextTest
@Test
public void testMessageEquals()
{
- Message m1 = messageContext.message();
- Message m2 = messageContext.message();
- Message m3 = messageContext.messageResolver(new TestMessageResolver()).message();
+ final Message m1 = this.messageContext.message();
+ final Message m2 = this.messageContext.message();
+ final Message m3 = this.messageContext.messageResolver(new TestMessageResolver()).message();
Assert.assertEquals(m1, m1);
Assert.assertEquals(m1, m2);
@@ -200,16 +203,16 @@ public class MessageContextTest
public void testSerialization()
{
Assume.assumeTrue(System.getProperty("org.apache.deltaspike.weld.pre_1.1.10") == null);
- Serializer<Message> messageSerializer = new Serializer<Message>();
+ final Serializer<Message> messageSerializer = new Serializer<Message>();
- LocaleResolver localeResolver = new FixedGermanLocaleResolver();
- Message message = messageContext
+ final LocaleResolver localeResolver = new FixedGermanLocaleResolver();
+ final Message message = this.messageContext
.localeResolver(localeResolver)
.messageResolver(new TestMessageResolver())
.message().template("{hello}").argument("hans");
Assert.assertEquals("Test Nachricht an hans", message.toString());
- Message messageClone = messageSerializer.roundTrip(message);
+ final Message messageClone = messageSerializer.roundTrip(message);
Assert.assertEquals(message, messageClone);
Assert.assertEquals("Test Nachricht an hans", messageClone.toString());