Search in sources :

Example 1 with ValidationException

use of net.fortuna.ical4j.model.ValidationException in project openhab1-addons by openhab.

the class Util method storeToDisk.

public static void storeToDisk(String calendarId, String filename, Calendar calendar) {
    File cacheFile = getCacheFile(calendarId, filename);
    try {
        FileOutputStream fout = new FileOutputStream(cacheFile);
        CalendarOutputter outputter = new CalendarOutputter();
        outputter.setValidating(false);
        outputter.output(calendar, fout);
        fout.flush();
        fout.close();
    } catch (IOException e) {
        log.error("cannot store event '{}' to disk (path={}): {}", filename, cacheFile.getAbsoluteFile(), e.getMessage());
    } catch (ValidationException e) {
        log.error("cannot store event '{}' to disk (path={}): {}", filename, cacheFile.getAbsoluteFile(), e.getMessage());
    }
}
Also used : ValidationException(net.fortuna.ical4j.model.ValidationException) FileOutputStream(java.io.FileOutputStream) CalendarOutputter(net.fortuna.ical4j.data.CalendarOutputter) IOException(java.io.IOException) File(java.io.File)

Example 2 with ValidationException

use of net.fortuna.ical4j.model.ValidationException in project LAMSADE-tools by LAntoine.

the class Conference method generateCalendarFile.

/**
	 * Generates a vcal file with the conference details with this object's data
	 *
	 * @param filename:
	 *            the path including the name of the file to be generated
	 * @throws IOException
	 * @throws ValidationException
	 * @throws ParserException
	 *
	 * @author Javier Martínez
	 */
