You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by "Nawaid Shamim (JIRA)" <ji...@apache.org> on 2017/07/11 14:07:00 UTC

[jira] [Updated] (BEAM-2581) KinesisClientProvider interface needs to be public

     [ https://issues.apache.org/jira/browse/BEAM-2581?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Nawaid Shamim updated BEAM-2581:
--------------------------------
    Description: 
Using Beam to read from kinesis stream. `KinesisIO` provides two overloaded methods to provided AWS credential or AWSKinesisClient - `withClientProvider` as described on [here](https://beam.apache.org/documentation/sdks/javadoc/2.0.0/)

{code}
There's also possibility to start reading using arbitrary point in time - in this case you need to provide Instant object:
 p.apply(KinesisIO.read()
     .from("streamName", instant)
     .withClientProvider(new KinesisClientProvider() {
                        @Override
                        public AmazonKinesis get() {
                            return null;
                        }
      })
  .apply( ... ) // other transformations
{code}

The above code requires org.apache.beam.sdk.io.kinesis.KinesisClientProvider interface to be public.



  was:
Using Beam to read from kinesis stream. `KinesisIO` provides two overloaded methods to provided AWS credential or AWSKinesisClient - `withClientProvider` as described on [here](https://beam.apache.org/documentation/sdks/javadoc/2.0.0/)


 public class MyCustomKinesisClientProvider implements KinesisClientProvider {
   {@literal @}Override
   public AmazonKinesis get() {
     // set up your client here
   }
 }
 
Usage is pretty straightforward:

{code}

{noformat}

There's also possibility to start reading using arbitrary point in time - in this case you need to provide Instant object:
 p.apply(KinesisIO.read()
     .from("streamName", instant)
     .withClientProvider(new KinesisClientProvider() {
                        @Override
                        public AmazonKinesis get() {
                            return null;
                        }
      })
  .apply( ... ) // other transformations
{code}

The above code requires org.apache.beam.sdk.io.kinesis.KinesisClientProvider interface to be public.




> KinesisClientProvider interface needs to be public
> --------------------------------------------------
>
>                 Key: BEAM-2581
>                 URL: https://issues.apache.org/jira/browse/BEAM-2581
>             Project: Beam
>          Issue Type: Bug
>          Components: sdk-java-core
>    Affects Versions: 2.0.0
>            Reporter: Nawaid Shamim
>            Assignee: Davor Bonaci
>            Priority: Minor
>
> Using Beam to read from kinesis stream. `KinesisIO` provides two overloaded methods to provided AWS credential or AWSKinesisClient - `withClientProvider` as described on [here](https://beam.apache.org/documentation/sdks/javadoc/2.0.0/)
> {code}
> There's also possibility to start reading using arbitrary point in time - in this case you need to provide Instant object:
>  p.apply(KinesisIO.read()
>      .from("streamName", instant)
>      .withClientProvider(new KinesisClientProvider() {
>                         @Override
>                         public AmazonKinesis get() {
>                             return null;
>                         }
>       })
>   .apply( ... ) // other transformations
> {code}
> The above code requires org.apache.beam.sdk.io.kinesis.KinesisClientProvider interface to be public.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)