You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2018/05/08 19:21:18 UTC

[incubator-pulsar] branch master updated: Pulsar IO rename (#1747)

This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 17f7415  Pulsar IO rename (#1747)
17f7415 is described below

commit 17f74150f43fc3766e78e2a566c6a4b8d2150d5b
Author: Luc Perkins <lu...@gmail.com>
AuthorDate: Tue May 8 12:21:15 2018 -0700

    Pulsar IO rename (#1747)
    
    * begin renaming process
    
    * more class and directory renames
    
    * move Record classes into pulsar-io
    
    * apply rename to Maven configs
    
    * rename java imports
    
    * update versions in maven configs
    
    * add missing imports
    
    * remove Message class from pulsar-io
    
    * add missing import
    
    * add Reflections util import
    
    * add Utils import
    
    * add missing Record import
    
    * supply missing Record imports
---
 pom.xml                                            |  6 ++---
 pulsar-client-admin-shaded-for-functions/pom.xml   |  4 +--
 pulsar-client-admin-shaded/pom.xml                 |  4 +--
 pulsar-client-shaded/pom.xml                       |  4 +--
 .../java/org/apache/pulsar/admin/cli/CmdSinks.java |  9 ++++---
 .../org/apache/pulsar/admin/cli/CmdSources.java    |  9 ++++---
 pulsar-client/pom.xml                              |  2 +-
 .../pulsar/client/impl/MessageRecordImpl.java      |  2 +-
 pulsar-functions/instance/pom.xml                  |  4 +--
 .../pulsar/functions/instance/JavaInstance.java    |  2 +-
 .../functions/instance/JavaInstanceRunnable.java   |  6 ++---
 .../pulsar/functions/sink/DefaultRuntimeSink.java  |  2 +-
 .../apache/pulsar/functions/sink/PulsarSink.java   |  2 +-
 .../pulsar/functions/sink/PulsarSinkConfig.java    |  2 --
 .../apache/pulsar/functions/sink/RuntimeSink.java  |  4 +--
 .../pulsar/functions/source/PulsarRecord.java      |  2 +-
 .../pulsar/functions/source/PulsarSource.java      |  4 +--
 .../functions/sink/DefaultRuntimeSinkTest.java     |  4 +--
 pulsar-functions/utils/pom.xml                     |  2 +-
 {pulsar-connect => pulsar-io}/aerospike/pom.xml    |  8 +++---
 .../apache/pulsar/io}/aerospike/AerospikeSink.java | 23 ++++++++++-------
 .../pulsar/io}/aerospike/AerospikeSinkConfig.java  |  2 +-
 {pulsar-connect => pulsar-io}/cassandra/pom.xml    |  8 +++---
 .../apache/pulsar/io}/cassandra/CassandraSink.java | 11 +++++---
 .../pulsar/io}/cassandra/CassandraSinkConfig.java  |  2 +-
 {pulsar-connect => pulsar-io}/core/pom.xml         |  6 ++---
 .../org/apache/pulsar/io}/core/PushSource.java     |  2 +-
 .../java/org/apache/pulsar/io}/core/Record.java    |  2 +-
 .../org/apache/pulsar/io}/core/RecordContext.java  |  2 +-
 .../main/java/org/apache/pulsar/io}/core/Sink.java |  2 +-
 .../java/org/apache/pulsar/io}/core/Source.java    |  2 +-
 {pulsar-connect => pulsar-io}/kafka/pom.xml        |  8 +++---
 .../org/apache/pulsar/io}/kafka/KafkaSink.java     |  4 +--
 .../apache/pulsar/io}/kafka/KafkaSinkConfig.java   |  2 +-
 .../org/apache/pulsar/io}/kafka/KafkaSource.java   | 10 +++++---
 .../apache/pulsar/io}/kafka/KafkaSourceConfig.java |  2 +-
 {pulsar-connect => pulsar-io}/pom.xml              |  4 +--
 {pulsar-connect => pulsar-io}/rabbitmq/pom.xml     |  8 +++---
 .../apache/pulsar/io}/rabbitmq/RabbitMQConfig.java |  2 +-
 .../apache/pulsar/io}/rabbitmq/RabbitMQSource.java | 13 +++++++---
 {pulsar-connect => pulsar-io}/twitter/pom.xml      |  8 +++---
 .../apache/pulsar/io}/twitter/TwitterFireHose.java | 29 +++++++++++-----------
 .../pulsar/io}/twitter/TwitterFireHoseConfig.java  |  2 +-
 43 files changed, 128 insertions(+), 108 deletions(-)