public void generateCalendarFile(String filename) throws IOException, ValidationException, ParserException {
    String calFile = filename;
    // start time
    java.util.Calendar startCal = java.util.Calendar.getInstance();
    startCal.setTime(java.sql.Date.valueOf(getStart_date()));
    // end time
    java.util.Calendar endCal = java.util.Calendar.getInstance();
    endCal.setTime(java.sql.Date.valueOf(getEnd_date()));
    String subject = "Conference";
    String description = "A conference with a fee of " + getEntry_fee();
    String hostEmail = "";
    // Creating a new calendar
    net.fortuna.ical4j.model.Calendar calendar = new net.fortuna.ical4j.model.Calendar();
    calendar.getProperties().add(new ProdId("-//Ben Fortuna//iCal4j 1.0//EN"));
    calendar.getProperties().add(Version.VERSION_2_0);
    calendar.getProperties().add(CalScale.GREGORIAN);
    SimpleDateFormat sdFormat = new SimpleDateFormat("yyyyMMdd'T'hhmmss'Z'");
    String strDate = sdFormat.format(startCal.getTime());
    net.fortuna.ical4j.model.Date startDt = null;
    try {
        startDt = new net.fortuna.ical4j.model.Date(strDate);
    } catch (ParseException e) {
        e.printStackTrace();
    }
    long diff = endCal.getTimeInMillis() - startCal.getTimeInMillis();
    int min = (int) (diff / (1000 * 60));
    Dur dur = new Dur(0, 0, min, 0);
    // Creating a meeting event
    VEvent meeting = new VEvent(startDt, dur, subject);
    // This is where you would add a location if there was one
    // meeting.getProperties().add(new Location(location));
    meeting.getProperties().add(new Description());
    try {
        meeting.getProperties().getProperty(Property.DESCRIPTION).setValue(description);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (URISyntaxException e) {
        e.printStackTrace();
    } catch (ParseException e) {
        e.printStackTrace();
    }
    calendar.getComponents().add(meeting);
    FileOutputStream fout = null;
    try {
        fout = new FileOutputStream(calFile);
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    }
    CalendarOutputter outputter = new CalendarOutputter();
    outputter.setValidating(false);
    try {
        outputter.output(calendar, fout);
    } catch (IOException e) {
        e.printStackTrace();
    } catch (ValidationException e) {
        e.printStackTrace();
    }
    System.out.println(meeting);
}
Also used : Dur(net.fortuna.ical4j.model.Dur) VEvent(net.fortuna.ical4j.model.component.VEvent) Description(net.fortuna.ical4j.model.property.Description) ValidationException(net.fortuna.ical4j.model.ValidationException) FileNotFoundException(java.io.FileNotFoundException) IOException(java.io.IOException) URISyntaxException(java.net.URISyntaxException) ProdId(net.fortuna.ical4j.model.property.ProdId) FileOutputStream(java.io.FileOutputStream) ParseException(java.text.ParseException) CalendarOutputter(net.fortuna.ical4j.data.CalendarOutputter) SimpleDateFormat(java.text.SimpleDateFormat)

Example 3 with ValidationException

use of net.fortuna.ical4j.model.ValidationException in project LAMSADE-tools by LAntoine.

the class Tester method main.

public static void main(String[] args) throws SQLException {
    System.setProperty("SWT_GTK3", "0");
    Display display = new Display();
    Shell shell = new Shell(display);
    // shell.setSize(300, 300);
    shell.setText("Conference List");
    GridLayout gridLayout = new GridLayout();
    shell.setLayout(gridLayout);
    shell.setLocation(400, 200);
    shell.layout(true, true);
    final Point newSize = shell.computeSize(SWT.DEFAULT, SWT.DEFAULT, true);
    shell.setSize(new Point(888, 661));
    /*
		 * Initialize Group conferencesInfos which will include : -The Grid data
		 * which will display conferences
		 *
		 * -The fields that will allow the user to add a new conference in the
		 * database
		 */
    Group grpUserDetails = new Group(shell, SWT.NONE);
    GridData gd_grpUserDetails = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
    gd_grpUserDetails.widthHint = 848;
    gd_grpUserDetails.heightHint = 155;
    grpUserDetails.setLayoutData(gd_grpUserDetails);
    grpUserDetails.setText("User Details");
    Label lblFirstname = new Label(grpUserDetails, SWT.NONE);
    lblFirstname.setBounds(10, 26, 70, 15);
    lblFirstname.setText("First Name");
    Label lblNewLabel_1 = new Label(grpUserDetails, SWT.NONE);
    lblNewLabel_1.setBounds(10, 53, 55, 15);
    lblNewLabel_1.setText("Last Name");
    txt_firstname = new Text(grpUserDetails, SWT.BORDER);
    txt_firstname.setBounds(86, 23, 98, 21);
    txt_lastname = new Text(grpUserDetails, SWT.BORDER);
    txt_lastname.setBounds(86, 50, 98, 21);
    /*
		 * Handle the User Info's Search Throws exception if firstname or
		 * lastname is wrong
		 */
    Button btn_searchInfo = new Button(grpUserDetails, SWT.NONE);
    btn_searchInfo.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent arg0) {
            try {
                UserDetails user = GetInfosFromYearbook.getUserDetails(txt_lastname.getText(), txt_firstname.getText());
                txt_function.setText(user.getFunction());
                txt_number.setText(user.getNumber());
                txt_email.setText(user.getEmail());
                txt_group.setText(user.getGroup());
                txt_fax.setText(user.getFax());
                txt_office.setText(user.getOffice());
                txt_city_ud.setText(user.getCity());
                txt_country_ud.setText(user.getCountry());
            } catch (@SuppressWarnings("unused") Exception e) {
                MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
                mb.setText("Error");
                mb.setMessage("Please verify firstname and lastname");
                mb.open();
            }
        }
    });
    btn_searchInfo.setBounds(10, 87, 114, 25);
    btn_searchInfo.setText("Search My Infos");
    Label lbl_function = new Label(grpUserDetails, SWT.NONE);
    lbl_function.setBounds(224, 26, 55, 15);
    lbl_function.setText("Function");
    Label lbl_number = new Label(grpUserDetails, SWT.NONE);
    lbl_number.setBounds(224, 56, 55, 15);
    lbl_number.setText("Phone");
    Label lbl_email = new Label(grpUserDetails, SWT.NONE);
    lbl_email.setBounds(224, 92, 55, 15);
    lbl_email.setText("E-mail");
    Label lbl_group = new Label(grpUserDetails, SWT.NONE);
    lbl_group.setBounds(224, 124, 55, 15);
    lbl_group.setText("Group");
    txt_function = new Text(grpUserDetails, SWT.BORDER);
    txt_function.setBounds(285, 20, 219, 21);
    txt_number = new Text(grpUserDetails, SWT.BORDER);
    txt_number.setBounds(285, 53, 219, 21);
    txt_email = new Text(grpUserDetails, SWT.BORDER);
    txt_email.setBounds(285, 87, 219, 21);
    txt_group = new Text(grpUserDetails, SWT.BORDER);
    txt_group.setBounds(285, 121, 219, 21);
    Label lbl_fax = new Label(grpUserDetails, SWT.NONE);
    lbl_fax.setText("Fax");
    lbl_fax.setBounds(535, 26, 55, 15);
    Label lbl_office = new Label(grpUserDetails, SWT.NONE);
    lbl_office.setText("Office");
    lbl_office.setBounds(535, 59, 55, 15);
    Label lbl_city = new Label(grpUserDetails, SWT.NONE);
    lbl_city.setText("City");
    lbl_city.setBounds(535, 92, 55, 15);
    Label lbl_country = new Label(grpUserDetails, SWT.NONE);
    lbl_country.setText("Country");
    lbl_country.setBounds(535, 124, 55, 15);
    txt_fax = new Text(grpUserDetails, SWT.BORDER);
    txt_fax.setBounds(596, 23, 219, 21);
    txt_office = new Text(grpUserDetails, SWT.BORDER);
    txt_office.setBounds(596, 56, 219, 21);
    txt_city_ud = new Text(grpUserDetails, SWT.BORDER);
    txt_city_ud.setBounds(596, 89, 219, 21);
    txt_country_ud = new Text(grpUserDetails, SWT.BORDER);
    txt_country_ud.setBounds(596, 121, 219, 21);
    Group grp_conferencesInfos = new Group(shell, SWT.NONE);
    GridData gd_conferencesInfos = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
    gd_conferencesInfos.heightHint = 237;
    gd_conferencesInfos.widthHint = 854;
    grp_conferencesInfos.setLayoutData(gd_conferencesInfos);
    grp_conferencesInfos.setText("Conferences");
    Table table = new Table(grp_conferencesInfos, SWT.V_SCROLL);
    table.setBounds(165, 16, 502, 134);
    table.setHeaderVisible(true);
    fillConferenceTable(table);
    Button btn_addNewConf = new Button(grp_conferencesInfos, SWT.NONE);
    btn_addNewConf.setBounds(165, 156, 149, 25);
    btn_addNewConf.setText("Create conference");
    Label lblTitle = new Label(grp_conferencesInfos, SWT.NONE);
    lblTitle.setAlignment(SWT.RIGHT);
    lblTitle.setBounds(25, 16, 50, 15);
    lblTitle.setText("Title");
    Text txt_title = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_title.setBounds(81, 15, 78, 21);
    Label lblUrl = new Label(grp_conferencesInfos, SWT.NONE);
    lblUrl.setAlignment(SWT.RIGHT);
    lblUrl.setText("URL");
    lblUrl.setBounds(25, 45, 50, 15);
    Text txt_url = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_url.setBounds(81, 42, 78, 21);
    Label lblStartDate = new Label(grp_conferencesInfos, SWT.NONE);
    lblStartDate.setAlignment(SWT.RIGHT);
    lblStartDate.setText("Start Date");
    lblStartDate.setBounds(10, 72, 65, 15);
    Text txt_startDate = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_startDate.setBounds(81, 69, 78, 21);
    Label lblEndDate = new Label(grp_conferencesInfos, SWT.NONE);
    lblEndDate.setAlignment(SWT.RIGHT);
    lblEndDate.setText("End Date");
    lblEndDate.setBounds(10, 99, 65, 15);
    Text txt_endDate = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_endDate.setBounds(81, 96, 78, 21);
    Label lblFee = new Label(grp_conferencesInfos, SWT.NONE);
    lblFee.setText("Fee");
    lblFee.setBounds(42, 126, 33, 15);
    Text txt_fee = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_fee.setBounds(81, 123, 78, 21);
    // add news fields
    /*
		 * Label lblCity= new Label(grp_conferencesInfos, SWT.NONE);
		 * lblCity.setAlignment(SWT.RIGHT); lblCity.setBounds(25, 38, 50, 15);
		 * lblCity.setText("City"); Text txt_city = new
		 * Text(grp_conferencesInfos, SWT.BORDER); txt_city.setBounds(81, 35,
		 * 78, 21);
		 */
    Label lblCity = new Label(grp_conferencesInfos, SWT.NONE);
    lblCity.setAlignment(SWT.RIGHT);
    lblCity.setBounds(25, 153, 50, 15);
    lblCity.setText("City");
    Text txt_city = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_city.setBounds(81, 150, 78, 21);
    Label lbladdress = new Label(grp_conferencesInfos, SWT.NONE);
    lbladdress.setAlignment(SWT.RIGHT);
    lbladdress.setBounds(25, 180, 50, 15);
    lbladdress.setText("Address");
    Text txt_address = new Text(grp_conferencesInfos, SWT.BORDER);
    txt_address.setBounds(81, 177, 78, 21);
    // Create new Conference object, assign it values from
    // selection, then pass it function to export to desktop
    // public Conference(int id, String title, String url, LocalDate
    // start_date, LocalDate end_date, double entry_fee)
    Button btnExportEvent = new Button(grp_conferencesInfos, SWT.NONE);
    btnExportEvent.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/M/yyyy");
            TableItem[] ti = table.getSelection();
            if (ti.length == 0) {
            // Put somewhere that an event should be selected
            } else {
                Conference conf = new Conference(ti[0].getText(0), ti[0].getText(1), LocalDate.parse(ti[0].getText(2), formatter), LocalDate.parse(ti[0].getText(3), formatter), Double.parseDouble(ti[0].getText(4)), ti[0].getText(5), ti[0].getText(6));
                try {
                    FileDialog dialog = new FileDialog(shell, SWT.SAVE);
                    dialog.setFilterNames(new String[] { "Calendar Files", "All Files (*.*)" });
                    // Windows
                    dialog.setFilterExtensions(new String[] { "*.ics", "*.*" });
                    switch(Util.getOS()) {
                        case WINDOWS:
                            dialog.setFilterPath("c:\\");
                            break;
                        case LINUX:
                            dialog.setFilterPath("/");
                            break;
                        case MAC:
                            dialog.setFilterPath("/");
                            break;
                        case SOLARIS:
                            dialog.setFilterPath("/");
                            break;
                        default:
                            dialog.setFilterPath("/");
                    }
                    dialog.setFileName("conference.ics");
                    conf.generateCalendarFile(dialog.open());
                } catch (IOException | ValidationException | ParserException e2) {
                    e2.printStackTrace();
                }
            }
        }
    });
    btnExportEvent.setBounds(320, 154, 104, 28);
    btnExportEvent.setText("Export Event");
    /*
		 * Behavior of a click on the add new conference button
		 */
    btn_addNewConf.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent arg0) {
            System.out.println("Appui sur le bouton");
            if (!txt_title.getText().isEmpty() && !txt_url.getText().isEmpty() && !txt_startDate.getText().isEmpty() && !txt_startDate.getText().isEmpty() && !txt_endDate.getText().isEmpty() && !txt_fee.getText().isEmpty()) {
                try {
                    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
                    LocalDate startDate = LocalDate.parse(txt_startDate.getText(), formatter);
                    LocalDate endDate = LocalDate.parse(txt_endDate.getText(), formatter);
                    Conference conf = new Conference(txt_title.getText(), txt_url.getText(), startDate, endDate, Double.parseDouble(txt_fee.getText()), txt_city.getText(), txt_address.getText());
                    ConferenceDatabase.insertInDatabase(conf);
                    /*
						 * Reload the conference table
						 */
                    table.removeAll();
                    fillConferenceTable(table);
                } catch (DateTimeParseException e1) {
                    MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
                    mb.setText("Date format error");
                    mb.setMessage("Please fill the dates in the following format : dd/MM/YYYY");
                    mb.open();
                } catch (SQLException e2) {
                    throw new IllegalStateException(e2);
                }
            } else {
                MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
                mb.setText("Information missing");
                mb.setMessage("Please fill in the information regarding the conference");
                mb.open();
            }
        }
    });
    /*
		 * This group will help the user to see his itinerary into the browser
		 */
    Group grp_map = new Group(shell, SWT.NONE);
    grp_map.setText("Visualize your travel");
    GridData gd_map = new GridData(SWT.LEFT, SWT.CENTER, false, true, 1, 1);
    gd_map.heightHint = 85;
    gd_map.widthHint = 860;
    grp_map.setLayoutData(gd_map);
    Text departure = new Text(grp_map, SWT.BORDER);
    departure.setLocation(101, 22);
    departure.setSize(196, 21);
    Text arrival = new Text(grp_map, SWT.BORDER);
    arrival.setLocation(101, 51);
    arrival.setSize(196, 21);
    Button btnItinerary = new Button(grp_map, SWT.NONE);
    btnItinerary.setText("Validate");
    btnItinerary.setBounds(303, 49, 68, 25);
    Label lblDeparture = new Label(grp_map, SWT.NONE);
    lblDeparture.setAlignment(SWT.RIGHT);
    lblDeparture.setBounds(10, 25, 73, 15);
    lblDeparture.setText("Departure");
    Label lblArrival = new Label(grp_map, SWT.NONE);
    lblArrival.setAlignment(SWT.RIGHT);
    lblArrival.setBounds(10, 54, 73, 15);
    lblArrival.setText("Arrival");
    /*
		 * Behavior of the btnItinerary : Takes the addresses entered in
		 * departure and arrival Texts and call the ItineraryMap class to open
		 * the itinerary into the browser
		 */
    btnItinerary.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent arg0) {
            System.out.println("Appui sur le bouton");
            if (!departure.getText().isEmpty() && !arrival.getText().isEmpty()) {
                try {
                    AddressInfos dep = new AddressInfos(departure.getText());
                    AddressInfos arr = new AddressInfos(arrival.getText());
                    // ItineraryMap itinerary = new
                    // ItineraryMap(dep.getLongitude(),
                    // dep.getLatitude(),arr.getLongitude(),
                    // arr.getLatitude());
                    GoogleItineraryMap itinerary = new GoogleItineraryMap(departure.getText(), arrival.getText());
                    String url = itinerary.setMapUrl();
                    System.out.println(url);
                    itinerary.openMapUrl(url);
                } catch (IllegalArgumentException e) {
                    LOGGER.error("Error : ", e);
                }
            } else {
                MessageBox mb = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
                mb.setText("Infromation missing");
                mb.setMessage("Please fill in the departure and arrival fields");
                mb.open();
            }
        }
    });
    arrival.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            System.out.println("nouvelle valeur = " + ((Text) e.widget).getText());
        }
    });
    departure.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            System.out.println("nouvelle valeur = " + ((Text) e.widget).getText());
        }
    });
    shell.open();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) {
            display.sleep();
        }
    }
    display.dispose();
}
Also used : Group(org.eclipse.swt.widgets.Group) AddressInfos(com.github.lantoine.lamsadetools.map.AddressInfos) ModifyListener(org.eclipse.swt.events.ModifyListener) SQLException(java.sql.SQLException) Label(org.eclipse.swt.widgets.Label) Conference(com.github.lantoine.lamsadetools.conferences.Conference) LocalDate(java.time.LocalDate) Shell(org.eclipse.swt.widgets.Shell) GridLayout(org.eclipse.swt.layout.GridLayout) GoogleItineraryMap(com.github.lantoine.lamsadetools.map.GoogleItineraryMap) ModifyEvent(org.eclipse.swt.events.ModifyEvent) UserDetails(com.github.lantoine.lamsadetools.setCoordinates.UserDetails) Button(org.eclipse.swt.widgets.Button) SelectionEvent(org.eclipse.swt.events.SelectionEvent) Table(org.eclipse.swt.widgets.Table) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) Text(org.eclipse.swt.widgets.Text) Point(org.eclipse.swt.graphics.Point) ValidationException(net.fortuna.ical4j.model.ValidationException) SQLException(java.sql.SQLException) ParserException(net.fortuna.ical4j.data.ParserException) IOException(java.io.IOException) DateTimeParseException(java.time.format.DateTimeParseException) MessageBox(org.eclipse.swt.widgets.MessageBox) DateTimeParseException(java.time.format.DateTimeParseException) GridData(org.eclipse.swt.layout.GridData) DateTimeFormatter(java.time.format.DateTimeFormatter) FileDialog(org.eclipse.swt.widgets.FileDialog) Display(org.eclipse.swt.widgets.Display)

