Package org.apache.openejb.core.timer

Examples of org.apache.openejb.core.timer.EJBCronTrigger


   @Test(timeout = 5000)
    public void testListDayOfWeekB() throws ParseException {
        String[] dayOfWeeks = { "2,3,4,5", "3,2,4,5", "2,3,4,5,2" };
        for (String dayOfWeek : dayOfWeeks) {
            ScheduleExpression expr = new ScheduleExpression().dayOfWeek(dayOfWeek).hour(23).minute(1).second(59).start(new Date(0));
            EJBCronTrigger trigger = new EJBCronTrigger(expr);
            assertEquals(new GregorianCalendar(2010, 5, 29, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 5, 29, 23, 0, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 5, 30, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 5, 29, 23, 2, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 1, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 1, 23, 0, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 2, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 1, 23, 3, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 6, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 2, 23, 2, 0).getTime()));
        }
    }
View Full Code Here


  @Test(timeout = 5000)
    public void testCompoundListDayOfWeek() throws ParseException {
        String[] dayOfWeeks = { "tue,wed,thu-fri", "wed,thu-fri,tue", "tue,wed,thu,thu-fri,fri,tue"};
        for (String dayOfWeek : dayOfWeeks) {
            ScheduleExpression expr = new ScheduleExpression().dayOfWeek(dayOfWeek).hour(23).minute(1).second(59).start(new Date(0));
            EJBCronTrigger trigger = new EJBCronTrigger(expr);
            assertEquals(new GregorianCalendar(2010, 5, 29, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 5, 29, 23, 0, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 5, 30, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 5, 29, 23, 2, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 1, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 1, 23, 0, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 2, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 1, 23, 3, 0).getTime()));
            assertEquals(new GregorianCalendar(2010, 6, 6, 23, 1, 59).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2010, 6, 2, 23, 2, 0).getTime()));
        }
  }
View Full Code Here

  // invalid day of month
    ScheduleExpression expr = new ScheduleExpression().dayOfMonth(-8).hour(23).minute(1).second(59).start(new Date(0));
   
    boolean parseExceptionThrown = false;
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
   
    // invalid  year
    expr = new ScheduleExpression().year(98).month(5).dayOfMonth(6).hour(2).minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);       
   
    // invalid  month
    expr = new ScheduleExpression().month(-4).dayOfMonth(6).hour(2).minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
    // invalid  days in week
    expr = new ScheduleExpression().month(-4).dayOfWeek(9).hour(2).minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
   
    // invalid  month
    expr = new ScheduleExpression().month("XXXX").dayOfMonth(6).hour(2).minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown)
   
    // invalid  hour
    expr = new ScheduleExpression().dayOfMonth(6).hour("-4").minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
   
    // invalid  hour
    expr = new ScheduleExpression().dayOfMonth(6).hour("24/2").minute(1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
   
    // invalid  minute 
    expr = new ScheduleExpression().dayOfMonth(6).hour(2).minute(-1).second(59).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
    // invalid  second     
    expr = new ScheduleExpression().dayOfMonth(6).hour(2).minute(1).second(-4).start(new Date(0));
    parseExceptionThrown = false;
   
    try {
        new EJBCronTrigger(expr);
    } catch (ParseException e){
        parseExceptionThrown=true;
    }
    assertTrue(parseExceptionThrown);
   
View Full Code Here

      String invalid_day_of_month="2ndXXX,-8";
      ScheduleExpression expr = new ScheduleExpression().dayOfMonth("1stsun,4,6,"+invalid_day_of_month).hour(23).minute(1).second(59).start(new Date(0));
     
      boolean parseExceptionThrown = false;
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
     
     
      // invalid  year
      String invalid_years = "19876,87";
      expr = new ScheduleExpression().year("1999,2012"+invalid_years).month(5).dayOfMonth(6).hour(2).minute(1).second(59).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);       
     
     
      // invalid  month
      String invalid_month = "XXX,14";
      expr = new ScheduleExpression().month("1,2,4,sep,"+invalid_month).dayOfMonth(6).hour(2).minute(1).second(59).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
     
      // invalid  days in week
      String invalid_days_in_week = "8,WEEE";
      expr = new ScheduleExpression().month(5).dayOfWeek("SUN,4,5,"+ invalid_days_in_week).hour(2).minute(1).second(59).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
     
     
     
      // invalid  hours
        String invalid_hours="15,-2";     
     
      expr = new ScheduleExpression().dayOfMonth(6).hour("1,5,9,18,22,"+invalid_hours).minute(1).second(59).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
     
      // invalid  minute 
      String invalid_minutes="61,-4";
      expr = new ScheduleExpression().dayOfMonth(6).hour(2).minute("1,45,58,"+invalid_minutes).second(59).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
     
      // invalid  second  
      String invalid_seconds="61,-4";
      expr = new ScheduleExpression().dayOfMonth(6).hour(2).minute(1).second("1,45,58,"+invalid_seconds).start(new Date(0));
      parseExceptionThrown = false;
     
      try {
          new EJBCronTrigger(expr);
      } catch (ParseException e){
          parseExceptionThrown=true;
      }
      assertTrue(parseExceptionThrown);
   
