Alpakka icon indicating copy to clipboard operation
Alpakka copied to clipboard

Port all modules from the JVM

Open marcpiechura opened this issue 8 years ago • 17 comments

If possible we should port all available modules from the JVM.

  • [x] AMQP
  • [ ] Cassandra
  • [ ] File
  • [ ] MQTT

marcpiechura avatar Nov 13 '16 19:11 marcpiechura

Why should we port all available modules from JVM? .NET world is too different from Java world

alexvaluyskiy avatar Apr 07 '17 14:04 alexvaluyskiy

I'm happy to port the sqs/sns module as I'll be needing this in a project. would a pr be accepted?

SeanFarrow avatar Jun 01 '17 15:06 SeanFarrow

@seanfarrow Sure !

marcpiechura avatar Jun 01 '17 15:06 marcpiechura

Hi Marc, How do we deal with the java/scala dsls, should we port as-is? I notice they use Mokito when mocking things, what mocking framework do you prefer?

From: Marc Piechura [mailto:[email protected]] Sent: Thursday, June 01, 2017 16:34 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

@SeanFarrowhttps://github.com/seanfarrow Sure !

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-305531215, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fpm1IAeapTfLEy53oSNsYsREnK7Wks5r_tnkgaJpZM4KwxU9.

SeanFarrow avatar Jun 01 '17 15:06 SeanFarrow

@seanfarrow I would say stay as close as possible to the jvm version, but if some things don't make sense in .net or need to be handled differently feel free to make those changes.

Regarding mocking, take what you like, we don't use mocking inside the core repo so we don't have a preference.

marcpiechura avatar Jun 01 '17 16:06 marcpiechura

Ok, that’s fine, the only issue is the fact that the jvm version of the sqs stream things uses ElasticMQ which is java only to mock the sqs transport, should we just use the real one? If yes, what account should we use?

From: Marc Piechura [mailto:[email protected]] Sent: Thursday, June 01, 2017 17:31 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

@SeanFarrowhttps://github.com/seanfarrow I would say stay as close as possible to the jvm version, but if some things don't make sense in .net or need to be handled differently feel free to make those changes.

Regarding mocking, take what you like, we don't use mocking inside the core repo so we don't have a preference.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-305548198, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fuEx193LJrUE9qzQvRVQHOatzcD2ks5r_udBgaJpZM4KwxU9.

SeanFarrow avatar Jun 01 '17 16:06 SeanFarrow

Is it possible to have a local instance you can use? If not, just port the tests, try it with some evaluation account and push it without automated tests.

marcpiechura avatar Jun 01 '17 17:06 marcpiechura

The closest to a local instance is using ElasticMQ, let me see if we can run that from java in .net, may require a wcf service.

From: Marc Piechura [mailto:[email protected]] Sent: Thursday, June 01, 2017 18:46 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

Is it possible to have a local instance you can use? If not, just port the tests, try it with some evaluation account and push it without automated tests.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-305567966, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fttY8yjxS7qtST8_822g7ScMPzxyks5r_vjGgaJpZM4KwxU9.

SeanFarrow avatar Jun 01 '17 17:06 SeanFarrow

If it's to complicated, no worries, those connectors don't have the same "guarantees" as the core repo (see also the readme) and therefore don't neccarrily need a proper CI infrastructure.

marcpiechura avatar Jun 01 '17 18:06 marcpiechura

Yes, but the project I’m working on need most things to be tested, so it would be nice to have that! It looks pretty simple anyway, it just requires java installed and java home to be set up. I’ll push without porting the tests first, then port the tests at a later date. We can always leave the pull request open and merge certain things. Cheers Sean.

From: Marc Piechura [mailto:[email protected]] Sent: Thursday, June 01, 2017 19:03 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

If it's to complicated, no worries, those connectors don't have the same "guarantees" as the core repo (see also the readme) and therefore don't neccarrily need a proper CI infrastructure.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-305572623, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fieKoy1uS31i36jd8pl6smb74wXZks5r_vzUgaJpZM4KwxU9.

SeanFarrow avatar Jun 01 '17 18:06 SeanFarrow

Sounds good!

marcpiechura avatar Jun 01 '17 18:06 marcpiechura

Hi,

I’ve got the following scala code I’m trying to convert: Await.result(future, 1.second) mustBe publishResult :: Nil How does this convert to c#/akka streams? Cheers Sean. From: Marc Piechura [mailto:[email protected]] Sent: Thursday, June 01, 2017 19:13 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

Sounds good!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-305575331, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1fpdJRFda4IkS_4WpBZQm0DWSxF3uks5r_v9GgaJpZM4KwxU9.

SeanFarrow avatar Jun 02 '17 15:06 SeanFarrow

Task.Wait(TimeSpan.FromSeconds(1)).Should().BeTrue(); Task.Result.Should().BeEquivalentTo(publishResult);

Maybe the gitter room would be a better place for those questions ;-)

marcpiechura avatar Jun 02 '17 16:06 marcpiechura

Just a thought, should we add some CI around this repo? Given that we have tests, it would be good if we were able ot run things like akka.net does on pr's.

SeanFarrow avatar Jul 08 '17 13:07 SeanFarrow

There's a plan to set CI for Akka.net contrib, which is where this project will be moved, eventually. Right now we're a bit busy maintaining 1.2.3 and preparing for 1.3.0

Arkatufus avatar Jul 08 '17 13:07 Arkatufus

Happy to help maintain this as we’re using/converting a lot of the scala code, if an extra pair of hands would be useful.

From: Gregorius Soedharmo [mailto:[email protected]] Sent: Saturday, July 08, 2017 14:34 To: akkadotnet/Alpakka [email protected] Cc: Sean Farrow [email protected]; Mention [email protected] Subject: Re: [akkadotnet/Alpakka] Port all modules from the JVM (#1)

There's a plan to set CI for Akka.net contrib, which is where this project will be moved, eventually. Right now we're a bit busy maintaining 1.2.3 and preparing for 1.3.0

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/akkadotnet/Alpakka/issues/1#issuecomment-313856212, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABY1flKY9BQkHgt2vQRAIjaLua-wueDNks5sL4VMgaJpZM4KwxU9.

SeanFarrow avatar Jul 08 '17 13:07 SeanFarrow

I've just been looking at this again and noticed the .net version of the sns code uses a string and the jvm version uses a PublishRequest. Should we change this?

By not using a PublishRequest, you lose the ability to provide metadata.

SeanFarrow avatar Oct 07 '23 23:10 SeanFarrow