I have a query in my usecase. Please help me to solve.
This is my scenario :
I have to do API versioning. I am using REST APIs with Restlet framework. I am confused how to implement the versioning in Java Source code.
If my API looks like this : http://localhost:8080/example.com/v2/hello
Then In my source code how to map the version with appropriate functionality?
For example :
If(version == 1) {//Do Version 1 Source Code}
else If(version == 2) {//Do Version 2 Source Code}
else If(version == 3) {//Do Version 3 Source Code} ………..
If I did like this, Then why we are going for Versioning. We can implement Manually Right? And also If I have to add some 100 versions, then the code looks uglier and it becomes lengthier.
I get confused how to map in Source Code. Please Clarify my doubt.
I have read that we can use annotations for handling API versioning. But I don't know what are the annotations available in restlet framework. Please let me know.
Regards,
Geetha.
Another approach I have seen is just providing backwards compatibility where it matters or where there are changes. This would be similar to how a library works. You try to limit things that need to do if-def on version number. Usually only 2 versions are maintained simultaneously. v2 still supports the requests of v1, but when v3 is released v1 features are gone.
I am sure there are other methods.
Edit: https://www.google.com/search?q=stackoverflow+api+versioning