View Full Code Here

public class EJBCronTriggerTest {

    @Test(timeout = 1000)
    public void testSimpleDate() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().year(2008).month(12).dayOfMonth(1).start(new Date(0));
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);
        Calendar calendar = new GregorianCalendar(2008, 1, 1);
        final Date firstTime = trigger.getFireTimeAfter(calendar.getTime());
        final Date finalTime = trigger.getFinalFireTime();

        // The trigger only fires once so these should be the same
        assertEquals(firstTime, finalTime);

        // Let's make sure that single fire time is what we wanted
View Full Code Here

    }

    @Test(timeout = 1000)
    public void testWeekdaysA() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().year(2008).dayOfWeek("Wed").start(new Date(0));
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);

        // Should fire on January 16th
        Calendar calendar = new GregorianCalendar(2008, 0, 16);
        final Date startTime = new Date(calendar.getTimeInMillis() - 1000);
        assertEquals(calendar.getTime(), trigger.getFireTimeAfter(startTime));

        // And for the last time, on the 31st of December
        calendar = new GregorianCalendar(2008, 11, 31);
        final Date expectedTime = calendar.getTime();
        assertEquals(expectedTime, trigger.getFinalFireTime());
    }
View Full Code Here

    @Test(timeout = 1000)
    public void testIncrementsA() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().year(2008).month(1).dayOfMonth(20)
            .hour("6/3").minute(30).start(new Date(0));
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);

        // Should fire on Sunday, January 20th, first at 6:30
        Calendar calendar = new GregorianCalendar(2008, 0, 20);
        Date startTime = new Date(calendar.getTimeInMillis() - 1000);
        calendar.set(Calendar.HOUR_OF_DAY, 6);
        calendar.set(Calendar.MINUTE, 30);
        assertEquals(calendar.getTime(), trigger.getFireTimeAfter(startTime));

        // Next on 9:30
        startTime = new Date(calendar.getTimeInMillis());
        calendar.set(Calendar.HOUR_OF_DAY, 9);
        assertEquals(calendar.getTime(), trigger.getFireTimeAfter(startTime));

        // Won't be fired after the 20th so it should return null
        calendar = new GregorianCalendar(2008, 0, 21);
        startTime = new Date(calendar.getTimeInMillis());
        assertNull(trigger.getFireTimeAfter(startTime));
    }
View Full Code Here

    }

    @Test(timeout = 1000)
    public void testIncrementsB() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().year(2011).month(5).dayOfMonth(5).hour("23").minute("25/35").start(new Date(0));
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);
        assertEquals(new GregorianCalendar(2011, 4, 5, 23, 25, 0).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2011, 4, 5, 22, 0, 0).getTime()));
    }
View Full Code Here

    }

    @Test(timeout = 1000)
    public void testIncrementsC() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().year(2011).month(5).dayOfMonth(5).hour("*").minute("20/40").start(new GregorianCalendar(2011, 4, 5, 10, 21, 0).getTime());
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);
        assertEquals(new GregorianCalendar(2011, 4, 5, 11, 20, 0).getTime(), trigger.getFireTimeAfter(new GregorianCalendar(2011, 4, 5, 10, 21, 0).getTime()));
    }
View Full Code Here


    @Test(timeout = 1000)
    public void testEndTime() throws ParseException {
        final ScheduleExpression expr = new ScheduleExpression().dayOfMonth(20).dayOfWeek("sat").start(new Date(0));
        final EJBCronTrigger trigger = new EJBCronTrigger(expr);

        // Should not be fired at all since the first Saturday the 20th is in September
        Calendar calendar = new GregorianCalendar(2008, 0, 4);
        trigger.setEndTime(calendar.getTime());
        calendar = new GregorianCalendar(2008, 0, 1);
        assertNull(trigger.getFireTimeAfter(calendar.getTime()));
        //Since we did not specify the start time, the trigger will backward until finding the target time
        //assertNull(trigger.getFinalFireTime());
    }
View Full Code Here

TOP

Related Classes of org.apache.openejb.core.timer.EJBCronTrigger

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.