Hi Kavith, I accepted the invitation.
Thanks and regards Nathiesha On Mon, Jul 25, 2016 at 8:42 PM, Kavith Lokuhewage <[email protected]> wrote: > Hi Nathiesha, > > I have sent the invitation for the meeting at 2pm-3pm on 28/07/2016 [1]. > > Thanks, > > [1] https://goo.gl/PLEWQd > > > *Kavith Lokuhewage* > Senior Software Engineer > WSO2 Inc. - http://wso2.com > lean . enterprise . middleware > Mobile - +94779145123 > Linkedin <http://www.linkedin.com/pub/kavith-lokuhewage/49/473/419> > Twitter <https://twitter.com/KavithThiranga> > > On Mon, Jul 25, 2016 at 8:13 PM, Nathiesha Maddage < > [email protected]> wrote: > >> Hi Kavith, >> >> How about Thursday evening, for the meeting? I am free after 1 pm. >> >> Thank you for the examples. I was going to refactor the code by >> introducing the interfaces as you suggested during the mid evaluation. But >> I was not sure how to do that. I will try to change the code as given in >> the examples before the next meeting. >> >> I think it is good to start converting the project to a maven project as >> only a few weeks remaining to finalize the project. We can discuss about >> that during the meeting. >> >> Thanks and regards >> >> Nathiesha >> >> On Mon, Jul 25, 2016 at 3:10 PM, Kavith Lokuhewage <[email protected]> >> wrote: >> >>> Hi Nathiesha, >>> >>> I noticed that there are some more pending tasks to restructure the code >>> base as per the discussion we had during last code review. Just putting >>> them down here again, so that you are able to go through again and complete >>> any missing parts. >>> >>> *Introduce interfaces for the each sub component to decouple main >>> controller logic from implementation specific things* >>> >>> For example, right now, the controller class (ErrorReporter) is hardly >>> coupled with EmailSender and RemoteJiraConnector. We can think latter two >>> as error report publishers and introduce an interface called ErrorPublisher >>> as below. >>> >>> public interface ErrorPublisher{ >>> void publish(ReportGenerator reportGen) throws IOException; >>> } >>> >>> And then EmailSender and RemoreJiraConnector classes can be refactored >>> like below. >>> >>> public class EmailPublisher implements ErrorPublisher{ >>> >>> void init () throws IOException{ >>> //init : read preferences for SMTP connection params >>> } >>> >>> // implement publish method >>> void publish(ReportGenerator reportGen) throws IOException{ >>> init(); >>> //send mail >>> } >>> } >>> >>> public class JiraPublisher implements ErrorPublisher{ >>> >>> void init () throws IOException{ >>> //init : read preferences for JIRA resp API connection params >>> } >>> >>> // implement publish method >>> void publish(ReportGenerator reportGen) throws IOException{ >>> init(); >>> //post to JIRA api and create issue >>> } >>> } >>> >>> Finally refactor ErrorReporter class to use only ErrorPublisher >>> interface. Further more, introduce methods to bind/unbind error publishers. >>> >>> public class ErrorReporter { >>> Map<String, ErrorPublisher> registeredPublishers; >>> >>> public void addPublisher (String id, ErrorPublisher publisher){ >>> registeredPublishers.put(id,publisher); >>> } >>> >>> public void reportError(){ >>> //iterate over all publishers >>> // and call publish() method >>> } >>> } >>> >>> (We can further ErrorReporter class by using OSGI services to let other >>> devstudio plugins to contribute publishers as needed - we can do that later >>> as time permits) >>> >>> For another example, currently you have used a class >>> called ReportGenerator to generate the report in plain text and directly >>> used that generator inside main controller. Instead, you can introduce an >>> interface called ReportGenerator and create a class called >>> TextReportGenerator and move the code there - and decouple main controller >>> and let other people add report generators later (say an HTML report >>> generator) as needed. It can be done in same manner as above example I have >>> provided . >>> >>> Once you do above restructuring, we can further improve the code to use >>> OSGI services to decouple these components even further. >>> >>> Finally, I think it is time for us to convert the project to a maven >>> project and use tycho maven plugins for building it. I can assist you with >>> this task - let's discuss this furthermore during the call. The main >>> requirement here is to make this project directly mergable to developer >>> studio repository. Since we are now reaching to the final weeks of GSOC >>> coding period, I think we should concentrate a little more on this task. >>> >>> Please a suggest a time for the meeting so we are able to discuss >>> these in-detail. >>> >>> Thanks, >>> >>> *Kavith Lokuhewage* >>> Senior Software Engineer >>> WSO2 Inc. - http://wso2.com >>> lean . enterprise . middleware >>> Mobile - +94779145123 >>> Linkedin <http://www.linkedin.com/pub/kavith-lokuhewage/49/473/419> >>> Twitter <https://twitter.com/KavithThiranga> >>> >>> On Mon, Jul 25, 2016 at 2:11 PM, Kavith Lokuhewage <[email protected]> >>> wrote: >>> >>>> Hi Nathiesha, >>>> >>>> There were some changes done to preference API since Eclipse Mars. I >>>> suspect that the root cause for the issue should be it. I will go through >>>> the changes we did in Developer Studio to fix issues with new pref API and >>>> confirm you whether it is the root cause or not. >>>> >>>> Meanwhile, please suggest a time for another meeting this week - >>>> probably on Thursday or Friday. We will go through the complete >>>> implementation to verify that everything is in order. >>>> I went through the code and have some comments too. I will put them in >>>> github it self. >>>> >>>> Thanks, >>>> >>>> *Kavith Lokuhewage* >>>> Senior Software Engineer >>>> WSO2 Inc. - http://wso2.com >>>> lean . enterprise . middleware >>>> Mobile - +94779145123 >>>> Linkedin <http://www.linkedin.com/pub/kavith-lokuhewage/49/473/419> >>>> Twitter <https://twitter.com/KavithThiranga> >>>> >>>> On Wed, Jul 20, 2016 at 10:20 AM, Nathiesha Maddage < >>>> [email protected]> wrote: >>>> >>>>> Hi all, >>>>> >>>>> I started unit testing with InfoCollector and Startup Classes, and >>>>> created a few unit tests using JUnit. >>>>> >>>>> Regarding the progress of the project, I am currently working on the >>>>> ReportArchive module. The ReportArchive module currently displays all the >>>>> sent error reports to the user in a window, and I am working on adding a >>>>> context menu option for each error report to inquire the current status of >>>>> the issue. >>>>> >>>>> Regarding the Preference page, I tried creating a Input Dialog, that >>>>> would open up for the very first time the plugin reports an error to the >>>>> user. This dialog would ask the user to fill values to compulsory fields >>>>> like Jira Username and Password, and it would store these values in the >>>>> preference page as well, for future use. >>>>> >>>>> I tried to save the user entered values in Input dialog, to the >>>>> preference page >>>>> using Activator.getDefault().getPreferenceStore().setValue() method. This >>>>> method would set the user entered values in respective fields of the >>>>> preference page, but that is just temporary. These values disappear from >>>>> the preference page the next time I run it. Only the default set values by >>>>> the code and the values that I enter in the preference page there itself >>>>> would retain permanently. I tried to fix this for a couple of days and >>>>> tried almost every solution I could find in the internet regarding this. >>>>> >>>>> Have you encountered a situation like this where you have to set the >>>>> values in preference page through code? Any idea whether this is possible >>>>> and if so how to do it would be of big help! >>>>> >>>>> Best regards >>>>> >>>>> Nathiesha >>>>> >>>>> >>>>> On Thu, Jul 7, 2016 at 6:31 AM, Nathiesha Maddage < >>>>> [email protected]> wrote: >>>>> >>>>>> Hi all, >>>>>> >>>>>> Regarding the current status of the project, I am working on the >>>>>> development of the report Archive module, where the user can view the >>>>>> previously sent error reports and also the current status of those >>>>>> issues. >>>>>> Meanwhile I thought to look into the testing part of the project as well. >>>>>> Is their any special testing framework used in Developer Studio testing, >>>>>> that I need to adopt? I though to use JUnit. Is it OK? >>>>>> >>>>>> Regards >>>>>> >>>>>> Nathiesha >>>>>> >>>>>> On Tue, Jun 28, 2016 at 9:34 AM, Nathiesha Maddage < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> I downloaded and tried running the Data Analytics Server . Currently >>>>>>> I am going through the DAS documentation and the REST API. Is it >>>>>>> possible >>>>>>> to post data using the REST API? As I noticed, it only allows to >>>>>>> retrieve >>>>>>> data from the DAS. >>>>>>> >>>>>>> Thanks and regards >>>>>>> >>>>>>> Nathiesha >>>>>>> >>>>>> >>>>>> >>>>> >>>> >>> >> >
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
