Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version. Compare with Current  |   View Page History
Under Construction
This proposal is under construction and is not ready for review.

<ac:macro ac:name="unmigrated-inline-wiki-markup"><ac:plain-text-body><![CDATA[

Zend Framework: Zend_Ics Component Proposal

Proposed Component Name Zend_Ics
Developer Notes
Proposers Ben Scholzen
Revision 1.1 - 22 September 2007: Initial proposal (wiki revision: 5)

Table of Contents

1. Overview

Zend_Ical is a component that provides an easy interface to work with ICS calendar files.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

  • This component will handle ICS files from different data sources (filesystem, FTP and webDAV).
  • This component will be able to write data back to ICS files.
  • This component will will strictly follow the RFC 2445.
  • This component will be able to get dates for a given time range.
  • This component will be able to search through calendar data.
  • This component will validate any input before writing it to ICS files.
  • This component will not cache any data using Zend_Cache or the filesystem.

4. Dependencies on Other Framework Components

  • Zend_Exception
  • Zend_Date

5. Theory of Operation

Zend_Ical will take a path or URL to an ICS file as argument for the constructor method and a boolean, which indicates whether the ICS file is write protected or not. Then you can call different methods to gather data from the ICS file or add additional data to it, if it is not write protected. If you try to write to a write protected file, Zend_Ical will throw a Zend_Ical_Exception.

6. Milestones / Tasks

7. Class Index

  • Zend_Ical
  • Zend_Ical_Exception
  • Zend_Ical_Date
  • Zend_Ical_Task
  • Zend_Ical_Source_Exception
  • Zend_Ical_Source_Interface
  • Zend_Ical_Source_Filesystem
  • Zend_Ical_Source_Ftp
  • Zend_Ical_Source_Http

8. Use Cases


Fetching data

9. Class Skeletons


Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.