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/ >