diff --git a/pom.xml b/pom.xml
index e3205ea..08acb3a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -101,10 +101,10 @@ flexible messaging model and an intuitive client API.</description>
     <module>docker</module>
     <module>tests</module>
     <module>pulsar-log4j2-appender</module>
-    <!-- functions related modules -->
+    <!-- functions-related modules -->
     <module>pulsar-functions</module>
-    <!-- connector related modules -->
-    <module>pulsar-connect</module>
+    <!-- connector-related modules -->
+    <module>pulsar-io</module>
   </modules>
 
   <issueManagement>
diff --git a/pulsar-client-admin-shaded-for-functions/pom.xml b/pulsar-client-admin-shaded-for-functions/pom.xml
index d2507f3..e36681c 100644
--- a/pulsar-client-admin-shaded-for-functions/pom.xml
+++ b/pulsar-client-admin-shaded-for-functions/pom.xml
@@ -61,7 +61,7 @@
                 <includes>
                   <include>org.apache.pulsar:pulsar-common</include>
                   <include>org.apache.bookkeeper:circe-checksum</include>
-                  <include>org.apache.pulsar:pulsar-connect-core</include>
+                  <include>org.apache.pulsar:pulsar-io-core</include>
                   <include>org.apache.pulsar:pulsar-client-original</include>
                   <include>org.apache.pulsar:pulsar-client-admin-original</include>
                   <!-- client dependencies as below -->
@@ -109,7 +109,7 @@
                   </includes>
                 </filter>
                 <filter>
-                  <artifact>org.apache.pulsar:pulsar-connect-core</artifact>
+                  <artifact>org.apache.pulsar:pulsar-io-core</artifact>
                   <includes>
                     <include>**</include>
                   </includes>
diff --git a/pulsar-client-admin-shaded/pom.xml b/pulsar-client-admin-shaded/pom.xml
index ba8da01..18e1ba9 100644
--- a/pulsar-client-admin-shaded/pom.xml
+++ b/pulsar-client-admin-shaded/pom.xml
@@ -57,7 +57,7 @@
 
               <artifactSet>
                 <includes>
-                  <include>org.apache.pulsar:pulsar-connect-core</include>
+                  <include>org.apache.pulsar:pulsar-io-core</include>
                   <include>org.apache.pulsar:pulsar-client-original</include>
                   <include>org.apache.pulsar:pulsar-client-admin-original</include>
                   <include>org.apache.commons:commons-lang3</include>
@@ -94,7 +94,7 @@
                   </includes>
                 </filter>
                 <filter>
-                  <artifact>org.apache.pulsar:pulsar-connect-core</artifact>
+                  <artifact>org.apache.pulsar:pulsar-io-core</artifact>
                   <includes>
                     <include>**</include>
                   </includes>
diff --git a/pulsar-client-shaded/pom.xml b/pulsar-client-shaded/pom.xml
index 9369081..e1e6abf 100644
--- a/pulsar-client-shaded/pom.xml
+++ b/pulsar-client-shaded/pom.xml
@@ -59,7 +59,7 @@
 
               <artifactSet>
                 <includes>
-                  <include>org.apache.pulsar:pulsar-connect-core</include>
+                  <include>org.apache.pulsar:pulsar-io-core</include>
                   <include>org.apache.pulsar:pulsar-client-original</include>
                   <include>org.apache.commons:commons-lang3</include>
                   <include>commons-codec:commons-codec</include>
@@ -96,7 +96,7 @@
                   </includes>
                 </filter>
                 <filter>
-                  <artifact>org.apache.pulsar:pulsar-connect-core</artifact>
+                  <artifact>org.apache.pulsar:pulsar-io-core</artifact>
                   <includes>
                     <include>**</include>
                   </includes>
diff --git a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSinks.java b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSinks.java
index 01ec16c..a6319c1 100644
--- a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSinks.java
+++ b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSinks.java
@@ -31,8 +31,6 @@ import net.jodah.typetools.TypeResolver;
 import org.apache.pulsar.client.admin.PulsarAdmin;
 import org.apache.pulsar.client.admin.internal.FunctionsImpl;
 import org.apache.pulsar.common.naming.TopicName;
-import org.apache.pulsar.connect.core.Sink;
-import org.apache.pulsar.connect.core.Source;
 import org.apache.pulsar.functions.api.utils.IdentityFunction;
 import org.apache.pulsar.functions.shaded.proto.Function;
 import org.apache.pulsar.functions.shaded.proto.Function.FunctionDetails;
