RAML Server code generation & improved types


#1

Hi all, I’ve been monitoring this project for a while now, but now i’l starting to actually push it into new projects that i work on.

First of all, my vision for RAML is to also have a server-generator. I come from the Microsoft/.NET world, and my goal is to do Web API code generation. That way i’m going to have a “single source of truth” with regards to the API. I’ll be happy to share the code once it’s anyway near ready.

I took this Jukebox API as a sample for a RAML file (https://github.com/mulesoft/raml-tutorial-200/blob/master/jukebox-api.raml). What i’m missing is a strongly typed return schema. Specifically, there is a collection resource type, and there is a /songs method whose get request returns all songs, but the response only gives an example, instead of stating that an array of songs will be returned. Am I missing something? Is that possible in RAML ?

Perhaps this is only a concern for a non-dynamic (or less-dynamic) language such as C#, but I see no reason not to require/allow all types get a formal name (instead of seeing repetition in enums all over, for example)


#2

Ho @alonweiss - are you using the newly announced tooling around RAML for .net (RAML.net) :smiley:


#3

@alonweiss I’d like to add that there is some discussion in the new topic areas around SDK generators, in case you are interested in contributing there as well. The goal is to eventually have SDK generators for different languages, as well as server generators. There is a JAX-RS generator now that seems to be pretty good, although I think most of the projects have paused while waiting for the 1.0 spec to get released. The 1.0 spec I believe is going to be bringing in some possible breaking changes as well as a number of enhancements that will hopefully benefit all of us including code generators for SDKs and server side code. Hoping the RAML team will give us some idea of when 1.0 will be finalized, possibly with a review process by us in the community (hint hint) :smiley:


#4

Thanks! I’ll check it right away - it will sure save me some time. I’ll be happy to help/contribute wherever i can.


#5

http://blogs.mulesoft.org/raml-tools-net-developer/


#6

@christian_vogel not sure if I am missing something, but when I click on Blog link at top, the last one I see is the October 2014 about Raml turning 1.0. Is the blog link out of date, no longer updated or are all my browsers messing with me? Given that this link you pasted is a blog link, I would have expected to see it in the Blog link when I go there.


#7

What do you mean @justjacksonn - the link is working for me and directs me to the Post about the RAML.net tooling.


#8

@christian_vogel that link you pasted is fine. But I had no idea about that blog post until you pasted this. The BLOG link at the top of the raml.org site, the last page I see is from October 2014. I would expect that this blog link you pasted would show up when I click the BLOG menu option on the site. For me, it does not. Is that blog page no longer being updated?


#9

Oh I see - the blog post was made by MuleSoft, not from someone out of the RAML community. Let me see if I’ll be able to write up a blog post about it on the raml.org site pointing to the original post from MuleSoft.

Sorry for the confusion.


#10

No problem. Thanks Christian.