all the Isis issues tagged gsoc: https://issues.apache.org/jira/browse/ISIS-742?filter=12326806
On 13 March 2014 14:28, Eshan Sudharaka <[email protected]> wrote: > Hi, > Here I am bit confusing what to choose. I agree with the fact that email > sending task is not enough for summer of code. I also want to implement a > component which is useful for end users. Are there some other ideas that > meets gcos scope. > On 8 Mar, 2014 5:47 PM, "Jeroen van der Wal" <[email protected]> wrote: > > > Apache Camel already has various components [1] for sending and receiving > > mail [2] using a template [3] so why not leverage their infrastructure. > Or > > is this over-achitected? > > We have a specific requirement where we want to use both the excel > service > > and a mail service with a scenario similar to this one: > > - at the first day of the month a user receives an email with an excel > > timesheet template with on each row the days of the month and on each > > column the projects he is assigned to. > > - the user fills in the hours worked for each day and project and sends > the > > sheet back to a designated email address > > - the sheet is processed and the user receives an e-mail with successes > or > > failures of the transactions > > - the user receives a reminder message after 7 days if the sheet was not > > send. > > > > We could extend the ToDo app into a project management app to support > this > > scenario. IMHO the single entity ToDo app doesn't give justice to the > > advanced possibilities of Isis and is missing the demonstration of object > > relationships. But maybe thats a bit off-topic in this discussion. > > > > Just my two cents. > > > > Cheers, > > > > Jeroen > > > > [1] http://camel.apache.org/components.html > > [2] http://camel.apache.org/mail.html > > [3] http://camel.apache.org/stringtemplate.html > > > > > > On Sat, Mar 8, 2014 at 9:08 AM, Dan Haywood < > [email protected] > > >wrote: > > > > > On 8 March 2014 07:48, GESCONSULTOR <[email protected]> wrote: > > > > > > > Hi Eshan. > > > > > > > > In the sense of showing how to use Camel from Isis to send, for > > example, > > > > emails asynchronously, in addition to a more "traditional" service to > > > send > > > > emails directly from the Isis process through Java mail API, etc. > > > > > > > > > > We actually have quite a lot of this done already. > > > > > > There's a project of mine up on github [6] that picks up published > > actions > > > for Camel to process. The bit that's missing is (a) translating these > > > events to an email format, and (b) then sending to a Java mail service. > > > > > > It's not quite clear to me where the responsibility for (a) should be, > > > however. Feels like it would need some sort of EmailTemplate entity; > so > > it > > > could probably be done by a custom payload factory (also already > > supported > > > by the publishing service). > > > > > > ~~~ > > > An alternative architecture, and with many fewer moving parts, would > > simply > > > to use the Quartz scheduler to poll for emails to be sent. The current > > > todo app (about to be released in the 1.4.0 archetype assuming the vote > > > goes through) has the Quartz scheduler pre-configured. > > > > > > > > > > > > > > > > > There are plenty of integration use cases where Camel could be used. > > > > Another one would be for Drools (that can be embedded or executed > over > > a > > > > stand-alone Camel server) [1]. > > > > > > > > Camel can be simply embedded on the project or executed over Apache > > > > ServiceMix [2 ] or JBoss Fuse [3 ] through remote invocation [4]. At > > > least > > > > for one service I find it would be really interesting to use it both > > > > embedded or remotely invoked through Endpoints. > > > > > > > > > > > Lots of interesting architectures here, but the project needs to have a > > > concrete objective (eg sending emails rendered against a template) > > > otherwise there's not enough focus. We should probably enumerate them. > > > > > > a. simply send the email synchronously in the action. This requires a > > > simple domain service to make the JavaMail call > > > b. queue up the email to be sent and picked up by Camel. Camel runs > in a > > > separate webapp; this is how [6] works > > > c. a combination of a and b; the email is sent synchronously, but the > > > domain service embeds Camel to do the processing. > > > d. same as b, but Camel running within the same webapp as Isis rather > > than > > > a separate webapp > > > e. send the email to a service, but it queues up the message. Then use > > > Quartz scheduler to execute a job to actually send asynchronously. > > > f. send an email via the new background service [7] (that uses the > Quartz > > > scheduler under the covers). > > > > > > Given so many options here, my view is that for the requirement to > simply > > > send email, Camel is too heavyweight (even in embedded mode)... I'd opt > > for > > > either (a) or (f). So for a Camel integration we probably need to > think > > of > > > a better use case to support. > > > > > > I guess I'm interested in the project delivering stuff that's useful > for > > > the community to use (reusable services or modules). > > > > > > Dan > > > > > > > > > > > > > Dan had an example about integrating with a Message Queue platform > here > > > > [5]. > > > > > > > > This is just in case you finally have enough time. > > > > > > > > > > > > HTH, > > > > > > > > Oscar > > > > > > > > [ 1] > > > > > > > > > > http://salaboy.com/2011/04/05/drools-in-real-life-droolsjbpm5-server-first-steps/ > > > > [2] http://servicemix.apache.org > > > > [3] http://www.jboss.org/jbossfuse > > > > [4 ] https://camel.apache.org/architecture.html > > > > [5] > http://isis.apache.org/reference/services/publishing-service.html > > > > > > > > > > > [6] https://github.com/danhaywood/camel-isis-pubsubjdo > > > [7] http://isis.apache.org/reference/services/background-service.html > > > > > > > > > > > > > > El 08/03/2014, a las 04:07, Eshan Sudharaka <[email protected]> > > > > escribió: > > > > > > > > > > Hi Oscar, > > > > > Thanks for your ideas on this. What do you mean by general > > > integration.? > > > > > Is it exposing those existing services and new services through > > apache > > > > camel? > > > > > > > > > > Thanks > > > > > > > > > >> On 6 Mar, 2014 7:35 PM, "GESCONSULTOR - Óscar Bou" < > > > > [email protected]> wrote: > > > > >> > > > > >> Hi to all. > > > > >> > > > > >> There can be more general-purpose integrations if we generalize > some > > > > implementation over Apache Camel [1] components [2]. > > > > >> > > > > >> Also, another really useful (and cool ;-) platforms for automation > > > > would be: > > > > >> - Twilio [3] (for voice calls, SMS messaging, etc.). > > > > >> - Zapier [4] (automates more than 250 apps). > > > > >> - ITTT [5] (similar to Zapier). > > > > >> > > > > >> I'm sure there are plenty of scenarios that could benefit the most > > > > "traditional" applications (for example, by integrating with > Evernote, > > > > etc.). > > > > >> > > > > >> [1] https://camel.apache.org > > > > >> [2] https://camel.apache.org/components.html > > > > >> [3] https://www.twilio.com > > > > >> [4] https://zapier.com > > > > >> [5] http://ittt.com > > > > >> > > > > >> > > > > >> > > > > >>> El 06/03/2014, a las 09:09, Dan Haywood < > > > [email protected]> > > > > escribió: > > > > >>> > > > > >>> I'm cc'ing users@ on this, since there might be folk there who > > would > > > > chip > > > > >>> in... > > > > >>> > > > > >>> > > > > >>> > > > > >>>> On 6 March 2014 00:16, Eshan Sudharaka <[email protected]> > > > wrote: > > > > >>>> > > > > >>>> Hi Dan, > > > > >>>> > > > > >>>> I went through some documentation and got some very basic > > > > understanding > > > > >>>> about Apache ISIS. And I build that toDo app and try went > through > > > the > > > > app > > > > >>>> code. > > > > >>>> > > > > >>>> I am interested in developing following Project Idea. > > > > >>>> > > > > >>>> - to build some new off-the-shelf domain services, like the > > current > > > > Excel > > > > >>>> and Word mail merge ones > > > > >>>> > > > > >>>> - eg email > > > > >>>> - eg SMSing > > > > >>>> - eg Drools rules engine > > > > >>>> > > > > >>>> So the idea is to build a generic service which can be used > across > > > > the all > > > > >>>> of apps developing using ISIS. can you please provide some > further > > > > details > > > > >>>> on this. > > > > >>>> > > > > >>>> Is it similar to > > > > >>>> http://isis.apache.org/reference/services/command-context.html? > > > > Providing > > > > >>>> API for get above services. > > > > >>> Yes, it's similar in concept. > > > > >>> > > > > >>> I think the closest existing services are actually the domain > > > services > > > > I > > > > >>> have on my github repo for Word, Excel and String interpolation > > [1], > > > > [2], > > > > >>> [3]. > > > > >>> > > > > >>> I think it'd also be worthwhile providing some domain entities > > > (mapped > > > > to > > > > >>> be persistent with JDO) to represent the domain concepts, for > > example > > > > an > > > > >>> EmailTemplate or SmsMessageTemplate. This could become an > > > all-purpose > > > > >>> "communication channel" module for others to reuse. Note that > > > Estatio > > > > [4] > > > > >>> already provides a Links repo/Link entity that leverages [3]. > > > > >>> > > > > >>> The JDO implementation of the CommandService and > BackgroundService > > > > [4],[5] > > > > >>> (as used by the command-context service that you referenced) has > > > > support > > > > >>> for this with the CommandJdo entity. Similarly the JDO impl of > > > > >>> AuditingService provides an AuditEntryJdo entity [6], and the JDO > > > impl > > > > of > > > > >>> PublishingService provides a PublishedEventJdo entity [7]. So > > there > > > > are > > > > >>> plenty of examples to work from. > > > > >>> > > > > >>> I have less things to say about the Drools rules engine, but I'm > > sure > > > > it'd > > > > >>> be useful. Oscar's project has done some sort of integration, so > > > > perhaps > > > > >>> there are ideas there that could be generalised. Oscar? > > > > >>> > > > > >>> My only concern about this project is whether it is large enough > in > > > > scope > > > > >>> to fill up an entire summer. I wrote the string interpolation > > > service > > > > [3] > > > > >>> in an evening, for example, and the Links/Link service in Estatio > > > only > > > > took > > > > >>> a couple more hours. But maybe an all-purpose comms channel > > module > > > > plus > > > > >>> a rules engine service (with additional entities to administer > the > > > > rules > > > > >>> themselves) might be big enough. > > > > >>> > > > > >>> HTH > > > > >>> Dan > > > > >>> > > > > >>> > > > > >>> [1] https://github.com/danhaywood/isis-domainservice-docx > > > > >>> [2] https://github.com/danhaywood/isis-domainservice-excel > > > > >>> [3] > > > > https://github.com/danhaywood/isis-domainservice-stringinterpolator > > > > >>> [4] https://github.com/estatio/estatio > > > > >>> [5] > > > > >>> > > > > > > > > > > http://isis.apache.org/components/objectstores/jdo/services/command-service-jdo.html > > > > >>> [6] > > > > >>> > > > > > > > > > > http://isis.apache.org/components/objectstores/jdo/services/background-command-service-jdo.html > > > > >>> [7] > > > > >>> > > > > > > > > > > http://isis.apache.org/components/objectstores/jdo/services/auditing-service-jdo.html > > > > >>> [8] > > > > >>> > > > > > > > > > > http://isis.apache.org/components/objectstores/jdo/services/publishing-service-jdo.html > > > > >>> > > > > >>> > > > > >>> > > > > >>>> Thanks > > > > >>>> > > > > >>>> > > > > >>>> On Fri, Feb 28, 2014 at 3:42 PM, Dan Haywood > > > > >>>> <[email protected]>wrote: > > > > >>>> > > > > >>>>> Hi Eshan, > > > > >>>>> > > > > >>>>> Thanks for your interest in GSOC and in Isis itself, of course. > > > > >>>>> > > > > >>>>> We had two students last year, and I mentored them (with > Maurizio > > > as > > > > >>>>> co-mentor); they both built a viewer against the Restful > Objects > > > > >>>> interface > > > > >>>>> [1], [2]. > > > > >>>>> > > > > >>>>> I must admit though that I had intended to skip mentoring a > GSOC > > > > project > > > > >>>>> this year, and I don't think any of the other committers are > > > > interested > > > > >>>>> (speak up if no!) > > > > >>>>> > > > > >>>>> That's not to say I don't have several ideas for projects, for > > > > example: > > > > >>>>> > > > > >>>>> - build a "real-life" app in some suitable domain, along with a > > > > >>>>> semi-academic write-up of their learnings > > > > >>>>> - to would give us another substantial example app, along > with > > > some > > > > >>>>> marketing material about how learnable Isis > > > > >>>>> > > > > >>>>> - documentation: develop screencasts for all the various > features > > > > that we > > > > >>>>> have > > > > >>>>> - cos people would rather watch youtube than read > > > > >>>>> > > > > >>>>> - to build some new off-the-shelf domain services, like the > > current > > > > Excel > > > > >>>>> and Word mail merge ones > > > > >>>>> - eg email > > > > >>>>> - eg SMSing > > > > >>>>> - eg Drools rules engine > > > > >>>>> > > > > >>>>> - to develop an integration with Lucene, for full text-search > > > across > > > > the > > > > >>>>> domain > > > > >>>>> - I don't think this is a full summer's work though > > > > >>>>> > > > > >>>>> - to develop an oAuth integration > > > > >>>>> - probably not a full summer's work though (even though I'm > not > > > > exactly > > > > >>>>> sure what an oAuth integration actually is) > > > > >>>>> > > > > >>>>> - to write a clean-room implementation of a JDO enhancer, as a > > > > >>>> replacement > > > > >>>>> for the DN one, and that ideally integrates with the JRebel > > plugin > > > > >>>>> - not really Isis-specific, but would definitely benefit the > > Isis > > > > >>>>> community > > > > >>>>> > > > > >>>>> - implement "Kemble", our proposed DSL for Isis, using XTend > [3] > > > > >>>>> > > > > >>>>> > > > > >>>>> So do say if any of the above strike you as interesting. > > HOWEVER, > > > > since > > > > >>>>> I'm less that 50:50 about being a mentor this year, I'd need to > > see > > > > some > > > > >>>>> real commitment during the "getting to know you" phase of the > > > > programme > > > > >>>>> before I decide to take it on. > > > > >>>>> > > > > >>>>> HTH > > > > >>>>> Dan > > > > >>>>> > > > > >>>>> > > > > >>>>> [1] https://github.com/DImuthuUpe/ISIS_Android_Viewer > > > > >>>>> [2] https://github.com/bhargavgolla/isisJavaScript/ > > > > >>>>> [3] https://issues.apache.org/jira/browse/ISIS-369 > > > > >>>>> > > > > >>>>> > > > > >>>>> > > > > >>>>> > > > > >>>>>> On 28 February 2014 05:18, Eshan Sudharaka < > > [email protected]> > > > > wrote: > > > > >>>>>> > > > > >>>>>> Dear Members, > > > > >>>>>> > > > > >>>>>> I am a university student studying computer science at > > University > > > > of > > > > >>>>>> Colombo School of Computing, Sri Lanka > > > > >>>>>> <http://ucsc.cmb.ac.lk/>.<http://www.cse.mrt.ac.lk/> I > > > > >>>>>> am interested in submitting a proposal for Google Summer Of > > Code > > > > >>>> 2014. I > > > > >>>>>> am from a Java background and having few experiences of > > frameworks > > > > like > > > > >>>>>> Spring, Hibernate, Struts. It will be really nice If you can > > > provide > > > > >>>> some > > > > >>>>>> guidance on this. (Like how to contribute and existing CR 's > to > > be > > > > >>>>>> implemented ) > > > > >>>>>> -- > > > > >>>>>> *~Thanks & Regards~* > > > > >>>>>> > > > > >>>>>> Eshan Sudharaka > > > > >>>>>> http://esudharaka.blogspot.com/ > > > > >>>> > > > > >>>> > > > > >>>> > > > > >>>> -- > > > > >>>> *~Thanks & Regards~* > > > > >>>> > > > > >>>> Eshan Sudharaka > > > > >>>> http://esudharaka.blogspot.com/ > > > > >> > > > > >> > > > > >> Óscar Bou Bou > > > > >> Responsable de Producto > > > > >> Auditor Jefe de Certificación ISO 27001 en BSI > > > > >> CISA, CRISC, APMG ISO 20000, ITIL-F > > > > >> > > > > >> 902 900 231 / 620 267 520 > > > > >> http://www.twitter.com/oscarbou > > > > >> > > > > >> http://es.linkedin.com/in/oscarbou > > > > >> > > > > >> http://www.GesConsultor.com > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> Este mensaje y los ficheros anexos son confidenciales. Los mismos > > > > contienen información reservada que no puede ser difundida. Si usted > ha > > > > recibido este correo por error, tenga la amabilidad de eliminarlo de > su > > > > sistema y avisar al remitente mediante reenvío a su dirección > > > electrónica; > > > > no deberá copiar el mensaje ni divulgar su contenido a ninguna > persona. > > > > >> Su dirección de correo electrónico junto a sus datos personales > > > constan > > > > en un fichero titularidad de Gesdatos Software, S.L. cuya finalidad > es > > la > > > > de mantener el contacto con Ud. Si quiere saber de qué información > > > > disponemos de Ud., modificarla, y en su caso, cancelarla, puede > hacerlo > > > > enviando un escrito al efecto, acompañado de una fotocopia de su > > D.N.I. a > > > > la siguiente dirección: Gesdatos Software, S.L. , Paseo de la > > Castellana, > > > > 153 bajo - 28046 (Madrid), y Avda. Cortes Valencianas num. 50, 1ºC - > > > 46015 > > > > (Valencia). Asimismo, es su responsabilidad comprobar que este > mensaje > > o > > > > sus archivos adjuntos no contengan virus informáticos, y en caso que > > los > > > > tuvieran eliminarlos. > > > > > > > > > >
