Hi Supun,

Since there are no further comments on this thread, I would encourage you to 
start working on the GSoC proposal. Just start a proposal on google melegenge 
portal, make it publicly readable and share it on the dev list for comments. 

Suresh
On Mar 17, 2014, at 3:24 PM, Suresh Marru <[email protected]> wrote:

> Thanks Supun for taking the initiative. I echo Shameera that this seem to be 
> a good working stop-gap strategy. But I am not knowledgable enough to judge 
> on this topic and would like to listen critical feedback from others.
> 
> Suresh
> 
> On Mar 17, 2014, at 2:58 PM, Shameera Rathnayaka <[email protected]> 
> wrote:
> 
>> Hi Supun, 
>> 
>> This is great, I too found this $scope.apply()[1] would solve our issue . 
>> And i was going to follow this[2] and come up with a sample demo but you 
>> already have done it :) (didn't check it, will do).  For now we can wrap 
>> exiting javaScript client as angular service and use it inside the angular. 
>> But for long run It would be good to use Thrift generated JS client instead 
>> exiting JS client. @Sanchit and all WDYT?
>> 
>> [1] 
>> https://github.com/angular/angular.js/wiki/When-to-use-$scope.$apply%28%29 
>> [2] http://jimhoskins.com/2012/12/17/angularjs-and-apply.html
>> 
>> 
>> Thanks, 
>> Shameera.
>> 
>> 
>> 
>> 
>> On Tue, Mar 18, 2014 at 12:07 AM, Supun Nakandala 
>> <[email protected]> wrote:
>> Hi All,
>> 
>> I was able to do successful POC on the $subject (the source code is 
>> available at [1]). I implemented a simple thrift API (thrift descriptor [2]) 
>> for echo function. The server side was implemented in java and for the 
>> client side I used javascript.
>> 
>> Important points WRT to thrift
>>    ->Thrift javascript client can be used only against a http server. So I 
>> wrapped the EchoServiceHandler.java[3] inside EchoServlet.java[4] and 
>> deployed in tomcat server.
>>    ->Thrift client sdk currently supports only AJAX based communication.
>> 
>> Important points WRT to thrift client and angular integration
>>    ->Thrift js client can be used for the communication with the server 
>> within angular. But the problem is, since thrift client is not part of 
>> angular, when we do the ajax communication and update the model the changes 
>> will not be updated in the DOM. The reason is angular is not aware of the 
>> events triggered outside of the framework. But this can be overcome by 
>> wrapping thrift client inside an angular service and using promises in 
>> angular to notify the success of ajax calls and then manually updating the 
>> DOM.
>> 
>> The thrift client that I created for this service can be found at[5]. This 
>> thrift client is wrapped inside this angular service[6] and that service is 
>> used in controller [7]. I have also attached screen shots of the demo.
>> 
>> Hope Shameera, Sanchit, Viknes or Vijayendra can provide feedback on this 
>> POC and evaluate whether this POC is sound enough to guaranty that web based 
>> experiment builder can be integrated with the thrift client sdk.
>> 
>> Thank you.
>> Supun Nakandala
>> 
>> [1] - https://github.com/scnakandala/echo_service
>> [2] - https://github.com/scnakandala/echo_service/blob/master/Echo.thrift
>> [3] - 
>> https://github.com/scnakandala/echo_service/blob/master/src/echo/EchoServiceHandler.java
>> [4] - 
>> https://github.com/scnakandala/echo_service/blob/master/src/echo/EchoServlet.java
>> [5] - 
>> https://github.com/scnakandala/echo_service/blob/master/WebContent/Web/app/lib/echo_service/echo_client.js
>> 
>> [6] - 
>> https://github.com/scnakandala/echo_service/blob/master/WebContent/Web/app/js/services.js
>> 
>> [7] - 
>> https://github.com/scnakandala/echo_service/blob/master/WebContent/Web/app/js/controllers.js
>> 
>> 
>> 
>> 
>> 
>> -- 
>> Best Regards,
>> Shameera Rathnayaka.
>> 
>> email: shameera AT apache.org , shameerainfo AT gmail.com
>> Blog : http://shameerarathnayaka.blogspot.com/
> 

Reply via email to