seznam / euphoria

Euphoria is an open source Java API for creating unified big-data processing flows. It provides an engine independent programming model which can express both batch and stream transformations.
Apache License 2.0
82 stars 11 forks source link

[euphoria-hadoop] SequenceFileSink builder #244

Closed mareksimunek closed 6 years ago

mareksimunek commented 6 years ago

Breaking change because constructor of SequenceFileSink is now private. Consider to which version of euphoria to put it.

dmvk commented 6 years ago

I think we squeeze this into 0.8 release, although it is a breaking change.

mareksimunek commented 6 years ago

I marked constructors as deprecated so it can be in 0.8 release and we can make them private it in next version.

mareksimunek commented 6 years ago

I redesigned builder API as we discussed to be same as in another classes and to force user to set mandatory fields

SequenceFileSink
        .of(KeyClass, ValueClass)
        .outputPath(outputDir)
        (.withCompression( CompressionClass, CompressionType) )
        (.withConfiguration(conf) )
        .build();

In brackets are optional setters.

dmvk commented 6 years ago

good job! 👍