@@ -41,7 +39,12 @@ import org.apache.pulsar.functions.shaded.proto.Function.SinkSpec;
 import org.apache.pulsar.functions.shaded.proto.Function.SourceSpec;
 import org.apache.pulsar.functions.sink.PulsarSink;
 import org.apache.pulsar.functions.source.PulsarSource;
-import org.apache.pulsar.functions.utils.*;
+import org.apache.pulsar.functions.utils.FunctionConfig;
+import org.apache.pulsar.functions.utils.Reflections;
+import org.apache.pulsar.functions.utils.SinkConfig;
+import org.apache.pulsar.functions.utils.Utils;
+import org.apache.pulsar.io.core.Sink;
+import org.apache.pulsar.io.core.Source;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSources.java b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSources.java
index c651e37..7ff908a 100644
--- a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSources.java
+++ b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdSources.java
@@ -31,8 +31,6 @@ import net.jodah.typetools.TypeResolver;
 import org.apache.pulsar.client.admin.PulsarAdmin;
 import org.apache.pulsar.client.admin.internal.FunctionsImpl;
 import org.apache.pulsar.common.naming.TopicName;
-import org.apache.pulsar.connect.core.Sink;
-import org.apache.pulsar.connect.core.Source;
 import org.apache.pulsar.functions.api.utils.IdentityFunction;
 import org.apache.pulsar.functions.shaded.proto.Function;
 import org.apache.pulsar.functions.shaded.proto.Function.FunctionDetails;
@@ -41,7 +39,12 @@ import org.apache.pulsar.functions.shaded.proto.Function.SinkSpec;
 import org.apache.pulsar.functions.shaded.proto.Function.SourceSpec;
 import org.apache.pulsar.functions.sink.PulsarSink;
 import org.apache.pulsar.functions.source.PulsarSource;
-import org.apache.pulsar.functions.utils.*;
+import org.apache.pulsar.functions.utils.FunctionConfig;
+import org.apache.pulsar.functions.utils.Reflections;
+import org.apache.pulsar.functions.utils.SourceConfig;
+import org.apache.pulsar.functions.utils.Utils;
+import org.apache.pulsar.io.core.Sink;
+import org.apache.pulsar.io.core.Source;
 
 import java.io.File;
 import java.io.IOException;
diff --git a/pulsar-client/pom.xml b/pulsar-client/pom.xml
index 8fbb196..653c17d 100644
--- a/pulsar-client/pom.xml
+++ b/pulsar-client/pom.xml
@@ -41,7 +41,7 @@
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.parent.version}</version>
     </dependency>
 
diff --git a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/MessageRecordImpl.java b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/MessageRecordImpl.java
index 5e8128a..a27ac13 100644
--- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/MessageRecordImpl.java
+++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/MessageRecordImpl.java
@@ -20,7 +20,7 @@ package org.apache.pulsar.client.impl;
 
 import org.apache.pulsar.client.api.Message;
 import org.apache.pulsar.client.api.MessageId;
