On Mon, May 30, 2016 at 10:16 AM, Luca Burgazzoli <lburgazz...@gmail.com> wrote:
> do you mean something like serviceCallRef("myServiceCall") ?
> ---

No you need to provide

- a) name of service to call
- b) reference to configuration of service

a = mandatory
b = optional. As if there is only 1 configuration then use that.



> Luca Burgazzoli
>
>
> On Sun, May 29, 2016 at 9:42 AM, Claus Ibsen <claus.ib...@gmail.com> wrote:
>> On Thu, May 26, 2016 at 7:30 PM, Luca Burgazzoli <lburgazz...@gmail.com> 
>> wrote:
>>> ---
>>> Luca Burgazzoli
>>>
>>>
>>> On Thu, May 26, 2016 at 7:06 PM, Claus Ibsen <claus.ib...@gmail.com> wrote:
>>>> Hi Luca
>>>>
>>>> Yeah its good to get more eyes on this new set of code. When I created
>>>> kubernetes and ribbon there was sure some overlap of code that could
>>>> be shared, but I didn't push for much default/abstract code in
>>>> camel-core because there its new code and I also wanted to see what
>>>> consul, etcd, zookeeper and other distributed systems may
>>>> need/require.
>>>>
>>>> I like the idea of the impl.remote package to have some base
>>>> implementation there.
>>>>
>>>> Your current branch [2] has a good set of reusable code although its
>>>> tied to consul currently, so that would need to be made abstract so it
>>>> can be reuse by kuernetes and maybe also ribbon as well (where it
>>>> makes sense).
>>>
>>> I've removed some consul specific stuffs that I left by mistake, should be
>>> a little tidy now.
>>>
>>> An aspect to take into account is how to make it easy to configure
>>> ServiceCallServerListStrategy in case we use DefaultServiceCallProcessor
>>> maybe something like:
>>>
>>> serviceCall()
>>>     .name("my-service")
>>>     .roundRobinLoadBalancer()
>>>     .consulServerListStrategy()
>>>             .type(Strategy.ON_DEMAND)
>>>             .url("http://consul-host:8500";)
>>>             .dc("west")
>>>         .end()
>>>
>>> Too ugly ?
>>>
>>
>> Yeah possible - its always tricky to find the right balance.
>>
>> I wonder if you may want to do this in the configuration, and then in
>> the routes with serviceCall you then just need to refer to the service
>> name / url to be used - then all the round robin, service list, and so
>> on are configured outside the route in the configuration.
>>
>> We could also leave those in the route DSLs as well so you can
>> override the configuration, so you can use
>>
>> serviceCall().name("foo").consulConfiguraiton().dc("west").end()
>>
>>
>>
>> But then on the other hand if you just want to call a single service
>> you may want to do it all in the route without the configuration.  But
>> if we look at rest-dsl then it separates the configuration from the
>> REST endpoint.
>>
>>
>>
>>
>>
>>>>
>>>> An aspect we haven't added yet could be to find out if we can expose
>>>> some JMX attributes and operations for thise service call EIP as well?
>>>> And then maybe some Camel commands so you can manage/list it from
>>>> karaf and other CLIs. But this part is more "nice to have" and a bit
>>>> "eye candy" but still somewhat cool.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, May 26, 2016 at 4:13 PM, Luca Burgazzoli <lburgazz...@gmail.com> 
>>>> wrote:
>>>>> Hello,
>>>>>
>>>>> I'm playing a little bit with the new ServiceCall EIP by adding support 
>>>>> for
>>>>> consul service discovery and I've committed some code in my own branch 
>>>>> [1].
>>>>>
>>>>> I borrowed most of the code from camel-kubernetes and as it ended up being
>>>>> almost a clone, I've tried to make some base/default classes as what 
>>>>> really
>>>>> make the difference is the implementation of ServiceCallServerListStrategy
>>>>> and ServiceCallLoadBalancer so to add a simple discovery engine you only
>>>>> need to implement your own ServiceCallServerListStrategy and eventually 
>>>>> your
>>>>> own ServiceCallLoadBalancer (i.e. for ribbon).
>>>>>
>>>>> Does it make sense ?
>>>>>
>>>>> [1] https://github.com/lburgazzoli/apache-camel/tree/CAMEL-9989
>>>>> [2] 
>>>>> https://github.com/apache/camel/compare/master...lburgazzoli:CAMEL-9989?expand=1
>>>>>
>>>>> ---
>>>>> Luca Burgazzoli
>>>>
>>>>
>>>>
>>>> --
>>>> Claus Ibsen
>>>> -----------------
>>>> http://davsclaus.com @davsclaus
>>>> Camel in Action 2: https://www.manning.com/ibsen2
>>
>>
>>
>> --
>> Claus Ibsen
>> -----------------
>> http://davsclaus.com @davsclaus
>> Camel in Action 2: https://www.manning.com/ibsen2



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to