aws / aws-sam-cli-app-templates

Apache License 2.0
473 stars 260 forks source link

Feature request: Java Templates should allow users to pick between SDK v1 and v2 #247

Open rli opened 2 years ago

rli commented 2 years ago

Requested through the internal toolkits issue queue

moelasmar commented 2 years ago

Thanks @rli for requesting this feature. Could you please clarify more what do you mean by SDK v1, and V2. Do you mean AWS SDK?

Metrowerks commented 2 years ago

@moelasmar yes it was about the AWS SDK v2

mndeveci commented 2 years ago

Thanks for the request. I haven't checked in detail but looking at the package groupId it looks like they are different. So I wonder if we can still build the same code with V1 and V2 at the same time?

If not then we can think about completely moving to V2 if that is the intention or have alternatives for each (or at least most of) the templates so that users can choose during sam init.

rli commented 2 years ago

no the imports / namespace are different. i'd confirm with the Java SDK team, but i think they'd leaning towards pushing customers to V2, rather than keeping both templates around

mndeveci commented 2 years ago

Sure, if they are pushing for V2, we can update all java templates with them as well.

Metrowerks commented 2 years ago

hi, we are doing SDK v2 so for us whether completely moving to v2 or maintaining both versions won't matter. I mentioned options to select v2 because I thought some other users may have use case to stay with v1, but I see the point to make it completely v2 to motivate users to move to the latest SDK version.

mndeveci commented 2 years ago

Thanks, but my question was about whether we want customers to still use V1 given that we are working on V2 for a while. So depending on the answers we could;

Looking at the feedback, going with option B makes more sense, please let me know your preference.

Metrowerks commented 2 years ago

I'd prefer option C. For us, we don't do anything with V1 anymore. I think if you change everything in the toolkit to v2, and then have the v1 templates in a github repo for users to clone if needed, that'd work.

mndeveci commented 2 years ago

Sure, if that is the case, we can go with option C there. Would you like to contribute this repo and raise a pull request for the changes?

Metrowerks commented 2 years ago

I'd love to but we're in a crunch time to deliver P0 for this year and it has been taking a good amount of time for us to figure out how to set up the project with the SDK's.

btw, this is an out-of-topic question but are there any examples for how to implement lambda handlers in SDK 2 using RequestHandler like with SDK 1? It seems that RequestHandler is still only available in SDK 1?