Review Board 1.7.22


FLUME-989 Client SDK API

Review Request #4047 - Created Feb. 24, 2012 and submitted

Mike Percy
FLUME-989
Reviewers
Flume
flume-git
Seeking early feedback on some additional APIs to make integrating with Flume 1.x easier.

Added the following APIs:
 - AvroClient: Friendly Java interface around the Avro API
 - AvroClientBuilder: Builder class to allow easy extension of AvroClient capabilities in the future (i.e. SSL)
 - DefaultAvroClient: Implementation of the AvroClient interface

Created this stuff in a flume-ng-sdk Maven submodule and moved the Event interface to that submodule. flume-ng-core depends on flume-ng-sdk.

I also modified AvroSink to use the AvroClient API instead of the bare AvroSourceProtocol API directly.

 

Diff revision 2

This is not the most recent revision of the diff. The latest diff is revision 5. See what's changed.

1 2 3 4 5
1 2 3 4 5

  1. pom.xml: Loading...
  2. flume-ng-clients/flume-ng-log4jappender/pom.xml: Loading...
  3. flume-ng-clients/flume-ng-log4jappender/src/main/java/org/apache/flume/clients/log4jappender/Log4jAppender.java: Loading...
  4. flume-ng-core/pom.xml: Loading...
  5. flume-ng-core/src/main/avro/flume.avdl: Loading...
  6. flume-ng-core/src/main/java/org/apache/flume/Event.java: Loading...
  7. flume-ng-core/src/main/java/org/apache/flume/FlumeException.java: Loading...
  8. flume-ng-core/src/main/java/org/apache/flume/client/avro/AvroCLIClient.java: Loading...
  9. flume-ng-core/src/main/java/org/apache/flume/event/EventBuilder.java: Loading...
  10. flume-ng-core/src/main/java/org/apache/flume/event/SimpleEvent.java: Loading...
  11. flume-ng-core/src/main/java/org/apache/flume/sink/AvroSink.java: Loading...
  12. flume-ng-core/src/test/java/org/apache/flume/sink/TestAvroSink.java: Loading...
  13. flume-ng-sdk/pom.xml: Loading...
  14. flume-ng-sdk/src/main/avro/flume.avdl: Loading...
  15. flume-ng-sdk/src/main/java/org/apache/flume/Event.java: Loading...
  16. flume-ng-sdk/src/main/java/org/apache/flume/FlumeException.java: Loading...
  17. flume-ng-sdk/src/main/java/org/apache/flume/FlumeRemoteException.java: Loading...
  18. flume-ng-sdk/src/main/java/org/apache/flume/FlumeTimeoutException.java: Loading...
  19. flume-ng-sdk/src/main/java/org/apache/flume/api/client/NettyAvroRpcClient.java: Loading...
  20. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcCallback.java: Loading...
  21. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClient.java: Loading...
  22. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClientBuilder.java: Loading...
  23. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcResponse.java: Loading...
  24. flume-ng-sdk/src/main/java/org/apache/flume/event/EventBuilder.java: Loading...
  25. flume-ng-sdk/src/main/java/org/apache/flume/event/SimpleEvent.java: Loading...
pom.xml
Revision d785762 New Change
[20] 46 lines
[+20]
47
    <module>flume-ng-node</module>
47
    <module>flume-ng-node</module>
48
    <module>flume-ng-dist</module>
48
    <module>flume-ng-dist</module>
49
    <module>flume-ng-channels</module>
49
    <module>flume-ng-channels</module>
50
    <module>flume-ng-legacy-sources</module>
50
    <module>flume-ng-legacy-sources</module>
51
    <module>flume-ng-clients</module>
51
    <module>flume-ng-clients</module>

    
   
52
    <module>flume-ng-sdk</module>
52
  </modules>
53
  </modules>
53

    
   
54

   
54
  <profiles>
55
  <profiles>
55
    <profile>
56
    <profile>
56
      <id>hadoop-0.20.205.0</id>
57
      <id>hadoop-0.20.205.0</id>
[+20] [20] 585 lines
[+20]
642
        <groupId>org.apache.flume.flume-ng-legacy-sources</groupId>
643
        <groupId>org.apache.flume.flume-ng-legacy-sources</groupId>
643
        <artifactId>flume-avro-source</artifactId>
644
        <artifactId>flume-avro-source</artifactId>
644
        <version>1.1.0-incubating-SNAPSHOT</version>
645
        <version>1.1.0-incubating-SNAPSHOT</version>
645
      </dependency>
646
      </dependency>