Example 4 with ValidationException

use of net.fortuna.ical4j.model.ValidationException in project zm-mailbox by Zimbra.

the class TimeZoneDefinition method getTimeZone.

/**
     *
     * @return the appropriate iCal4j TimeZone for this TimeZoneDefinition
     */
public TimeZone getTimeZone() {
    if (theZone != null) {
        return theZone;
    }
    if (effectiveRule == null) {
        theZone = new TimeZone(0, TimeZones.UTC_ID);
        return theZone;
    }
    if (!effectiveRule.hasDaylightSaving()) {
        theZone = new TimeZone(effectiveRule.getStandardUtcOffsetMillis(), getTimezoneName());
        return theZone;
    }
    UtcOffset stdOffset = effectiveRule.getStandardUtcOffset();
    UtcOffset dlOffset = effectiveRule.getDaylightUtcOffset();
    PropertyList vtzProps = new PropertyList();
    TzId myTzid = new TzId(getTimezoneName());
    vtzProps.add(myTzid);
    VTimeZone vtz = new VTimeZone(vtzProps);
    Standard stdComp = new Standard();
    stdComp.getProperties().add(effectiveRule.getStandardDtStart());
    stdComp.getProperties().add(effectiveRule.icalStandardRRule());
    TzOffsetFrom offsetFrom = new TzOffsetFrom(dlOffset);
    TzOffsetTo offsetTo = new TzOffsetTo(stdOffset);
    stdComp.getProperties().add(offsetFrom);
    stdComp.getProperties().add(offsetTo);
    Daylight dayComp = new Daylight();
    dayComp.getProperties().add(effectiveRule.getDaylightDtStart());
    dayComp.getProperties().add(effectiveRule.icalDaylightRRule());
    offsetFrom = new TzOffsetFrom(stdOffset);
    offsetTo = new TzOffsetTo(dlOffset);
    dayComp.getProperties().add(offsetFrom);
    dayComp.getProperties().add(offsetTo);
    vtz.getObservances().add(stdComp);
    vtz.getObservances().add(dayComp);
    try {
        vtz.validate(true);
        theZone = new TimeZone(vtz);
    } catch (ValidationException e) {
        if (sLog.isDebugEnabled()) {
            sLog.debug("Problem with property %s - will default to UTC" + this.mpi.toString(), e);
        }
        theZone = new TimeZone(0, TimeZones.UTC_ID);
    }
    theZone = new TimeZone(vtz);
    return theZone;
}
Also used : UtcOffset(net.fortuna.ical4j.model.UtcOffset) VTimeZone(net.fortuna.ical4j.model.component.VTimeZone) TimeZone(net.fortuna.ical4j.model.TimeZone) PropertyList(net.fortuna.ical4j.model.PropertyList) Daylight(net.fortuna.ical4j.model.component.Daylight) ValidationException(net.fortuna.ical4j.model.ValidationException) TzOffsetFrom(net.fortuna.ical4j.model.property.TzOffsetFrom) TzOffsetTo(net.fortuna.ical4j.model.property.TzOffsetTo) VTimeZone(net.fortuna.ical4j.model.component.VTimeZone) TzId(net.fortuna.ical4j.model.property.TzId) Standard(net.fortuna.ical4j.model.component.Standard)

Aggregations

ValidationException (net.fortuna.ical4j.model.ValidationException)4 IOException (java.io.IOException)3 FileOutputStream (java.io.FileOutputStream)2 CalendarOutputter (net.fortuna.ical4j.data.CalendarOutputter)2 Conference (com.github.lantoine.lamsadetools.conferences.Conference)1 AddressInfos (com.github.lantoine.lamsadetools.map.AddressInfos)1 GoogleItineraryMap (com.github.lantoine.lamsadetools.map.GoogleItineraryMap)1 UserDetails (com.github.lantoine.lamsadetools.setCoordinates.UserDetails)1 File (java.io.File)1 FileNotFoundException (java.io.FileNotFoundException)1 URISyntaxException (java.net.URISyntaxException)1 SQLException (java.sql.SQLException)1 ParseException (java.text.ParseException)1 SimpleDateFormat (java.text.SimpleDateFormat)1 LocalDate (java.time.LocalDate)1 DateTimeFormatter (java.time.format.DateTimeFormatter)1 DateTimeParseException (java.time.format.DateTimeParseException)1 ParserException (net.fortuna.ical4j.data.ParserException)1 Dur (net.fortuna.ical4j.model.Dur)1 PropertyList (net.fortuna.ical4j.model.PropertyList)1