net.fortuna.ical4j.model.parameter.Cn Java Examples
The following examples show how to use
net.fortuna.ical4j.model.parameter.Cn.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: ICalendarService.java From axelor-open-suite with GNU Affero General Public License v3.0 | 6 votes |
public <T extends Property> T updateUser(T target, ICalendarUser user) { if (user == null || user.getEmail() == null) { return null; } String email = mailto(user.getEmail(), false); String name = user.getName(); if (target instanceof Organizer) { ((Organizer) target).setCalAddress(createUri(email)); } if (target instanceof Attendee) { ((Attendee) target).setCalAddress(createUri(email)); } if (name != null) { target.getParameters().add(new Cn(name)); } return target; }
Example #2
Source File: ICalUtils.java From camel-quarkus with Apache License 2.0 | 5 votes |
protected static Calendar createTestCalendar(ZonedDateTime start, ZonedDateTime end, String summary, String attendee) { // Create a TimeZone TimeZoneRegistry registry = TimeZoneRegistryFactory.getInstance().createRegistry(); String tzId = start.getZone().getId(); TimeZone timezone = registry.getTimeZone(tzId.equals("Z") ? "UTC" : tzId); VTimeZone tz = timezone.getVTimeZone(); // Create the event PropertyList propertyList = new PropertyList(); DateTime ts = new DateTime(true); ts.setTime(0); propertyList.add(new DtStamp(ts)); propertyList.add(new DtStart(toDateTime(start, registry))); propertyList.add(new DtEnd(toDateTime(end, registry))); propertyList.add(new Summary(summary)); VEvent meeting = new VEvent(propertyList); // add timezone info.. meeting.getProperties().add(tz.getTimeZoneId()); // generate unique identifier.. meeting.getProperties().add(new Uid("00000000")); // add attendees.. Attendee dev1 = new Attendee(URI.create("mailto:" + attendee)); dev1.getParameters().add(Role.REQ_PARTICIPANT); dev1.getParameters().add(new Cn(attendee)); meeting.getProperties().add(dev1); // Create a calendar net.fortuna.ical4j.model.Calendar icsCalendar = new net.fortuna.ical4j.model.Calendar(); icsCalendar.getProperties().add(Version.VERSION_2_0); icsCalendar.getProperties().add(new ProdId("-//Events Calendar//iCal4j 1.0//EN")); icsCalendar.getProperties().add(CalScale.GREGORIAN); // Add the event and print icsCalendar.getComponents().add(meeting); return icsCalendar; }
Example #3
Source File: ICalConverter.java From scipio-erp with Apache License 2.0 | 5 votes |
protected static void loadPartyAssignment(Property property, GenericValue partyAssign, Map<String, Object> context) { getPartyUrl(property, partyAssign, context); if (UtilValidate.isEmpty(property.getValue())) { try { // RFC 2445 4.8.4.1 and 4.8.4.3 Value must be a URL property.setValue("MAILTO:[email protected]"); } catch (Exception e) { Debug.logError(e, "Error while setting Property value: ", module); } } ParameterList parameterList = property.getParameters(); replaceParameter(parameterList, toXParameter(partyIdXParamName, partyAssign.getString("partyId"))); replaceParameter(parameterList, new Cn(makePartyName(partyAssign))); replaceParameter(parameterList, toParticipationStatus(partyAssign.getString("assignmentStatusId"))); }
Example #4
Source File: ExternalCalendaringServiceImpl.java From sakai with Educational Community License v2.0 | 5 votes |
/** * Adds attendees to an existing event with a given role * Common logic for addAttendeesToEvent and addChairAttendeestoEvent * * @param vevent the VEvent to add the attendess too * @param attendees list of Users that have been invited to the event * @param role the role with which to add each user * @return the VEvent for the given event or null if there was an error */ protected VEvent addAttendeesToEventWithRole(VEvent vevent, Set<User> attendees, Role role) { if(!isIcsEnabled()) { log.debug("ExternalCalendaringService is disabled. Enable via calendar.ics.generation.enabled=true in sakai.properties"); return null; } //add attendees to event with 'required participant' role if(attendees != null){ for(User u: attendees) { Attendee a = new Attendee(createMailURI(u.getEmail())); a.getParameters().add(role); a.getParameters().add(new Cn(u.getDisplayName())); a.getParameters().add(PartStat.ACCEPTED); a.getParameters().add(Rsvp.FALSE); vevent.getProperties().add(a); } } if(log.isDebugEnabled()){ log.debug("VEvent with attendees:" + vevent); } return vevent; }
Example #5
Source File: ExternalCalendaringServiceImpl.java From sakai with Educational Community License v2.0 | 5 votes |
/** * Adds attendees to an existing event with a given role * Common logic for addAttendeesToEvent and addChairAttendeestoEvent * * @param vevent the VEvent to add the attendess too * @param attendees list of Users that have been invited to the event * @param role the role with which to add each user * @return the VEvent for the given event or null if there was an error */ protected VEvent addAttendeesToEventWithRole(VEvent vevent, Set<User> attendees, Role role) { if(!isIcsEnabled()) { log.debug("ExternalCalendaringService is disabled. Enable via calendar.ics.generation.enabled=true in sakai.properties"); return null; } //add attendees to event with 'required participant' role if(attendees != null){ for(User u: attendees) { Attendee a = new Attendee(createMailURI(u.getEmail())); a.getParameters().add(role); a.getParameters().add(new Cn(u.getDisplayName())); a.getParameters().add(PartStat.ACCEPTED); a.getParameters().add(Rsvp.FALSE); vevent.getProperties().add(a); } } if(log.isDebugEnabled()){ log.debug("VEvent with attendees:" + vevent); } return vevent; }
Example #6
Source File: ICalFormatTest.java From wildfly-camel with Apache License 2.0 | 5 votes |
private Calendar createTestCalendar() throws ParseException { // Create a TimeZone TimeZoneRegistry registry = TimeZoneRegistryFactory.getInstance().createRegistry(); TimeZone timezone = registry.getTimeZone("America/New_York"); VTimeZone tz = timezone.getVTimeZone(); // Start Date is on: April 1, 2013, 9:00 am java.util.Calendar startDate = new GregorianCalendar(); startDate.setTimeZone(timezone); startDate.set(java.util.Calendar.MONTH, java.util.Calendar.APRIL); startDate.set(java.util.Calendar.DAY_OF_MONTH, 1); startDate.set(java.util.Calendar.YEAR, 2013); startDate.set(java.util.Calendar.HOUR_OF_DAY, 17); startDate.set(java.util.Calendar.MINUTE, 0); startDate.set(java.util.Calendar.SECOND, 0); // End Date is on: April 1, 2013, 13:00 java.util.Calendar endDate = new GregorianCalendar(); endDate.setTimeZone(timezone); endDate.set(java.util.Calendar.MONTH, java.util.Calendar.APRIL); endDate.set(java.util.Calendar.DAY_OF_MONTH, 1); endDate.set(java.util.Calendar.YEAR, 2013); endDate.set(java.util.Calendar.HOUR_OF_DAY, 21); endDate.set(java.util.Calendar.MINUTE, 0); endDate.set(java.util.Calendar.SECOND, 0); // Create the event PropertyList propertyList = new PropertyList(); propertyList.add(new DtStamp("20130324T180000Z")); propertyList.add(new DtStart(new DateTime(startDate.getTime()))); propertyList.add(new DtEnd(new DateTime(endDate.getTime()))); propertyList.add(new Summary("Progress Meeting")); VEvent meeting = new VEvent(propertyList); // add timezone info.. meeting.getProperties().add(tz.getTimeZoneId()); // generate unique identifier.. meeting.getProperties().add(new Uid("00000000")); // add attendees.. Attendee dev1 = new Attendee(URI.create("mailto:[email protected]")); dev1.getParameters().add(Role.REQ_PARTICIPANT); dev1.getParameters().add(new Cn("Developer 1")); meeting.getProperties().add(dev1); Attendee dev2 = new Attendee(URI.create("mailto:[email protected]")); dev2.getParameters().add(Role.OPT_PARTICIPANT); dev2.getParameters().add(new Cn("Developer 2")); meeting.getProperties().add(dev2); // Create a calendar net.fortuna.ical4j.model.Calendar icsCalendar = new net.fortuna.ical4j.model.Calendar(); icsCalendar.getProperties().add(Version.VERSION_2_0); icsCalendar.getProperties().add(new ProdId("-//Events Calendar//iCal4j 1.0//EN")); icsCalendar.getProperties().add(CalScale.GREGORIAN); // Add the event and print icsCalendar.getComponents().add(meeting); return icsCalendar; }
Example #7
Source File: TestSendIcalMessage.java From openmeetings with Apache License 2.0 | 4 votes |
public void simpleInvitionIcalLink() { // Create a TimeZone TimeZoneRegistry registry = TimeZoneRegistryFactory.getInstance().createRegistry(); TimeZone timezone = registry.getTimeZone("America/Mexico_City"); VTimeZone tz = timezone.getVTimeZone(); // Start Date is on: April 1, 2008, 9:00 am java.util.Calendar startDate = new GregorianCalendar(); startDate.setTimeZone(timezone); startDate.set(java.util.Calendar.MONTH, java.util.Calendar.APRIL); startDate.set(java.util.Calendar.DAY_OF_MONTH, 1); startDate.set(java.util.Calendar.YEAR, 2008); startDate.set(java.util.Calendar.HOUR_OF_DAY, 9); startDate.set(java.util.Calendar.MINUTE, 0); startDate.set(java.util.Calendar.SECOND, 0); // End Date is on: April 1, 2008, 13:00 java.util.Calendar endDate = new GregorianCalendar(); endDate.setTimeZone(timezone); endDate.set(java.util.Calendar.MONTH, java.util.Calendar.APRIL); endDate.set(java.util.Calendar.DAY_OF_MONTH, 1); endDate.set(java.util.Calendar.YEAR, 2008); endDate.set(java.util.Calendar.HOUR_OF_DAY, 13); endDate.set(java.util.Calendar.MINUTE, 0); endDate.set(java.util.Calendar.SECOND, 0); // Create the event String eventName = "Progress Meeting"; DateTime start = new DateTime(startDate.getTime()); DateTime end = new DateTime(endDate.getTime()); VEvent meeting = new VEvent(start, end, eventName); // add timezone info.. meeting.getProperties().add(tz.getTimeZoneId()); // generate unique identifier.. Uid uid = new Uid(randomUUID().toString()); meeting.getProperties().add(uid); // add attendees.. Attendee dev1 = new Attendee(URI.create("mailto:[email protected]")); dev1.getParameters().add(Role.REQ_PARTICIPANT); dev1.getParameters().add(new Cn("Developer 1")); meeting.getProperties().add(dev1); Attendee dev2 = new Attendee(URI.create("mailto:[email protected]")); dev2.getParameters().add(Role.OPT_PARTICIPANT); dev2.getParameters().add(new Cn("Developer 2")); meeting.getProperties().add(dev2); // Create a calendar net.fortuna.ical4j.model.Calendar icsCalendar = new net.fortuna.ical4j.model.Calendar(); icsCalendar.getProperties().add( new ProdId("-//Events Calendar//iCal4j 1.0//EN")); icsCalendar.getProperties().add(CalScale.GREGORIAN); icsCalendar.getProperties().add(Version.VERSION_2_0); // Add the event and print icsCalendar.getComponents().add(meeting); Organizer orger = new Organizer(URI.create("[email protected]")); orger.getParameters().add(new Cn("Sebastian Wagner")); meeting.getProperties().add(orger); icsCalendar.getProperties().add(Method.REQUEST); log.debug(icsCalendar.toString()); ByteArrayOutputStream bout = new ByteArrayOutputStream(); CalendarOutputter outputter = new CalendarOutputter(); try { outputter.output(icsCalendar, bout); iCalMimeBody = bout.toByteArray(); sendIcalMessage(); } catch (Exception e) { log.error("Error", e); } }
Example #8
Source File: ExternalCalendaringServiceImpl.java From sakai with Educational Community License v2.0 | 4 votes |
/** * {@inheritDoc} */ public VEvent createEvent(CalendarEvent event, Set<User> attendees, boolean timeIsLocal) { if(!isIcsEnabled()) { log.debug("ExternalCalendaringService is disabled. Enable via calendar.ics.generation.enabled=true in sakai.properties"); return null; } VTimeZone tz = getTimeZone(timeIsLocal); //start and end date DateTime start = new DateTime(getStartDate(event.getRange()).getTime()); DateTime end = new DateTime(getEndDate(event.getRange()).getTime()); //create event incl title/summary VEvent vevent = new VEvent(start, end, event.getDisplayName()); //add timezone vevent.getProperties().add(tz.getTimeZoneId()); //add uid to event //could come from the vevent_uuid field in the calendar event, otherwise from event ID. String uuid = null; if(StringUtils.isNotBlank(event.getField("vevent_uuid"))) { uuid = event.getField("vevent_uuid"); } else { uuid = event.getId(); } vevent.getProperties().add(new Uid(uuid)); //add sequence to event //will come from the vevent_sequnece field in the calendar event, otherwise skip it String sequence = null; if(StringUtils.isNotBlank(event.getField("vevent_sequence"))) { sequence = event.getField("vevent_sequence"); vevent.getProperties().add(new Sequence(sequence)); } //add description to event vevent.getProperties().add(new Description(event.getDescription())); //add location to event vevent.getProperties().add(new Location(event.getLocation())); //add organiser to event if(StringUtils.isNotBlank(event.getCreator())) { String creatorEmail = sakaiProxy.getUserEmail(event.getCreator()); URI mailURI = createMailURI(creatorEmail); Cn commonName = new Cn(sakaiProxy.getUserDisplayName(event.getCreator())); Organizer organizer = new Organizer(mailURI); organizer.getParameters().add(commonName); vevent.getProperties().add(organizer); } //add attendees to event with 'required participant' role vevent = addAttendeesToEvent(vevent, attendees); //add URL to event, if present String url = null; if(StringUtils.isNotBlank(event.getField("vevent_url"))) { url = event.getField("vevent_url"); Url u = new Url(); try { u.setValue(url); vevent.getProperties().add(u); } catch (URISyntaxException e) { //it doesnt matter, ignore it } } if(log.isDebugEnabled()){ log.debug("VEvent:" + vevent); } return vevent; }
Example #9
Source File: ExternalCalendaringServiceImpl.java From sakai with Educational Community License v2.0 | 4 votes |
/** * {@inheritDoc} */ public VEvent createEvent(CalendarEvent event, Set<User> attendees, boolean timeIsLocal) { if(!isIcsEnabled()) { log.debug("ExternalCalendaringService is disabled. Enable via calendar.ics.generation.enabled=true in sakai.properties"); return null; } VTimeZone tz = getTimeZone(timeIsLocal); //start and end date DateTime start = new DateTime(getStartDate(event.getRange()).getTime()); DateTime end = new DateTime(getEndDate(event.getRange()).getTime()); //create event incl title/summary VEvent vevent = new VEvent(start, end, event.getDisplayName()); //add timezone vevent.getProperties().add(tz.getTimeZoneId()); //add uid to event //could come from the vevent_uuid field in the calendar event, otherwise from event ID. String uuid = null; if(StringUtils.isNotBlank(event.getField("vevent_uuid"))) { uuid = event.getField("vevent_uuid"); } else { uuid = event.getId(); } vevent.getProperties().add(new Uid(uuid)); //add sequence to event //will come from the vevent_sequnece field in the calendar event, otherwise skip it String sequence = null; if(StringUtils.isNotBlank(event.getField("vevent_sequence"))) { sequence = event.getField("vevent_sequence"); vevent.getProperties().add(new Sequence(sequence)); } //add description to event vevent.getProperties().add(new Description(event.getDescription())); //add location to event vevent.getProperties().add(new Location(event.getLocation())); //add organiser to event if(StringUtils.isNotBlank(event.getCreator())) { String creatorEmail = sakaiProxy.getUserEmail(event.getCreator()); URI mailURI = createMailURI(creatorEmail); Cn commonName = new Cn(sakaiProxy.getUserDisplayName(event.getCreator())); Organizer organizer = new Organizer(mailURI); organizer.getParameters().add(commonName); vevent.getProperties().add(organizer); } //add attendees to event with 'required participant' role vevent = addAttendeesToEvent(vevent, attendees); //add URL to event, if present String url = null; if(StringUtils.isNotBlank(event.getField("vevent_url"))) { url = event.getField("vevent_url"); Url u = new Url(); try { u.setValue(url); vevent.getProperties().add(u); } catch (URISyntaxException e) { //it doesnt matter, ignore it } } if(log.isDebugEnabled()){ log.debug("VEvent:" + vevent); } return vevent; }