646

    
   
647

   

    
   
648
      <dependency>

    
   
649
        <groupId>org.apache.flume</groupId>

    
   
650
        <artifactId>flume-ng-sdk</artifactId>

    
   
651
        <version>1.1.0-incubating-SNAPSHOT</version>

    
   
652
      </dependency>

    
   
653

   
647
    </dependencies>
654
    </dependencies>
648
  </dependencyManagement>
655
  </dependencyManagement>
649

    
   
656

   
650
</project>
657
</project>
flume-ng-clients/flume-ng-log4jappender/pom.xml
Revision 9dd31bd New Change
 
flume-ng-clients/flume-ng-log4jappender/src/main/java/org/apache/flume/clients/log4jappender/Log4jAppender.java
Revision 97f2b9e New Change
 
flume-ng-core/pom.xml
Revision fe6ce0b New Change
 
flume-ng-core/src/main/avro/flume.avdl
Revision 40da3ef New Change
 
flume-ng-core/src/main/java/org/apache/flume/Event.java
Revision a017705 New Change
 
flume-ng-core/src/main/java/org/apache/flume/FlumeException.java
Revision eab5b3d New Change
 
flume-ng-core/src/main/java/org/apache/flume/client/avro/AvroCLIClient.java
Revision 195ba79 New Change
 
flume-ng-core/src/main/java/org/apache/flume/event/EventBuilder.java
Revision 5d8c3b3 New Change
 
flume-ng-core/src/main/java/org/apache/flume/event/SimpleEvent.java
Revision e0c3b45 New Change
 
flume-ng-core/src/main/java/org/apache/flume/sink/AvroSink.java
Revision 7386d06 New Change
 
flume-ng-core/src/test/java/org/apache/flume/sink/TestAvroSink.java
Revision 467785f New Change
 
flume-ng-sdk/pom.xml
New File
 
flume-ng-sdk/src/main/avro/flume.avdl
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/Event.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/FlumeException.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/FlumeRemoteException.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/FlumeTimeoutException.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/api/client/NettyAvroRpcClient.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcCallback.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClient.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClientBuilder.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcResponse.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/event/EventBuilder.java
New File
 
flume-ng-sdk/src/main/java/org/apache/flume/event/SimpleEvent.java
New File
 
  1. pom.xml: Loading...
  2. flume-ng-clients/flume-ng-log4jappender/pom.xml: Loading...
  3. flume-ng-clients/flume-ng-log4jappender/src/main/java/org/apache/flume/clients/log4jappender/Log4jAppender.java: Loading...
  4. flume-ng-core/pom.xml: Loading...
  5. flume-ng-core/src/main/avro/flume.avdl: Loading...
  6. flume-ng-core/src/main/java/org/apache/flume/Event.java: Loading...
  7. flume-ng-core/src/main/java/org/apache/flume/FlumeException.java: Loading...
  8. flume-ng-core/src/main/java/org/apache/flume/client/avro/AvroCLIClient.java: Loading...
  9. flume-ng-core/src/main/java/org/apache/flume/event/EventBuilder.java: Loading...
  10. flume-ng-core/src/main/java/org/apache/flume/event/SimpleEvent.java: Loading...
  11. flume-ng-core/src/main/java/org/apache/flume/sink/AvroSink.java: Loading...
  12. flume-ng-core/src/test/java/org/apache/flume/sink/TestAvroSink.java: Loading...
  13. flume-ng-sdk/pom.xml: Loading...
  14. flume-ng-sdk/src/main/avro/flume.avdl: Loading...
  15. flume-ng-sdk/src/main/java/org/apache/flume/Event.java: Loading...
  16. flume-ng-sdk/src/main/java/org/apache/flume/FlumeException.java: Loading...
  17. flume-ng-sdk/src/main/java/org/apache/flume/FlumeRemoteException.java: Loading...
  18. flume-ng-sdk/src/main/java/org/apache/flume/FlumeTimeoutException.java: Loading...
  19. flume-ng-sdk/src/main/java/org/apache/flume/api/client/NettyAvroRpcClient.java: Loading...
  20. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcCallback.java: Loading...
  21. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClient.java: Loading...
  22. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcClientBuilder.java: Loading...
  23. flume-ng-sdk/src/main/java/org/apache/flume/api/client/RpcResponse.java: Loading...
  24. flume-ng-sdk/src/main/java/org/apache/flume/event/EventBuilder.java: Loading...
  25. flume-ng-sdk/src/main/java/org/apache/flume/event/SimpleEvent.java: Loading...