Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reflection #61

Closed
oberstet opened this issue Mar 15, 2014 · 13 comments

Comments

@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Mar 15, 2014

@oberstet

This comment has been minimized.

@oberstet oberstet mentioned this issue Jul 2, 2014
@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Jul 2, 2014

Router procedures:

  1. wamp.reflection.declare : an app can "declare" metadata for a procedure/topic at the router
  2. wamp.reflection.describe : an app can retrieve metadata for a procedure/topic from the router
  3. wamp.reflection.list: an app can retrieve a list of procedures/topics which fulfill provided metadata criteria
@oberstet oberstet added this to the backlog milestone Aug 27, 2015
@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Oct 31, 2015

from the Hybi list, pointing out some unclear/missing aspects:

> Sometimes, the spec is misleading. E.g.:
> 
> 
>         13.3.12
>         <https://tools.ietf.org/html/draft-oberstet-hybi-tavendo-wamp-02#section-13.3.12>.
>         Procedure Reflection also talks about topic reflection.
> 
> 
>         or
> 
> 
>         wamp.reflection.topic.list- where is the list coming from? How are topics persisted? Or
>         does it list only those previously defined? - Actually why not,
>         maybe that's where my "topic registration is"?
> 
>           or
> 
>         wamp.reflection.topic.describeand wamp.reflect.describe- what is the difference between the two?
> 
>         wamp.reflect.define- how do I specify if I want to define procedure or topic? Or
>         should the information be stored in the definition itself?

and two use cases:

>         The meta api and reflection is a very important aspect of a good SOA gateway/router/hub.
> 
>         It is important for me because (as specs points out):
> 
>           o  documentation
> 
>             o  discoverability (what applications are registered, what functionalities they offer)
> 
>             o  generating stubs and proxies (for Qt objects, generic UI for procedures and events)
@sehoffmann

This comment has been minimized.

Copy link

@sehoffmann sehoffmann commented Nov 21, 2015

I want to point out that one should also consider authorization in regards to this feature. Some metainformation maybe must not be available to every peer but only to some specific ones with a high enough clearance. E.g in a classic frontend-backend scenario, metainformations about backend services shall only be available to other backend services but not to regular users.

@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Nov 21, 2015

Authorization is router specific (an implementation detail). This is mentioned in the spec. Crossbar.io will allow you to control authorization to WAMP meta API using it's built in authorization mechanisms.

@sehoffmann

This comment has been minimized.

Copy link

@sehoffmann sehoffmann commented Nov 21, 2015

Yeah but while designing this feature we have to make sure that there are ways how one can possibly configure authorization regarding this feature.

I don't think you have explicitely mentioned it in this issue here, but are there supossed to be a set of general procedures and a set of uris with the topic embedded in the uri itself? The latter would provide sufficient means to realize authorization.

@samson84

This comment has been minimized.

Copy link

@samson84 samson84 commented Dec 16, 2016

Hi, I have created a topic in the OpenAPI community also related to the PUBSUB and RPC communication model documentation. See above.

It could be so good that this issue can be solved somehow. If there is anything that I can help you, please let me know.

@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Mar 18, 2017

@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Mar 18, 2017

Quoting:

I made the TypedAutobahn repository public not long ago. You can find it on GitHub.
There are a few things that are missing: regarding features, there is currently no support for publisher role.
Regarding other stuff: some work on deployment needs to be done: the project currently targets Node (since it uses export/import syntax). A build that creates a version that is browser-friendly should be set. Also, a package for npm/bower/NuGet should be created and published automatically on builds.
I should probably open GitHub issues regarding these. Any help on these or on anything else would be appreciated!

@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Jun 6, 2017

Besides Swagger, in the REST world, there is RAML http://raml.org/

@oberstet

This comment has been minimized.

@oberstet oberstet removed this from the backlog milestone Feb 21, 2018
@oberstet oberstet added this to the spec-new-features milestone Mar 3, 2018
@oberstet

This comment has been minimized.

Copy link
Member Author

@oberstet oberstet commented Sep 1, 2018

closing as implementation defined. eg crossbarfx has a tracing API (that partially relates to this), and it has upcoming support for schema-based strong typing (via flatbuffers).

@oberstet oberstet closed this Sep 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.