Hi Kavith, I externalized the credentials in micro-service code and implemented the extension point. I plan to start on OSGI services part once I finalize the remaining small tasks in these sections.
How about tomorrow evening for the next meeting? I have lectures in the morning. So it would be easy if we can arrange the meeting after 2 pm. Thanks and regards Nathiesha On Thu, Aug 11, 2016 at 11:42 AM, Kavith Lokuhewage <kav...@wso2.com> wrote: > Hi Nathiesha, > > How is the progress on remaining tasks? As per the previous update, you > are already done with configuring maven build + creating a basic > micro-service for publishing reports, aren't you? > > The remaining work was to externalize hard coded credentials in > micro-service code, implement the extension point for providing different > JIRA keys to report errors for specific java packages and define an OSGI > service to be able to contribute publishers via other eclipse plugins - if > needed in future. > > It would be great if we can finalize these soon as we are reaching towards > the end of GSOC program. Please suggest a time for a meeting tomorrow. We > can discuss about the issues you are facing - if any - and discuss the plat > to wrap the rest of the work by end of next week. > > 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 Fri, Aug 5, 2016 at 2:06 PM, Kavith Lokuhewage <kav...@wso2.com> wrote: > >> Hi Nathiesha, >> >> Please join the hangout https://hangouts.google.com/hangouts/_/wso2.com/ >> kavith >> >> 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 Fri, Aug 5, 2016 at 11:49 AM, Kavith Lokuhewage <kav...@wso2.com> >> wrote: >> >>> Hi Nathiesha, >>> >>> Great! I have sent you the invitation. >>> >>> 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> >>> >>> ---------- Forwarded message ---------- >>> From: Nathiesha Maddage <nathieshamadd...@gmail.com> >>> Date: Fri, Aug 5, 2016 at 9:36 AM >>> Subject: Re: [Dev] GSoC2016-Contact Development Team Feature >>> To: Kavith Lokuhewage <kav...@wso2.com> >>> >>> >>> Hi Kavith, >>> >>> That time is OK with me. >>> >>> Thanks >>> Nathiesha >>> >>> >>> On Fri, Aug 5, 2016 at 8:01 AM, Kavith Lokuhewage <kav...@wso2.com> >>> wrote: >>> >>>> Hi Nathiesha, >>>> >>>> Shall we have the meeting at 2pm – 3pm today? Please let us know your >>>> availability. >>>> 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 Thu, Aug 4, 2016 at 12:21 PM, Nathiesha Maddage < >>>> nathieshamadd...@gmail.com> wrote: >>>> >>>>> Hi Kavith, >>>>> >>>>> I started with creating a micro service. Thank you for the reference. >>>>> If you can please show me how to host it in the cloud, maybe during >>>>> tomorrow meeting. >>>>> >>>>> Thanks and regards >>>>> >>>>> Nathiesha >>>>> >>>>> On Wed, Aug 3, 2016 at 10:22 AM, Kavith Lokuhewage <kav...@wso2.com> >>>>> wrote: >>>>> >>>>>> Hi Nathiesha, >>>>>> >>>>>> Friday morning seems to work for us. I will send you an invitation >>>>>> shortly. >>>>>> >>>>>> BTW, instead of implementing a JAX-RS service, we can implement a >>>>>> micro service using WSO2 MSF4J 2.0.0. And WSO2 app cloud now supports >>>>>> deploying micro-services on the cloud. >>>>>> >>>>>> Please follow [1] to create a micro service. It has detailed steps >>>>>> with a hello world service sample. Once you define the service structure, >>>>>> you will be able to reuse most of the code from existing publishers. >>>>>> However we have to externalize credentials for JIRA and SMTP to a >>>>>> file. You may use Java Preferences API to do that. >>>>>> >>>>>> For now, test it on your local env. We can directly host the jar in >>>>>> the cloud and get a URL for the service. I can show you how to do it in a >>>>>> quick call if needed. Anyway, local testing is sufficient for now and >>>>>> make >>>>>> sure that the service URL is configurable via eclipse preferences. >>>>>> >>>>>> Thanks, >>>>>> >>>>>> [1] *https://github.com/wso2/msf4j <https://github.com/wso2/msf4j>* >>>>>> >>>>>> *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, Aug 3, 2016 at 8:58 AM, Nathiesha Maddage < >>>>>> nathieshamadd...@gmail.com> wrote: >>>>>> >>>>>>> Hi Kavith, >>>>>>> >>>>>>> I will fork the repo as you have suggested and I got started with >>>>>>> the REST API part. >>>>>>> How about Friday morning for the next meeting? >>>>>>> >>>>>>> Thanks and Regards >>>>>>> >>>>>>> Nathiesha >>>>>>> >>>>>>> On Tue, Aug 2, 2016 at 9:42 PM, Kavith Lokuhewage <kav...@wso2.com> >>>>>>> wrote: >>>>>>> >>>>>>>> Hi Nathiesha, >>>>>>>> >>>>>>>> Nothing wrong with both poms and yeah, pom1.xml will break the >>>>>>>> build. However, I think there's a proper solution to this. >>>>>>>> Take a fork of the developer-studio-kernel repo, add your plugin to >>>>>>>> plugins folder. Keep working on that repo afterwards. This way, after >>>>>>>> finalizing the development, you can directly send a pull request to >>>>>>>> kernel >>>>>>>> repo from your fork. >>>>>>>> Yes, we use the qualifier in versions, in addition to major, minor >>>>>>>> and patch version components. >>>>>>>> >>>>>>>> As we discussed during previous meeting, you can now start working >>>>>>>> on moving email and jira publishing logic to a web app and expose a >>>>>>>> single >>>>>>>> rest API for to invoke them. So, eclipse plugin will call to this rest >>>>>>>> service and only a single publisher will be implemented in the plugin. >>>>>>>> In >>>>>>>> this way, we can get rid of asking users to register on our jira and >>>>>>>> asking >>>>>>>> them to enter their gmail credentials - both which are most likely >>>>>>>> ignored >>>>>>>> by users. We will create a bot jira user and email account and keep >>>>>>>> those >>>>>>>> credentials within the web app it self - and only ask users about their >>>>>>>> contact information (name, email - in case we need to get back - and >>>>>>>> company) when sending the error report. >>>>>>>> >>>>>>>> BTW, we can have another review on this Friday. Please propose a >>>>>>>> time which fits for you. >>>>>>>> >>>>>>>> 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 Tue, Aug 2, 2016 at 8:33 AM, Nathiesha Maddage < >>>>>>>> nathieshamadd...@gmail.com> wrote: >>>>>>>> >>>>>>>>> Hi Kavith, >>>>>>>>> >>>>>>>>> I tried creating the pom.xml by referring to the Developer Studio >>>>>>>>> plugin projects in git hub. Following the same structure as in the >>>>>>>>> github >>>>>>>>> plugin projects. I came up with this, pom1.xml. >>>>>>>>> >>>>>>>>> However since my project is still not under those parent projects >>>>>>>>> as in github, I created another pom2.xml as follows, by removing the >>>>>>>>> parent >>>>>>>>> tag, by adding p2 repositaries and tycho plugin. After fixing couple >>>>>>>>> of >>>>>>>>> errors, I could successfully build the project using pom2.xml. >>>>>>>>> >>>>>>>>> Can you please have a look at the two pom.xml files and tell me if >>>>>>>>> they seem to be OK or if there are any issues in them? If that is OK, >>>>>>>>> I can >>>>>>>>> move to the next milestone of the project. >>>>>>>>> >>>>>>>>> Furthermore I changed the Bundle-Version in the project manifest >>>>>>>>> to 4.2.0.qualifier, because the plugin projects in git hub under >>>>>>>>> Developer >>>>>>>>> studio seem to have that version. I hope that is OK. >>>>>>>>> >>>>>>>>> Thanks for the article on osgi services. I will go through it. >>>>>>>>> >>>>>>>>> Thanks and regards >>>>>>>>> >>>>>>>>> Nathiesha >>>>>>>>> >>>>>>>>> On Mon, Aug 1, 2016 at 8:22 AM, Kavith Lokuhewage <kav...@wso2.com >>>>>>>>> > wrote: >>>>>>>>> >>>>>>>>>> Hi Nathiesha, >>>>>>>>>> >>>>>>>>>> How is the progress on converting project to a maven project? >>>>>>>>>> Please let us know if you face any issues. >>>>>>>>>> >>>>>>>>>> BTW, [1] is a good article on osgi services with eclipse plugins. >>>>>>>>>> We can use them for further decoupling publishers and report >>>>>>>>>> generators. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> >>>>>>>>>> [1] http://www.vogella.com/tutorials/OSGiServices/article.html >>>>>>>>>> >>>>>>>>>> On 29 Jul 2016 5:19 p.m., "Nathiesha Maddage" < >>>>>>>>>> nathieshamadd...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Jasintha and Kavith, >>>>>>>>>>> >>>>>>>>>>> Here is the project plan for the upcoming 3/4 weeks. >>>>>>>>>>> >>>>>>>>>>> *July 30th-1st Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Add and configure pom.xml >>>>>>>>>>> - Use Maven tycho plugin >>>>>>>>>>> - Build project using Maven >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *2nd Aug-6th Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Write a REST web service to publish errors, deploy in >>>>>>>>>>> tomcat and testing. >>>>>>>>>>> - Add options for the current plugin project to use above >>>>>>>>>>> web service >>>>>>>>>>> - Add current project classes and methods to be comply with >>>>>>>>>>> above changes >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *7th Aug-11th Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Define an extension point of the plugin >>>>>>>>>>> - Add methods to get the registered plugins and their >>>>>>>>>>> Project keys, to maintain a map >>>>>>>>>>> - Add methods to group errors under their required plugins >>>>>>>>>>> - Change the publisher methods to create multiple issues in >>>>>>>>>>> Jira >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *12th Aug -15th Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Improve ErrorPublisher interfaces >>>>>>>>>>> - Write OSGI services for ErrorPublisher interfaces >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *16th Aug – 17th Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Create Feature Project using the plugin >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> * 18th Aug – 20th Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Refine the code >>>>>>>>>>> - Fix bugs >>>>>>>>>>> - Testing >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> *21st Aug – 22nd Aug* >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> - Documentation >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks and regards >>>>>>>>>>> >>>>>>>>>>> Nathiesha >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Fri, Jul 29, 2016 at 9:48 AM, Nathiesha Maddage < >>>>>>>>>>> nathieshamadd...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi all, >>>>>>>>>>>> >>>>>>>>>>>> Here are the minutes of the meeting I had yesterday (28/07/16) >>>>>>>>>>>> with Jasintha and Kavith. >>>>>>>>>>>> >>>>>>>>>>>> During the meeting the current project progress was discussed >>>>>>>>>>>> and suggestions were made to improve and finalize the development >>>>>>>>>>>> of the >>>>>>>>>>>> project. Listed below are the key points discussed during the >>>>>>>>>>>> meeting. >>>>>>>>>>>> >>>>>>>>>>>> 1. Instructions were given on how to add pom.xml, to >>>>>>>>>>>> change its fields to match with the project , to use Maven tycho >>>>>>>>>>>> plugin and >>>>>>>>>>>> to build the project using maven. >>>>>>>>>>>> >>>>>>>>>>>> 2. Suggestions were made on creating and improving >>>>>>>>>>>> interfaces like ErrorPublisher and ReportGenerator, and how to >>>>>>>>>>>> call the >>>>>>>>>>>> publish method of all the registered publishers using an iterator >>>>>>>>>>>> in the >>>>>>>>>>>> main controller class. >>>>>>>>>>>> >>>>>>>>>>>> 3. We planned to add another option for the user, where >>>>>>>>>>>> he does not have any gmail and jira credentials, but a remote >>>>>>>>>>>> server would >>>>>>>>>>>> take care of publishing the error using a common general account. >>>>>>>>>>>> For that >>>>>>>>>>>> I was asked to write a REST web service that would handle this >>>>>>>>>>>> procedure, >>>>>>>>>>>> and to deploy it in tomcat for testing. Possibility of using micro >>>>>>>>>>>> services >>>>>>>>>>>> for this was also discussed. >>>>>>>>>>>> >>>>>>>>>>>> 4. We planned to add multiple project keys for the jira >>>>>>>>>>>> create issue option where required, and to assign the project key >>>>>>>>>>>> based on >>>>>>>>>>>> the plugin that is responsible for the error. For that purpose, it >>>>>>>>>>>> was >>>>>>>>>>>> suggested to create an extension point of the project, so other >>>>>>>>>>>> plugins can >>>>>>>>>>>> extend it and define their own project key. Using this all the >>>>>>>>>>>> plugins that >>>>>>>>>>>> have extended the error reporter plugin and their respective >>>>>>>>>>>> project keys >>>>>>>>>>>> can be fetched, and a map can be maintained, to be used during the >>>>>>>>>>>> error >>>>>>>>>>>> reporting process. >>>>>>>>>>>> >>>>>>>>>>>> 5. To expose the Publisher classes, OSGI services will >>>>>>>>>>>> be introduced to the project. >>>>>>>>>>>> >>>>>>>>>>>> 6. It was suggested to create a feature by adding this >>>>>>>>>>>> plugin. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Furthermore instructions were given on the documentation >>>>>>>>>>>> required for the project, and time frame for documentation was >>>>>>>>>>>> suggested. >>>>>>>>>>>> And I was asked to send a project plan for the upcoming 3 weeks. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> Thanks and regards >>>>>>>>>>>> >>>>>>>>>>>> Nathiesha >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Tue, Jul 26, 2016 at 7:39 AM, Nathiesha Maddage < >>>>>>>>>>>> nathieshamadd...@gmail.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Kavith, >>>>>>>>>>>>> >>>>>>>>>>>>> I accepted the invitation. >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks and regards >>>>>>>>>>>>> Nathiesha >>>>>>>>>>>>> >>>>>>>>>>>>> On Mon, Jul 25, 2016 at 8:42 PM, Kavith Lokuhewage < >>>>>>>>>>>>> kav...@wso2.com> 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 < >>>>>>>>>>>>>> nathieshamadd...@gmail.com> 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 < >>>>>>>>>>>>>>> kav...@wso2.com> 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 < >>>>>>>>>>>>>>>> kav...@wso2.com> 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 < >>>>>>>>>>>>>>>>> nathieshamadd...@gmail.com> 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 < >>>>>>>>>>>>>>>>>> nathieshamadd...@gmail.com> 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 < >>>>>>>>>>>>>>>>>>> nathieshamadd...@gmail.com> 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 Dev@wso2.org http://wso2.org/cgi-bin/mailman/listinfo/dev