Download Shareware and Freeware Software for Windows, Linux, Macintosh, PDA

line Home  |  About Us  |  Link To Us  |  FAQ  |  Contact

Serving Software Downloads in 976 Categories, Downloaded 29.618.202 Times

iCal::Parser 1.14

  Date Added: January 15, 2010  |  Visits: 617

iCal::Parser

Report Broken Link
Printer Friendly Version


Product Homepage
Download (90 downloads)



iCal::Parser is a Perl module to parse iCalendar files into a data structure. SYNOPSIS use iCal::Parser my $parser=iCal::Parser->new(); my $hash=$parser->parse($file); $parser->parse($another_file); my $combined=$parser->calendar; my $combined=iCal::Parser->new->parse(@files); my $combined=iCal::Parser->new->parse_files(@files); my $combined=iCal::Parser->new->parse_strings(@strings); This module processes iCalendar (vCalendar 2.0) files as specified in RFC 2445 into a data structure. It handles recurrences (RRULEs), exclusions (EXDATEs), event updates (events with a RECURRENCE-ID), and nested data structures (ATTENDEES and VALARMs). It currently ignores the VTIMEZONE, VJOURNAL and VFREEBUSY entry types. The data structure returned is a hash like the following: { calendars=>[%cal, ...], events=>{yyyy=>{mm=>{dd}=>{UID=>%event}} todos=>[%todo, ...] } That is, it contains an array of calendar hashes, a hash of events key by year=>month=>day=>eventUID, and an array of todos. Calendars, events and todos are "rolled up" version os the hashes returned from Text::vFile::asData, with dates replaced by DateTime objects. During parsing, events in the input calendar are expanded out into multiple events, one per day covered by the event, as follows: If the event is a one day "all day" event (in ical, the event is 24hrs long, starts at midnight on the day and ends a midnight of the next day), it contains no hour field and the allday field is set to 1. If the event is a recurrence (RRULE), one event per day is created as per the RRULE specification. If the event spans more than one day (the start and end dates are on different days, but does not contain an RRULE), it is expanded into multiple events, the first events end time is set to midnight, subsequent events are set to start at midnight and end at midnight the following day (same as an "allday" event, but the allday field is not set), and the last days event is set to run from midnight to the end time of the original multi-day event. If the event is an update (it contains a RECURRENCE-ID), the original event is updated. If the referenced event does not exist (e.g., it was deleted after the update), then the event is added as a new event. An example of each hash is below..

Requirements: No special requirements
Platforms: Linux
Keyword: Data Day Event Events Files Files Into Icalparser Libraries Parse Perl Module Programming Rrule
Users rating: 0/10

License: Freeware Size: 28.67 KB
USER REVIEWS
More Reviews or Write Review


ICAL::PARSER RELATED
Libraries  -  RPM::Util::Files 0.10
RPM::Util::Files is a Perl module to generate %files list in RPM Specfile. SYNOPSIS use RPM::Util::Files; my $util = RPM::Util::Files->new({ build_root => /var/tmp/some-package-version-root, docs_filters => [ sub { my $entry = shift;...
5.12 KB  
Libraries  -  Template::Tutorial::Datafile 2.15
Template::Tutorial::Datafile is a Perl module for creating Data Output Files Using the Template Toolkit. This tutorial gives an overview of the Template Toolkit, showing in particular how to use it to read and write data files in various...
778.24 KB  
Libraries  -  Config::FreeForm 0.01
Config::FreeForm is a Perl module that provides in-memory configuration data. SYNOPSIS use Config::FreeForm %options; Config::FreeForm provides in-memory configuration data in a free-form manner. Many existing configuration modules attempt...
5.12 KB  
Libraries  -  AppleII::ProDOS 0.08
AppleII::ProDOS is a Perl module created to access files on Apple II ProDOS disk images. SYNOPSIS use AppleII::ProDOS; my $vol = AppleII::ProDOS->open(image.dsk); # Open an existing disk print $vol->catalog; # List files in volume directory...
37.89 KB  
Libraries  -  Finance::IIF 0.20.01
Finance::IIF is a Perl module that can parse and create IIF files for QuickBooks. SYNOPSIS use Finance::IIF; my $iif = Finance::IIF->new( file => "test.iif" ); while ( my $record = $iif->next ) { print( "Header: ", $record->{header}, "n"...
10.24 KB  
Libraries  -  X12::Parser::Readme 0.08
X12::Parser::Readme is a Perl module for understanding configuration (cf) files for X12::Parser. X12 transactions ASC X12 standards define commonly used EDI transactions. The standards define a structure/format for exchange of EDI data. Each...
19.46 KB  
Libraries  -  Archive::TarGzip 0.03
Archive::TarGzip is a Perl module to save and restore files to and from compressed tape archives (tar). SYNOPSIS ###### # Subroutine Interface # use Archive::TarGzip qw(parse_header tar untar); $tar_file = tar(@file, @options); $tar_file...
96.26 KB  
Libraries  -  Archive::Zip 1.20
Archive::Zip is a Perl module which provides an interface to ZIP archive files. SYNOPSIS # Create a Zip file use Archive::Zip qw( :ERROR_CODES :CONSTANTS ); my $zip = Archive::Zip->new(); # Add a directory my $dir_member =...
174.08 KB  
Libraries  -  Video::Info::ASF 0.993
Video::Info::ASF is a Perl module for ASF files for attributes like: -video codec -audio codec -frame height -frame width -frame count and more! SYNOPSIS use Video::Info::ASF; my $video; $video =...
634.88 KB  
Libraries  -  App::Modular::Module::Events 0.1.2
App::Modular::Module::Events is a Perl module with event handling for App::Modular compatible applications. SYNOPSIS #################################################################### package App::Modular::Module::Me; use base...
16.38 KB  
NEW DOWNLOADS IN PROGRAMMING, LIBRARIES
Programming  -  FLEX-db Digital Asset Manager 3.0.9
FLEX-db - an enterprise Digital Asset Manager (DAM). It ingests and links metadata with files, creates thumbnails, and processes files using business rules. FLEX-db has a JSP client, Java app server for file input and output and an EJB metadata...
21.57 MB  
Programming  -  Libicom 0.9.0
The libicom library is a character based dynamicly linked library for Linux. It is used to remotely control the Icom IC-R8500 wide band receiver via an RS232 link. All call and return parameters to the control functions are character string based....
20.48 KB  
Programming  -  dotdesktop 0.3
Dotdesktop library provides ability to parse desktop entry file and access the information in a convenient way. Desktop entry file format is defined by freedesktop.org, it is used to describe information about an application such as the name and...
327.68 KB  
Programming  -  Cedalion for Linux 0.2.6
Cedalion is a programming language that allows its users to add new abstractions and define (and use) internal DSLs. Its innovation is in the fact that it uses projectional editing to allow the new abstractions to have no syntactic limitations.
471.04 KB  
Programming  -  libyasl 0.2
Libyasl is a C++ class library to easily realize TCP/UDP/Multicast clientsand servers in IPv4 and IPv6 environments under GNU/Linux systems.
143.36 KB  
Libraries  -  wolfSSL 3.11.0
The wolfSSL embedded SSL/TLS library is a lightweight SSL library written in ANSI standard C and targeted for embedded and RTOS environments - primarily because of its small size, speed, and feature set. It is commonly used in standard operating...
2.73 MB  
Libraries  -  EuGTK 4.8.9
Makes it easy to develop good- looking, fast, cross-platform programs that run on Linux, OS X, and Windows. Euphoria is a very fast interpreted/compiled language with straight-forward syntax. EuGTK allows programming in a clean, object-oriented...
10.68 MB  
Libraries  -  Linux User Group Library Manager 1.0
The LUG Library Manager is a project to help Linux User Groups start their own library. A LUG library is helpful to the community at large because it increases access to information, and gives everyone the opportunity to become more knowledgeable.
5.35 KB  
Libraries  -  Module::MakefilePL::Parse 0.12
Module::MakefilePL::Parse is a Perl module to parse required modules from Makefile.PL. SYNOPSIS use Module::MakefilePL::Parse; open $fh, Makefile.PL; $parser = Module::MakefilePL::Parse->new( join("", ) ); $info = $parser->required;...
8.19 KB  
Libraries  -  sqlpp 0.06
sqlpp Perl package is a SQL preprocessor. sqlpp is a conventional cpp-alike preprocessor taught to understand SQL ( PgSQL, in particular) syntax specificities. In addition to the standard #define/#ifdef/#else/#endif cohort, provides also...
10.24 KB