Uploaded image for project: 'mdsal'
  1. mdsal
  2. MDSAL-666

Reserve class namespace for RPC definitions

    XMLWordPrintable

Details

    • Task
    • Status: Resolved
    • Medium
    • Resolution: Done
    • None
    • 8.0.0
    • Binding codegen

    Description

      Integration of RFC7950 action statement has shown that generating a @FunctionalInterface definition for the invocation is nicely composable with lambdas – i.e. much better than the RpcService interface we are generating these days.

      As a first step towards a solution, reserve the SchemaTree identifier implied by rpc statement. This changes behaviour when we have:

       

      grouping foo;
      
      rpc foo;

      Where we currently generate: 

      • a Foo, representing the grouping
      • FooInput and FooOutput for RPC's input and output

      i.e. 'rpc foo' does not assert its entitlement to Foo as per being a schema tree statement – which means there is no conflict with the grouping. It does assert the corresponding package name (.foo.input), which is a potential secondary conflict.

      With this change we will generate a Foo$G for the grouping and nothing will be generated for Foo, as that name now belongs to 'rpc foo' instead of 'grouping foo'.

      Attachments

        Issue Links

          # Subject Branch Project Status CR V

          Activity

            People

              rovarga Robert Varga
              rovarga Robert Varga
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: