Skip to end of metadata
Go to start of metadata

Zend Framework: Zend_Service_ChartLyrics Component Proposal

Proposed Component Name Zend_Service_ChartLyrics
Developer Notes http://framework.zend.com/wiki/display/ZFDEV/Zend_Service_ChartLyrics
Proposers Maghiel Dijksman
Zend Liaison TBD
Revision 1.0.4 - 05 August 2010:
  • Updated class list
  • Added new classes to class skeletons and updated existing skeletons
  • Updated use cases with the new entity classes
  • Added use case for adding lyric

1.0.3 - 01 August 2010:

  • As ChartLyrics has updated their API and now supports AddLyric, this has become a requirement for the component.

1.0.2 - 01 August 2010:

  • Updated Overview and Requirements
  • Added five use cases.
  • Updated class list.

1.0.1 - 30 June 2010:

  • Changed capitalization from Zend_Service_Chartlyrics to Zend_Service_ChartLyrics as ChartLyrics changed their name.
  • Limited class skeleton to only a skeleton
  • Added Zend_Service_ChartLyrics_Exception skeleton
  • Added URL to repository at GitHub

1.0 - 29 May 2010: Initial Draft.

(wiki revision: 9)

Table of Contents

1. Overview

Zend_Service_ChartLyrics is a SOAP client wrapper for the ChartLyrics API, using Zend_Soap_Client. By default, API calls with their responses are cached using Zend_Cache.

When this component proposal has made it into the 1.11 release, I will start work on migrating the component to Zend Framework 2.

2. References

3. Component Requirements, Constraints, and Acceptance Criteria

Not much requirements as this component just is a wrapper around a SOAP service.

  • This component will support every method of the ChartLyrics SOAP API
  • This component will not implement Chartlyrics HTTP GET API.
  • This component will support the AddLyric functionality.
  • This component will support caching.

4. Dependencies on Other Framework Components

  • Zend_Soap_Client
  • Zend_Cache

5. Theory of Operation

6. Milestones / Tasks

  • Milestone 1: [DONE] Proposal ...
  • Milestone 2: [DONE] Move proposal to 'Ready for review'
  • Milestone 3: Acceptance by community and move to 'Ready for recommendation'
  • Milestone 4: Write unit tests
  • Milestone 5: Check everything into incubator
  • Milestone 6: Acceptance by community
  • Milestone 7: Unit tests exist, work, and are checked into SVN.
  • Milestone 8: Initial documentation exists.

7. Class Index

  • Zend_Service_ChartLyrics
  • Zend_Service_ChartLyrics_Exception
  • Zend_Service_ChartLyrics_Entity_Lyric
  • Zend_Service_ChartLyrics_Entity_LyricSearchResult
  • Zend_Service_ChartLyrics_Entity_Track
  • Zend_Service_ChartLyrics_Entity_HasTrackInterface

8. Use Cases

UC-01: search for lyrics of the artist Bad Religion and retreive the LyricId and LyricChecksums of these lyrics. Pass the results to

getLyric to retrieve the actual lyrics.

UC-02: Search for lyric of the song Generator by Bad Religion, retreive lyricID and Checksums, and pass to getLyric.
UC-03: search for lyric of Generator by Bad Religion, and directly return the lyric as a result instead of the ID and checksum.

If the lyric cannot be found, return a related lyric to encourage the end-user to add the lyric him/her-self.

UC-04: Same as UC-03, but searchLyricDirect does not return a result if the lyric cannot be found here.
UC-05: Search for lyrics with "talk about the birds" in the text, and return the lyricId and lyricChecksum.
UC-06: Add a lyric to the chartlyrics database

9. Class Skeletons

Labels:
proposal proposal Delete
service service Delete
zend_webservices zend_webservices Delete
api api Delete
chartlyrics chartlyrics Delete
soap soap Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Feb 08, 2011

    Archiving this proposal, feel free to recover it when you want to work on it again. For more details see this email.