-import org.apache.pulsar.connect.core.Record;
+import org.apache.pulsar.io.core.Record;
 
 /**
  * Abstract class that implements message api and connect record api.
diff --git a/pulsar-functions/instance/pom.xml b/pulsar-functions/instance/pom.xml
index 2934e55..bcdf780 100644
--- a/pulsar-functions/instance/pom.xml
+++ b/pulsar-functions/instance/pom.xml
@@ -54,8 +54,8 @@
     </dependency>
 
     <dependency>
-      <groupId>org.apache.pulsar</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstance.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstance.java
index da6771a..5ab8d85 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstance.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstance.java
@@ -23,9 +23,9 @@ import lombok.Getter;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.pulsar.client.api.MessageId;
 import org.apache.pulsar.client.api.PulsarClient;
-import org.apache.pulsar.connect.core.Source;
 import org.apache.pulsar.functions.api.Function;
 import org.apache.pulsar.functions.proto.InstanceCommunication;
+import org.apache.pulsar.io.core.Source;
 
 import org.apache.pulsar.functions.source.PulsarSource;
 import org.slf4j.Logger;
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstanceRunnable.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstanceRunnable.java
index 3910c1e..36d6521 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstanceRunnable.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/instance/JavaInstanceRunnable.java
@@ -50,9 +50,6 @@ import org.apache.logging.log4j.core.config.LoggerConfig;
 import org.apache.pulsar.client.api.MessageId;
 import org.apache.pulsar.client.api.PulsarClient;
 import org.apache.pulsar.client.impl.PulsarClientImpl;
-import org.apache.pulsar.connect.core.Record;
-import org.apache.pulsar.connect.core.Sink;
-import org.apache.pulsar.connect.core.Source;
 import org.apache.pulsar.functions.api.Function;
 import org.apache.pulsar.functions.api.utils.IdentityFunction;
 import org.apache.pulsar.functions.proto.InstanceCommunication;
@@ -70,6 +67,9 @@ import org.apache.pulsar.functions.utils.functioncache.FunctionCacheManager;
 import org.apache.pulsar.functions.instance.state.StateContextImpl;
 import org.apache.pulsar.functions.utils.FunctionDetailsUtils;
 import org.apache.pulsar.functions.utils.Reflections;
+import org.apache.pulsar.io.core.Record;
+import org.apache.pulsar.io.core.Sink;
+import org.apache.pulsar.io.core.Source;
 
 /**
  * A function container implemented using java thread.
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/DefaultRuntimeSink.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/DefaultRuntimeSink.java
index 54e34c3..86cd5b5 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/DefaultRuntimeSink.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/DefaultRuntimeSink.java
@@ -20,7 +20,7 @@ package org.apache.pulsar.functions.sink;
 
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.Sink;
 
 /**
  * The default implementation of runtime sink.
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSink.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSink.java
index 84db3b2..61deeff 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSink.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSink.java
@@ -30,7 +30,6 @@ import org.apache.pulsar.client.api.MessageBuilder;
 import org.apache.pulsar.client.api.Producer;
 import org.apache.pulsar.client.api.PulsarClient;
 import org.apache.pulsar.client.api.PulsarClientException;
-import org.apache.pulsar.connect.core.RecordContext;
 import org.apache.pulsar.functions.api.SerDe;
 import org.apache.pulsar.functions.api.utils.DefaultSerDe;
 import org.apache.pulsar.functions.instance.InstanceUtils;
@@ -39,6 +38,7 @@ import org.apache.pulsar.functions.instance.producers.MultiConsumersOneOuputTopi
 import org.apache.pulsar.functions.instance.producers.Producers;
 import org.apache.pulsar.functions.source.PulsarRecord;
 import org.apache.pulsar.functions.utils.FunctionConfig;
+import org.apache.pulsar.io.core.RecordContext;
 
 import java.util.Base64;
 import java.util.Map;
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSinkConfig.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSinkConfig.java
index 1def3f1..60baa1a 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSinkConfig.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/PulsarSinkConfig.java
@@ -23,8 +23,6 @@ import lombok.Setter;
 import lombok.ToString;
 import org.apache.pulsar.functions.utils.FunctionConfig;
 
-import java.util.Map;
-
 @Getter
 @Setter
 @ToString
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/RuntimeSink.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/RuntimeSink.java
index fe47705..e9c8dc5 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/RuntimeSink.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/sink/RuntimeSink.java
@@ -18,8 +18,8 @@
  */
 package org.apache.pulsar.functions.sink;
 
