camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bilgin Ibryam <bibr...@gmail.com>
Subject Re: Regarding mail reading
Date Fri, 18 Nov 2011 23:04:10 GMT
You need to have something like this in your doInBackground method instead:

        main = new Main();
        main.enableHangupSupport();
        main.addRouteBuilder(new MyRouteBuilder());
        main.run();

Bilgin

On Fri, Nov 18, 2011 at 6:20 PM, Ketan Barapatre
<ketanbarapatre@gmail.com> wrote:
>
> Thank You for reply.
>
> I did two things but not getting any result.
>
> 1. Created Simple UI with JButton and Created
>
> class MailPoller  public class MailPoller extends javax.swing.SwingWorker{
>
>       public Object doInBackground() throws Exception{
>
>          try {
>
>            camelContext.addRoutes(new RouteBuilder() {
>
>                @Override
>                public void configure() throws Exception {
>                    from("imaps://imap.gmail.com?
> username=myusername@gmail.com&password=mypassword"
>                            +
> "&delete=false&unseen=true&consumer.delay=60000").to("log:newmail");
>                    System.out.println("Configured");
>
>                }
>            });
>            camelContext.start();
>
>        } catch (Exception ex) {
>            Logger.getLogger(MailPoller.class.getName()).log(Level.SEVERE,
> null, ex);
>        }
>       }
> }
>
>
> 2 .
>
> class MainExample {
>      .......
>      .......
>      .......
>    private static class MyRouteBuilder extends RouteBuilder {
>
>        @Override
>        public void configure() throws Exception {
>            from("imaps://imap.gmail.com?username=myusername@gmail.com&password=mypassword"
>                    +
> "&delete=false&unseen=true&consumer.delay=60000").process(new
> Processor() {
>
>                public void process(Exchange exchange) throws Exception {
>                    System.out.println("Invoked timer at " + new Date());
>                }
>            });
>        }
>    }
>
>       .......
> }
>
> Please guide me.
>
> On 11/18/11, Claus Ibsen <claus.ibsen@gmail.com> wrote:
> > Hi
> >
> > You need to keep your main thread running. The start() on CamelContext
> > is a non blocking operation.
> >
> > See this FAQ
> > http://camel.apache.org/running-camel-standalone-and-have-it-keep-running.html
> >
> >
> > On Thu, Nov 17, 2011 at 7:35 PM, Ketan Barapatre
> > <ketanbarapatre@gmail.com> wrote:
> >> Hello Bilgin
> >>
> >> I read SSL and Enable POP and IMAP in my gmail account.
> >> I have written code for polling mail but not getting any result. It
> >> must be my mistake somewhere.
> >>
> >> Please help me to correct my code. I want to read mails to complete my
> >> project.
> >>
> >> public class MailPoller {
> >>
> >>    public static void main(String[] args) {
> >>        try {
> >>            CamelContext myCamelContext = new DefaultCamelContext();
> >>            RouteBuilder routeBuilder = new RouteBuilder(myCamelContext)
{
> >>
> >>                @Override
> >>                public void configure() throws Exception {
> >>
> >> from("imaps://imap.gmail.com?username=myusername@gmail.com&password=mypassword"
> >>                            +
> >> "&delete=false&unseen=true").to("log:newmail");
> >>                }
> >>            };
> >>
> >>            myCamelContext.start();
> >>
> >>        } catch (Exception ex) {
> >>            Logger.getLogger(MailPoller.class.getName()).log(Level.SEVERE,
> >> null, ex);
> >>        }
> >>    }
> >> }
> >>
> >> On 11/11/11, Bilgin Ibryam <bibryam@gmail.com> wrote:
> >>> Hi Ketan,
> >>>
> >>> Please read (again) the SSL section of mail component documentation from
> >>> Camel website and check the example there. Then you have to enable pop
> >>> for
> >>> your gmail account in the settings.
> >>>
> >>> Finally the rout should look like something like this:
> >>>
> >>> pop3s://pop.gmail.com?username=....
> >>>
> >>> or
> >>>
> >>> imaps://imap.gmail.com?username=...
> >>>
> >>> notice the S in the schemas
> >>>
> >>>
> >>> HTH
> >>> Bilgin
> >>>
> >>>
> >>> On Thu, Nov 10, 2011 at 3:22 PM, Ketan Barapatre
> >>> <ketanbarapatre@gmail.com>wrote:
> >>>
> >>>> Hello All,
> >>>>
> >>>> To poll the mail. I tried following code
> >>>>
> >>>> CamelContext myCamelContext = new DefaultCamelContext();
> >>>>  //final String url = "imap://
> >>>> imap.gmail.com?username=myusername@gmail.com&password=mypassword";
> >>>>  //final String url = "smtp://
> >>>> smtp.gmail.com:465?password=mypassword&username=myusername@gmail.com";
> >>>>  final String url = "pop3://myusername@gmail.com?password=mypassword";
> >>>> Endpoint endpoint = myCamelContext.getEndpoint(url);
> >>>>  System.out.println(" endpoint " + endpoint);
> >>>>
> >>>> RouteBuilder routeBuilder = new RouteBuilder(myCamelContext) {
> >>>>  @Override
> >>>> public void configure() throws Exception {
> >>>>    from(url).process(new MyMailProcessor());
> >>>>  }
> >>>> };
> >>>>
> >>>> myCamelContext.addRoutes(routeBuilder);
> >>>>  myCamelContext.start();
> >>>> MyMailProcessor.java
> >>>>
> >>>> public class MyMailProcessor implements Processor {
> >>>>
> >>>>     public void process(Exchange exchng) throws Exception {
> >>>> System.out.println("" + exchng);
> >>>>     }
> >>>> }
> >>>>
> >>>> As i understand when message is read from my Inbox *process* method
of
> >>>> MyMailProcessor executes.
> >>>>
> >>>> Please correct me if i'm wrong. I am very new to this.
> >>>>
> >>>> I am using camel-mail v2.8.2 and NetBeans 7 on Win XP.
> >>>>
> >>>>
> >>>>
> >>>
> >>
> >>
> >> --
> >>
> >> Regards
> >> Ketan Barapatre
> >>
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > FuseSource
> > Email: cibsen@fusesource.com
> > Web: http://fusesource.com
> > Twitter: davsclaus, fusenews
> > Blog: http://davsclaus.blogspot.com/
> > Author of Camel in Action: http://www.manning.com/ibsen/
> >
>
>
> --
>
> Regards
> Ketan Barapatre

Mime
View raw message