You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by vi...@apache.org on 2016/12/28 07:57:43 UTC

[5/5] incubator-rocketmq git commit: [ROCKETMQ-17] Develop a vendor-neutral open standard for distributed messaging: refactor message class and add new class KeyValue ASF JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-17

[ROCKETMQ-17] Develop a vendor-neutral open standard for distributed messaging: refactor message class and add new class KeyValue
ASF JIRA: https://issues.apache.org/jira/browse/ROCKETMQ-17


Project: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/commit/58acef9e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/tree/58acef9e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/diff/58acef9e

Branch: refs/heads/spec
Commit: 58acef9ef9bf6be62918d7293af7bc8c962c6bfb
Parents: 9f232be
Author: vintagewang <vi...@apache.org>
Authored: Wed Dec 28 15:57:21 2016 +0800
Committer: vintagewang <vi...@apache.org>
Committed: Wed Dec 28 15:57:21 2016 +0800

----------------------------------------------------------------------
 .../org/apache/openmessaging/BytesMessage.java  | 12 ++++++++
 .../java/org/apache/openmessaging/KeyValue.java | 32 ++++++++++++++++++++
 .../java/org/apache/openmessaging/Message.java  |  8 ++---
 .../openmessaging/MessagingEndPointManager.java |  4 +++
 .../java/org/apache/openmessaging/Producer.java |  2 +-
 .../openmessaging/samples/ProducerApp.java      |  8 +++--
 6 files changed, 56 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/BytesMessage.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/BytesMessage.java b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/BytesMessage.java
index 47e18d4..629cca2 100644
--- a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/BytesMessage.java
+++ b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/BytesMessage.java
@@ -18,6 +18,18 @@ package org.apache.openmessaging;
 
 
 public interface BytesMessage extends Message {
+    BytesMessage putHeader(final String key, final int value);
+
+    BytesMessage putHeader(final String key, final long value);
+
+    BytesMessage putHeader(final String key, final String value);
+
+    BytesMessage putProperties(final String key, final int value);
+
+    BytesMessage putProperties(final String key, final long value);
+
+    BytesMessage putProperties(final String key, final String value);
+
     byte[] getBody();
 
     void setBody(final byte[] body);

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/KeyValue.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/KeyValue.java b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/KeyValue.java
new file mode 100644
index 0000000..c3f44f5
--- /dev/null
+++ b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/KeyValue.java
@@ -0,0 +1,32 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openmessaging;
+
+
+public interface KeyValue {
+    KeyValue put(final String key, final int value);
+
+    KeyValue put(final String key, final long value);
+
+    KeyValue put(final String key, final String value);
+
+    int getInt(final String key);
+
+    long getLong(final String key);
+
+    String getString(final String key);
+}

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Message.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Message.java b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Message.java
index 9e8c6be..5563c46 100644
--- a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Message.java
+++ b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Message.java
@@ -18,11 +18,7 @@ package org.apache.openmessaging;
 
 
 public interface Message {
-    Message putHeader(final String name, final String value);
+    KeyValue headers();
 
-    Message putProperty(final String name, final String value);
-
-    String getHeader(final String name);
-
-    String getProperty(final String name);
+    KeyValue properties();
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/MessagingEndPointManager.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/MessagingEndPointManager.java b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/MessagingEndPointManager.java
index 39c202d..8196658 100644
--- a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/MessagingEndPointManager.java
+++ b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/MessagingEndPointManager.java
@@ -36,4 +36,8 @@ public class MessagingEndPointManager {
         }
         return MessagingEndPointFactory.createMessagingEndPoint(driverUrl, properties);
     }
+
+    public static KeyValue buildKeyValue() {
+        return null;
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Producer.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Producer.java b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Producer.java
index c7a3020..05eb15c 100644
--- a/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Producer.java
+++ b/spec/code/messaging-user-level-api/java/src/main/java/org/apache/openmessaging/Producer.java
@@ -22,5 +22,5 @@ public interface Producer extends MessageFactory {
 
     void shutdown();
 
-    void send(final Message message);
+    void send(final BytesMessage message);
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/58acef9e/spec/code/messaging-user-level-samples/java/src/main/java/org/apache/openmessaging/samples/ProducerApp.java
----------------------------------------------------------------------
diff --git a/spec/code/messaging-user-level-samples/java/src/main/java/org/apache/openmessaging/samples/ProducerApp.java b/spec/code/messaging-user-level-samples/java/src/main/java/org/apache/openmessaging/samples/ProducerApp.java
index f820f3f..051fc22 100644
--- a/spec/code/messaging-user-level-samples/java/src/main/java/org/apache/openmessaging/samples/ProducerApp.java
+++ b/spec/code/messaging-user-level-samples/java/src/main/java/org/apache/openmessaging/samples/ProducerApp.java
@@ -30,8 +30,10 @@ public class ProducerApp {
         final Producer producer = messagingEndPoint.createProducer();
 
         messagingEndPoint.start();
+        System.out.println("messagingEndPoint startup OK");
 
         producer.start();
+        System.out.println("producer startup OK");
 
         Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
             @Override
@@ -45,9 +47,9 @@ public class ProducerApp {
         System.out.println("send first message OK");
 
         producer.send(producer.createBytesMessage("HELLO_TOPIC", "HELLO_BODY".getBytes(Charset.forName("UTF-8")))
-                .putProperty("KEY1", "value1")//
-                .putProperty("KEY2", "value2")//
-                .putProperty("KEY3", "value3")//
+                .putProperties("KEY1", "value1")//
+                .putProperties("KEY2", "value2")//
+                .putProperties("KEY3", "value3")//
         );
         System.out.println("send second message OK");
     }