-import org.apache.pulsar.connect.core.RecordContext;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.RecordContext;
+import org.apache.pulsar.io.core.Sink;
 
 /**
  * This class extends connect sink.
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarRecord.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarRecord.java
index 7211db1..d1d89da 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarRecord.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarRecord.java
@@ -24,7 +24,7 @@ import lombok.EqualsAndHashCode;
 import lombok.Getter;
 import lombok.ToString;
 import org.apache.pulsar.client.api.MessageId;
-import org.apache.pulsar.connect.core.Record;
+import org.apache.pulsar.io.core.Record;
 
 @Data
 @Builder
diff --git a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarSource.java b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarSource.java
index a4a0485..5cae902 100644
--- a/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarSource.java
+++ b/pulsar-functions/instance/src/main/java/org/apache/pulsar/functions/source/PulsarSource.java
@@ -26,12 +26,12 @@ import org.apache.pulsar.client.api.PulsarClient;
 import org.apache.pulsar.client.impl.MessageIdImpl;
 import org.apache.pulsar.client.impl.TopicMessageIdImpl;
 import org.apache.pulsar.client.impl.TopicMessageImpl;
-import org.apache.pulsar.connect.core.Record;
-import org.apache.pulsar.connect.core.Source;
 import org.apache.pulsar.functions.api.SerDe;
 import org.apache.pulsar.functions.api.utils.DefaultSerDe;
 import org.apache.pulsar.functions.instance.InstanceUtils;
 import org.apache.pulsar.functions.utils.FunctionConfig;
+import org.apache.pulsar.io.core.Record;
+import org.apache.pulsar.io.core.Source;
 
 import java.util.ArrayList;
 import java.util.HashMap;
diff --git a/pulsar-functions/instance/src/test/java/org/apache/pulsar/functions/sink/DefaultRuntimeSinkTest.java b/pulsar-functions/instance/src/test/java/org/apache/pulsar/functions/sink/DefaultRuntimeSinkTest.java
index 2ba4e3f..018a968 100644
--- a/pulsar-functions/instance/src/test/java/org/apache/pulsar/functions/sink/DefaultRuntimeSinkTest.java
+++ b/pulsar-functions/instance/src/test/java/org/apache/pulsar/functions/sink/DefaultRuntimeSinkTest.java
@@ -29,8 +29,8 @@ import static org.mockito.Mockito.when;
 import java.util.Collections;
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
-import org.apache.pulsar.connect.core.RecordContext;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.RecordContext;
+import org.apache.pulsar.io.core.Sink;
 import org.testng.annotations.BeforeMethod;
 import org.testng.annotations.Test;
 
diff --git a/pulsar-functions/utils/pom.xml b/pulsar-functions/utils/pom.xml
index 029979b..6c8032c 100644
--- a/pulsar-functions/utils/pom.xml
+++ b/pulsar-functions/utils/pom.xml
@@ -49,7 +49,7 @@
         </exclusion>
         <exclusion>
           <groupId>org.apache.pulsar</groupId>
-          <artifactId>pulsar-connect-core</artifactId>
+          <artifactId>pulsar-io-core</artifactId>
         </exclusion>
         <exclusion>
           <groupId>org.apache.pulsar</groupId>
diff --git a/pulsar-connect/aerospike/pom.xml b/pulsar-io/aerospike/pom.xml
similarity index 91%
rename from pulsar-connect/aerospike/pom.xml
rename to pulsar-io/aerospike/pom.xml
index f1e2147..63aa761 100644
--- a/pulsar-connect/aerospike/pom.xml
+++ b/pulsar-io/aerospike/pom.xml
@@ -23,18 +23,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-aerospike</artifactId>
-  <name>Pulsar Connect :: Aerospike</name>
+  <artifactId>pulsar-io-aerospike</artifactId>
+  <name>Pulsar IO :: Aerospike</name>
 
   <dependencies>
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSink.java b/pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSink.java
similarity index 94%
rename from pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSink.java
rename to pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSink.java
index daab766..34df2aa 100644
--- a/pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSink.java
+++ b/pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSink.java
@@ -17,14 +17,14 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.aerospike;
-
-import java.util.Map;
-import java.util.concurrent.BlockingQueue;
-import java.util.concurrent.CompletableFuture;
-import java.util.concurrent.LinkedBlockingDeque;
-
-import com.aerospike.client.*;
+package org.apache.pulsar.io.aerospike;
+
+import com.aerospike.client.AerospikeClient;
+import com.aerospike.client.AerospikeException;
+import com.aerospike.client.Bin;
+import com.aerospike.client.Host;
+import com.aerospike.client.Key;
+import com.aerospike.client.Value;
 import com.aerospike.client.async.EventLoop;
 import com.aerospike.client.async.EventPolicy;
 import com.aerospike.client.async.NioEventLoops;
@@ -32,10 +32,15 @@ import com.aerospike.client.listener.WriteListener;
 import com.aerospike.client.policy.ClientPolicy;
 import com.aerospike.client.policy.WritePolicy;
 import org.apache.pulsar.common.util.KeyValue;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.Sink;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import java.util.Map;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.CompletableFuture;
+import java.util.concurrent.LinkedBlockingDeque;
+
 /**
  * Simple AeroSpike sink
  */
diff --git a/pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSinkConfig.java b/pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSinkConfig.java
similarity index 97%
rename from pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSinkConfig.java
rename to pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSinkConfig.java
index ef02c80..931d280 100644
--- a/pulsar-connect/aerospike/src/main/java/org/apache/pulsar/connect/aerospike/AerospikeSinkConfig.java
+++ b/pulsar-io/aerospike/src/main/java/org/apache/pulsar/io/aerospike/AerospikeSinkConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.aerospike;
+package org.apache.pulsar.io.aerospike;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/pulsar-connect/cassandra/pom.xml b/pulsar-io/cassandra/pom.xml
similarity index 91%
rename from pulsar-connect/cassandra/pom.xml
rename to pulsar-io/cassandra/pom.xml
index 4da66ec..d997f06 100644
--- a/pulsar-connect/cassandra/pom.xml
+++ b/pulsar-io/cassandra/pom.xml
@@ -23,18 +23,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-cassandra</artifactId>
-  <name>Pulsar Connect :: Cassandra</name>
+  <artifactId>pulsar-io-cassandra</artifactId>
+  <name>Pulsar IO :: Cassandra</name>
 
   <dependencies>
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSink.java b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSink.java
similarity index 91%
rename from pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSink.java
rename to pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSink.java
index bc87ec6..14abc9b 100644
--- a/pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSink.java
+++ b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSink.java
@@ -17,13 +17,18 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.cassandra;
+package org.apache.pulsar.io.cassandra;
 
-import com.datastax.driver.core.*;
+import com.datastax.driver.core.BoundStatement;
+import com.datastax.driver.core.Cluster;
+import com.datastax.driver.core.PreparedStatement;
+import com.datastax.driver.core.ResultSet;
+import com.datastax.driver.core.ResultSetFuture;
+import com.datastax.driver.core.Session;
 import com.google.common.util.concurrent.FutureCallback;
 import com.google.common.util.concurrent.Futures;
 import org.apache.pulsar.common.util.KeyValue;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.Sink;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSinkConfig.java b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSinkConfig.java
similarity index 97%
rename from pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSinkConfig.java
rename to pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSinkConfig.java
index 5bcfb52..c3f6587 100644
--- a/pulsar-connect/cassandra/src/main/java/org/apache/pulsar/connect/cassandra/CassandraSinkConfig.java
+++ b/pulsar-io/cassandra/src/main/java/org/apache/pulsar/io/cassandra/CassandraSinkConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.cassandra;
+package org.apache.pulsar.io.cassandra;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/pulsar-connect/core/pom.xml b/pulsar-io/core/pom.xml
similarity index 90%
rename from pulsar-connect/core/pom.xml
rename to pulsar-io/core/pom.xml
index e2f9f58..4bf1439 100644
--- a/pulsar-connect/core/pom.xml
+++ b/pulsar-io/core/pom.xml
@@ -23,11 +23,11 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-core</artifactId>
-  <name>Pulsar Connect :: Connect</name>
+  <artifactId>pulsar-io-core</artifactId>
+  <name>Pulsar IO :: IO</name>
 
 </project>
diff --git a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/PushSource.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
similarity index 98%
rename from pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/PushSource.java
rename to pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
index 4e6f64b..8111488 100644
--- a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/PushSource.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/PushSource.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.pulsar.connect.core;
+package org.apache.pulsar.io.core;
 
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
diff --git a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Record.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Record.java
similarity index 96%
rename from pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Record.java
rename to pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Record.java
index c5137ea..08c78bf 100644
--- a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Record.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Record.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.pulsar.connect.core;
+package org.apache.pulsar.io.core;
 
 /**
  * Pulsar Connect's Record interface. Record encapsulates the
diff --git a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/RecordContext.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/RecordContext.java
similarity index 97%
rename from pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/RecordContext.java
rename to pulsar-io/core/src/main/java/org/apache/pulsar/io/core/RecordContext.java
index 094ca8c..09ce8d1 100644
--- a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/RecordContext.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/RecordContext.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.pulsar.connect.core;
+package org.apache.pulsar.io.core;
 
 /**
  * A source context that can be used by the runtime to interact with source.
diff --git a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Sink.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Sink.java
similarity index 97%
rename from pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Sink.java
rename to pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Sink.java
index cd2d63d..48a58e7 100644
--- a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Sink.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Sink.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.pulsar.connect.core;
+package org.apache.pulsar.io.core;
 
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
diff --git a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Source.java b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Source.java
similarity index 97%
rename from pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Source.java
rename to pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Source.java
index 2a41336..e9ef044 100644
--- a/pulsar-connect/core/src/main/java/org/apache/pulsar/connect/core/Source.java
+++ b/pulsar-io/core/src/main/java/org/apache/pulsar/io/core/Source.java
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.pulsar.connect.core;
+package org.apache.pulsar.io.core;
 
 import java.util.Map;
 
diff --git a/pulsar-connect/kafka/pom.xml b/pulsar-io/kafka/pom.xml
similarity index 91%
rename from pulsar-connect/kafka/pom.xml
rename to pulsar-io/kafka/pom.xml
index 2c3b4fa..f5a5250 100644
--- a/pulsar-connect/kafka/pom.xml
+++ b/pulsar-io/kafka/pom.xml
@@ -23,18 +23,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-kafka</artifactId>
-  <name>Pulsar Connect :: Kafka</name>
+  <artifactId>pulsar-io-kafka</artifactId>
+  <name>Pulsar IO :: Kafka</name>
 
   <dependencies>
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSink.java b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSink.java
similarity index 97%
rename from pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSink.java
rename to pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSink.java
index fc8e2af..13d65ab 100644
--- a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSink.java
+++ b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSink.java
@@ -17,14 +17,14 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.kafka;
+package org.apache.pulsar.io.kafka;
 
 import org.apache.kafka.clients.producer.KafkaProducer;
 import org.apache.kafka.clients.producer.Producer;
 import org.apache.kafka.clients.producer.ProducerConfig;
 import org.apache.kafka.clients.producer.ProducerRecord;
 import org.apache.pulsar.common.util.KeyValue;
-import org.apache.pulsar.connect.core.Sink;
+import org.apache.pulsar.io.core.Sink;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSinkConfig.java b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSinkConfig.java
similarity index 98%
rename from pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSinkConfig.java
rename to pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSinkConfig.java
index 6da494e..23a23ed 100644
--- a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSinkConfig.java
+++ b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSinkConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.kafka;
+package org.apache.pulsar.io.kafka;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSource.java b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSource.java
similarity index 96%
rename from pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSource.java
rename to pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSource.java
index 7520ee6..a157955 100644
--- a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSource.java
+++ b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSource.java
@@ -17,19 +17,21 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.kafka;
+package org.apache.pulsar.io.kafka;
 
 import org.apache.kafka.clients.consumer.Consumer;
 import org.apache.kafka.clients.consumer.ConsumerConfig;
 import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.apache.kafka.clients.consumer.ConsumerRecords;
 import org.apache.kafka.clients.consumer.KafkaConsumer;
-import org.apache.pulsar.connect.core.Record;
-import org.apache.pulsar.connect.core.PushSource;
+import org.apache.pulsar.io.core.PushSource;
+import org.apache.pulsar.io.core.Record;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.util.*;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.Properties;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ExecutionException;
 
diff --git a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSourceConfig.java b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSourceConfig.java
similarity index 98%
rename from pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSourceConfig.java
rename to pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSourceConfig.java
index 0d41b1b..62f6bd5 100644
--- a/pulsar-connect/kafka/src/main/java/org/apache/pulsar/connect/kafka/KafkaSourceConfig.java
+++ b/pulsar-io/kafka/src/main/java/org/apache/pulsar/io/kafka/KafkaSourceConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.kafka;
+package org.apache.pulsar.io.kafka;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/pulsar-connect/pom.xml b/pulsar-io/pom.xml
similarity index 94%
rename from pulsar-connect/pom.xml
rename to pulsar-io/pom.xml
index 1e7d4be..fb63146 100644
--- a/pulsar-connect/pom.xml
+++ b/pulsar-io/pom.xml
@@ -28,8 +28,8 @@
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect</artifactId>
-  <name>Pulsar Connect :: Parent</name>
+  <artifactId>pulsar-io</artifactId>
+  <name>Pulsar IO :: Parent</name>
 
   <modules>
     <module>core</module>
diff --git a/pulsar-connect/rabbitmq/pom.xml b/pulsar-io/rabbitmq/pom.xml
similarity index 91%
rename from pulsar-connect/rabbitmq/pom.xml
rename to pulsar-io/rabbitmq/pom.xml
index 97b27f6..ff7111f 100644
--- a/pulsar-connect/rabbitmq/pom.xml
+++ b/pulsar-io/rabbitmq/pom.xml
@@ -23,18 +23,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-rabbitmq</artifactId>
-  <name>Pulsar Connect :: RabbitMQ</name>
+  <artifactId>pulsar-io-rabbitmq</artifactId>
+  <name>Pulsar IO :: RabbitMQ</name>
 
   <dependencies>
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQConfig.java b/pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQConfig.java
similarity index 97%
rename from pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQConfig.java
rename to pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQConfig.java
index e76b03f..33bc9c1 100644
--- a/pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQConfig.java
+++ b/pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.rabbitmq;
+package org.apache.pulsar.io.rabbitmq;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
diff --git a/pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQSource.java b/pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQSource.java
similarity index 91%
rename from pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQSource.java
rename to pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQSource.java
index c548f99..4b9ca98 100644
--- a/pulsar-connect/rabbitmq/src/main/java/org/apache/pulsar/connect/rabbitmq/RabbitMQSource.java
+++ b/pulsar-io/rabbitmq/src/main/java/org/apache/pulsar/io/rabbitmq/RabbitMQSource.java
@@ -17,11 +17,16 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.rabbitmq;
+package org.apache.pulsar.io.rabbitmq;
 
-import com.rabbitmq.client.*;
-import org.apache.pulsar.connect.core.Record;
-import org.apache.pulsar.connect.core.PushSource;
+import com.rabbitmq.client.AMQP;
+import com.rabbitmq.client.Channel;
+import com.rabbitmq.client.Connection;
+import com.rabbitmq.client.ConnectionFactory;
+import com.rabbitmq.client.DefaultConsumer;
+import com.rabbitmq.client.Envelope;
+import org.apache.pulsar.io.core.PushSource;
+import org.apache.pulsar.io.core.Record;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/pulsar-connect/twitter/pom.xml b/pulsar-io/twitter/pom.xml
similarity index 91%
rename from pulsar-connect/twitter/pom.xml
rename to pulsar-io/twitter/pom.xml
index 36b0bd8..15ee163 100644
--- a/pulsar-connect/twitter/pom.xml
+++ b/pulsar-io/twitter/pom.xml
@@ -23,18 +23,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.apache.pulsar</groupId>
-    <artifactId>pulsar-connect</artifactId>
+    <artifactId>pulsar-io</artifactId>
     <version>2.1.0-incubating-SNAPSHOT</version>
   </parent>
 
-  <artifactId>pulsar-connect-twitter</artifactId>
-  <name>Pulsar Connect :: Twitter</name>
+  <artifactId>pulsar-io-twitter</artifactId>
+  <name>Pulsar IO :: Twitter</name>
 
   <dependencies>
 
     <dependency>
       <groupId>${project.groupId}</groupId>
-      <artifactId>pulsar-connect-core</artifactId>
+      <artifactId>pulsar-io-core</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHose.java b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
similarity index 97%
rename from pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHose.java
rename to pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
index 1dcbb17..05e2b08 100644
--- a/pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHose.java
+++ b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHose.java
@@ -17,29 +17,28 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.twitter;
+package org.apache.pulsar.io.twitter;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Serializable;
-import java.util.Map;
-import java.util.concurrent.CompletableFuture;
-import java.util.function.Function;
-
-import org.apache.pulsar.connect.core.Record;
-import org.apache.pulsar.connect.core.PushSource;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.twitter.hbc.core.endpoint.StatusesSampleEndpoint;
-import com.twitter.hbc.core.endpoint.StreamingEndpoint;
 import com.twitter.hbc.ClientBuilder;
 import com.twitter.hbc.common.DelimitedStreamReader;
 import com.twitter.hbc.core.Constants;
+import com.twitter.hbc.core.endpoint.StatusesSampleEndpoint;
+import com.twitter.hbc.core.endpoint.StreamingEndpoint;
 import com.twitter.hbc.core.processor.HosebirdMessageProcessor;
 import com.twitter.hbc.httpclient.BasicClient;
 import com.twitter.hbc.httpclient.auth.Authentication;
 import com.twitter.hbc.httpclient.auth.OAuth1;
+import org.apache.pulsar.io.core.PushSource;
+import org.apache.pulsar.io.core.Record;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.Serializable;
+import java.util.Map;
+import java.util.concurrent.CompletableFuture;
+import java.util.function.Function;
 
 /**
  * Simple Push based Twitter FireHose Source
diff --git a/pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHoseConfig.java b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
similarity index 97%
rename from pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHoseConfig.java
rename to pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
index 57782e2..83f1baf 100644
--- a/pulsar-connect/twitter/src/main/java/org/apache/pulsar/connect/twitter/TwitterFireHoseConfig.java
+++ b/pulsar-io/twitter/src/main/java/org/apache/pulsar/io/twitter/TwitterFireHoseConfig.java
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-package org.apache.pulsar.connect.twitter;
+package org.apache.pulsar.io.twitter;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;

-- 
To stop receiving notification emails like this one, please contact
mmerli@apache.org.