|
1 <?php |
|
2 |
|
3 /** |
|
4 * Zend Framework |
|
5 * |
|
6 * LICENSE |
|
7 * |
|
8 * This source file is subject to the new BSD license that is bundled |
|
9 * with this package in the file LICENSE.txt. |
|
10 * It is also available through the world-wide-web at this URL: |
|
11 * http://framework.zend.com/license/new-bsd |
|
12 * If you did not receive a copy of the license and are unable to |
|
13 * obtain it through the world-wide-web, please send an email |
|
14 * to license@zend.com so we can send you a copy immediately. |
|
15 * |
|
16 * @category Zend |
|
17 * @package Zend_Gdata |
|
18 * @subpackage Books |
|
19 * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) |
|
20 * @license http://framework.zend.com/license/new-bsd New BSD License |
|
21 * @version $Id: VolumeEntry.php 20096 2010-01-06 02:05:09Z bkarwin $ |
|
22 */ |
|
23 |
|
24 /** |
|
25 * @see Zend_Gdata_Entry |
|
26 */ |
|
27 require_once 'Zend/Gdata/Entry.php'; |
|
28 |
|
29 /** |
|
30 * @see Zend_Gdata_Extension_Comments |
|
31 */ |
|
32 require_once 'Zend/Gdata/Extension/Comments.php'; |
|
33 |
|
34 /** |
|
35 * @see Zend_Gdata_DublinCore_Extension_Creator |
|
36 */ |
|
37 require_once 'Zend/Gdata/DublinCore/Extension/Creator.php'; |
|
38 |
|
39 /** |
|
40 * @see Zend_Gdata_DublinCore_Extension_Date |
|
41 */ |
|
42 require_once 'Zend/Gdata/DublinCore/Extension/Date.php'; |
|
43 |
|
44 /** |
|
45 * @see Zend_Gdata_DublinCore_Extension_Description |
|
46 */ |
|
47 require_once 'Zend/Gdata/DublinCore/Extension/Description.php'; |
|
48 |
|
49 /** |
|
50 * @see Zend_Gdata_Books_Extension_Embeddability |
|
51 */ |
|
52 require_once 'Zend/Gdata/Books/Extension/Embeddability.php'; |
|
53 |
|
54 /** |
|
55 * @see Zend_Gdata_DublinCore_Extension_Format |
|
56 */ |
|
57 require_once 'Zend/Gdata/DublinCore/Extension/Format.php'; |
|
58 |
|
59 /** |
|
60 * @see Zend_Gdata_DublinCore_Extension_Identifier |
|
61 */ |
|
62 require_once 'Zend/Gdata/DublinCore/Extension/Identifier.php'; |
|
63 |
|
64 /** |
|
65 * @see Zend_Gdata_DublinCore_Extension_Language |
|
66 */ |
|
67 require_once 'Zend/Gdata/DublinCore/Extension/Language.php'; |
|
68 |
|
69 /** |
|
70 * @see Zend_Gdata_DublinCore_Extension_Publisher |
|
71 */ |
|
72 require_once 'Zend/Gdata/DublinCore/Extension/Publisher.php'; |
|
73 |
|
74 /** |
|
75 * @see Zend_Gdata_Extension_Rating |
|
76 */ |
|
77 require_once 'Zend/Gdata/Extension/Rating.php'; |
|
78 |
|
79 /** |
|
80 * @see Zend_Gdata_Books_Extension_Review |
|
81 */ |
|
82 require_once 'Zend/Gdata/Books/Extension/Review.php'; |
|
83 |
|
84 /** |
|
85 * @see Zend_Gdata_DublinCore_Extension_Subject |
|
86 */ |
|
87 require_once 'Zend/Gdata/DublinCore/Extension/Subject.php'; |
|
88 |
|
89 /** |
|
90 * @see Zend_Gdata_DublinCore_Extension_Title |
|
91 */ |
|
92 require_once 'Zend/Gdata/DublinCore/Extension/Title.php'; |
|
93 |
|
94 /** |
|
95 * @see Zend_Gdata_Books_Extension_Viewability |
|
96 */ |
|
97 require_once 'Zend/Gdata/Books/Extension/Viewability.php'; |
|
98 |
|
99 /** |
|
100 * Describes an entry in a feed of Book Search volumes |
|
101 * |
|
102 * @category Zend |
|
103 * @package Zend_Gdata |
|
104 * @subpackage Books |
|
105 * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) |
|
106 * @license http://framework.zend.com/license/new-bsd New BSD License |
|
107 */ |
|
108 class Zend_Gdata_Books_VolumeEntry extends Zend_Gdata_Entry |
|
109 { |
|
110 |
|
111 const THUMBNAIL_LINK_REL = 'http://schemas.google.com/books/2008/thumbnail'; |
|
112 const PREVIEW_LINK_REL = 'http://schemas.google.com/books/2008/preview'; |
|
113 const INFO_LINK_REL = 'http://schemas.google.com/books/2008/info'; |
|
114 const ANNOTATION_LINK_REL = 'http://schemas.google.com/books/2008/annotation'; |
|
115 |
|
116 protected $_comments = null; |
|
117 protected $_creators = array(); |
|
118 protected $_dates = array(); |
|
119 protected $_descriptions = array(); |
|
120 protected $_embeddability = null; |
|
121 protected $_formats = array(); |
|
122 protected $_identifiers = array(); |
|
123 protected $_languages = array(); |
|
124 protected $_publishers = array(); |
|
125 protected $_rating = null; |
|
126 protected $_review = null; |
|
127 protected $_subjects = array(); |
|
128 protected $_titles = array(); |
|
129 protected $_viewability = null; |
|
130 |
|
131 /** |
|
132 * Constructor for Zend_Gdata_Books_VolumeEntry which |
|
133 * Describes an entry in a feed of Book Search volumes |
|
134 * |
|
135 * @param DOMElement $element (optional) DOMElement from which this |
|
136 * object should be constructed. |
|
137 */ |
|
138 public function __construct($element = null) |
|
139 { |
|
140 $this->registerAllNamespaces(Zend_Gdata_Books::$namespaces); |
|
141 parent::__construct($element); |
|
142 } |
|
143 |
|
144 /** |
|
145 * Retrieves DOMElement which corresponds to this element and all |
|
146 * child properties. This is used to build this object back into a DOM |
|
147 * and eventually XML text for sending to the server upon updates, or |
|
148 * for application storage/persistance. |
|
149 * |
|
150 * @param DOMDocument $doc The DOMDocument used to construct DOMElements |
|
151 * @return DOMElement The DOMElement representing this element and all |
|
152 * child properties. |
|
153 */ |
|
154 public function getDOM($doc = null, $majorVersion = 1, $minorVersion = null) |
|
155 { |
|
156 $element = parent::getDOM($doc); |
|
157 if ($this->_creators !== null) { |
|
158 foreach ($this->_creators as $creators) { |
|
159 $element->appendChild($creators->getDOM( |
|
160 $element->ownerDocument)); |
|
161 } |
|
162 } |
|
163 if ($this->_dates !== null) { |
|
164 foreach ($this->_dates as $dates) { |
|
165 $element->appendChild($dates->getDOM($element->ownerDocument)); |
|
166 } |
|
167 } |
|
168 if ($this->_descriptions !== null) { |
|
169 foreach ($this->_descriptions as $descriptions) { |
|
170 $element->appendChild($descriptions->getDOM( |
|
171 $element->ownerDocument)); |
|
172 } |
|
173 } |
|
174 if ($this->_formats !== null) { |
|
175 foreach ($this->_formats as $formats) { |
|
176 $element->appendChild($formats->getDOM( |
|
177 $element->ownerDocument)); |
|
178 } |
|
179 } |
|
180 if ($this->_identifiers !== null) { |
|
181 foreach ($this->_identifiers as $identifiers) { |
|
182 $element->appendChild($identifiers->getDOM( |
|
183 $element->ownerDocument)); |
|
184 } |
|
185 } |
|
186 if ($this->_languages !== null) { |
|
187 foreach ($this->_languages as $languages) { |
|
188 $element->appendChild($languages->getDOM( |
|
189 $element->ownerDocument)); |
|
190 } |
|
191 } |
|
192 if ($this->_publishers !== null) { |
|
193 foreach ($this->_publishers as $publishers) { |
|
194 $element->appendChild($publishers->getDOM( |
|
195 $element->ownerDocument)); |
|
196 } |
|
197 } |
|
198 if ($this->_subjects !== null) { |
|
199 foreach ($this->_subjects as $subjects) { |
|
200 $element->appendChild($subjects->getDOM( |
|
201 $element->ownerDocument)); |
|
202 } |
|
203 } |
|
204 if ($this->_titles !== null) { |
|
205 foreach ($this->_titles as $titles) { |
|
206 $element->appendChild($titles->getDOM($element->ownerDocument)); |
|
207 } |
|
208 } |
|
209 if ($this->_comments !== null) { |
|
210 $element->appendChild($this->_comments->getDOM( |
|
211 $element->ownerDocument)); |
|
212 } |
|
213 if ($this->_embeddability !== null) { |
|
214 $element->appendChild($this->_embeddability->getDOM( |
|
215 $element->ownerDocument)); |
|
216 } |
|
217 if ($this->_rating !== null) { |
|
218 $element->appendChild($this->_rating->getDOM( |
|
219 $element->ownerDocument)); |
|
220 } |
|
221 if ($this->_review !== null) { |
|
222 $element->appendChild($this->_review->getDOM( |
|
223 $element->ownerDocument)); |
|
224 } |
|
225 if ($this->_viewability !== null) { |
|
226 $element->appendChild($this->_viewability->getDOM( |
|
227 $element->ownerDocument)); |
|
228 } |
|
229 return $element; |
|
230 } |
|
231 |
|
232 /** |
|
233 * Creates individual objects of the appropriate type and stores |
|
234 * them in this object based upon DOM data. |
|
235 * |
|
236 * @param DOMNode $child The DOMNode to process. |
|
237 */ |
|
238 protected function takeChildFromDOM($child) |
|
239 { |
|
240 $absoluteNodeName = $child->namespaceURI . ':' . $child->localName; |
|
241 switch ($absoluteNodeName) { |
|
242 case $this->lookupNamespace('dc') . ':' . 'creator': |
|
243 $creators = new Zend_Gdata_DublinCore_Extension_Creator(); |
|
244 $creators->transferFromDOM($child); |
|
245 $this->_creators[] = $creators; |
|
246 break; |
|
247 case $this->lookupNamespace('dc') . ':' . 'date': |
|
248 $dates = new Zend_Gdata_DublinCore_Extension_Date(); |
|
249 $dates->transferFromDOM($child); |
|
250 $this->_dates[] = $dates; |
|
251 break; |
|
252 case $this->lookupNamespace('dc') . ':' . 'description': |
|
253 $descriptions = new Zend_Gdata_DublinCore_Extension_Description(); |
|
254 $descriptions->transferFromDOM($child); |
|
255 $this->_descriptions[] = $descriptions; |
|
256 break; |
|
257 case $this->lookupNamespace('dc') . ':' . 'format': |
|
258 $formats = new Zend_Gdata_DublinCore_Extension_Format(); |
|
259 $formats->transferFromDOM($child); |
|
260 $this->_formats[] = $formats; |
|
261 break; |
|
262 case $this->lookupNamespace('dc') . ':' . 'identifier': |
|
263 $identifiers = new Zend_Gdata_DublinCore_Extension_Identifier(); |
|
264 $identifiers->transferFromDOM($child); |
|
265 $this->_identifiers[] = $identifiers; |
|
266 break; |
|
267 case $this->lookupNamespace('dc') . ':' . 'language': |
|
268 $languages = new Zend_Gdata_DublinCore_Extension_Language(); |
|
269 $languages->transferFromDOM($child); |
|
270 $this->_languages[] = $languages; |
|
271 break; |
|
272 case $this->lookupNamespace('dc') . ':' . 'publisher': |
|
273 $publishers = new Zend_Gdata_DublinCore_Extension_Publisher(); |
|
274 $publishers->transferFromDOM($child); |
|
275 $this->_publishers[] = $publishers; |
|
276 break; |
|
277 case $this->lookupNamespace('dc') . ':' . 'subject': |
|
278 $subjects = new Zend_Gdata_DublinCore_Extension_Subject(); |
|
279 $subjects->transferFromDOM($child); |
|
280 $this->_subjects[] = $subjects; |
|
281 break; |
|
282 case $this->lookupNamespace('dc') . ':' . 'title': |
|
283 $titles = new Zend_Gdata_DublinCore_Extension_Title(); |
|
284 $titles->transferFromDOM($child); |
|
285 $this->_titles[] = $titles; |
|
286 break; |
|
287 case $this->lookupNamespace('gd') . ':' . 'comments': |
|
288 $comments = new Zend_Gdata_Extension_Comments(); |
|
289 $comments->transferFromDOM($child); |
|
290 $this->_comments = $comments; |
|
291 break; |
|
292 case $this->lookupNamespace('gbs') . ':' . 'embeddability': |
|
293 $embeddability = new Zend_Gdata_Books_Extension_Embeddability(); |
|
294 $embeddability->transferFromDOM($child); |
|
295 $this->_embeddability = $embeddability; |
|
296 break; |
|
297 case $this->lookupNamespace('gd') . ':' . 'rating': |
|
298 $rating = new Zend_Gdata_Extension_Rating(); |
|
299 $rating->transferFromDOM($child); |
|
300 $this->_rating = $rating; |
|
301 break; |
|
302 case $this->lookupNamespace('gbs') . ':' . 'review': |
|
303 $review = new Zend_Gdata_Books_Extension_Review(); |
|
304 $review->transferFromDOM($child); |
|
305 $this->_review = $review; |
|
306 break; |
|
307 case $this->lookupNamespace('gbs') . ':' . 'viewability': |
|
308 $viewability = new Zend_Gdata_Books_Extension_Viewability(); |
|
309 $viewability->transferFromDOM($child); |
|
310 $this->_viewability = $viewability; |
|
311 break; |
|
312 default: |
|
313 parent::takeChildFromDOM($child); |
|
314 break; |
|
315 } |
|
316 } |
|
317 |
|
318 /** |
|
319 * Returns the Comments class |
|
320 * |
|
321 * @return Zend_Gdata_Extension_Comments|null The comments |
|
322 */ |
|
323 public function getComments() |
|
324 { |
|
325 return $this->_comments; |
|
326 } |
|
327 |
|
328 /** |
|
329 * Returns the creators |
|
330 * |
|
331 * @return array The creators |
|
332 */ |
|
333 public function getCreators() |
|
334 { |
|
335 return $this->_creators; |
|
336 } |
|
337 |
|
338 /** |
|
339 * Returns the dates |
|
340 * |
|
341 * @return array The dates |
|
342 */ |
|
343 public function getDates() |
|
344 { |
|
345 return $this->_dates; |
|
346 } |
|
347 |
|
348 /** |
|
349 * Returns the descriptions |
|
350 * |
|
351 * @return array The descriptions |
|
352 */ |
|
353 public function getDescriptions() |
|
354 { |
|
355 return $this->_descriptions; |
|
356 } |
|
357 |
|
358 /** |
|
359 * Returns the embeddability |
|
360 * |
|
361 * @return Zend_Gdata_Books_Extension_Embeddability|null The embeddability |
|
362 */ |
|
363 public function getEmbeddability() |
|
364 { |
|
365 return $this->_embeddability; |
|
366 } |
|
367 |
|
368 /** |
|
369 * Returns the formats |
|
370 * |
|
371 * @return array The formats |
|
372 */ |
|
373 public function getFormats() |
|
374 { |
|
375 return $this->_formats; |
|
376 } |
|
377 |
|
378 /** |
|
379 * Returns the identifiers |
|
380 * |
|
381 * @return array The identifiers |
|
382 */ |
|
383 public function getIdentifiers() |
|
384 { |
|
385 return $this->_identifiers; |
|
386 } |
|
387 |
|
388 /** |
|
389 * Returns the languages |
|
390 * |
|
391 * @return array The languages |
|
392 */ |
|
393 public function getLanguages() |
|
394 { |
|
395 return $this->_languages; |
|
396 } |
|
397 |
|
398 /** |
|
399 * Returns the publishers |
|
400 * |
|
401 * @return array The publishers |
|
402 */ |
|
403 public function getPublishers() |
|
404 { |
|
405 return $this->_publishers; |
|
406 } |
|
407 |
|
408 /** |
|
409 * Returns the rating |
|
410 * |
|
411 * @return Zend_Gdata_Extension_Rating|null The rating |
|
412 */ |
|
413 public function getRating() |
|
414 { |
|
415 return $this->_rating; |
|
416 } |
|
417 |
|
418 /** |
|
419 * Returns the review |
|
420 * |
|
421 * @return Zend_Gdata_Books_Extension_Review|null The review |
|
422 */ |
|
423 public function getReview() |
|
424 { |
|
425 return $this->_review; |
|
426 } |
|
427 |
|
428 /** |
|
429 * Returns the subjects |
|
430 * |
|
431 * @return array The subjects |
|
432 */ |
|
433 public function getSubjects() |
|
434 { |
|
435 return $this->_subjects; |
|
436 } |
|
437 |
|
438 /** |
|
439 * Returns the titles |
|
440 * |
|
441 * @return array The titles |
|
442 */ |
|
443 public function getTitles() |
|
444 { |
|
445 return $this->_titles; |
|
446 } |
|
447 |
|
448 /** |
|
449 * Returns the viewability |
|
450 * |
|
451 * @return Zend_Gdata_Books_Extension_Viewability|null The viewability |
|
452 */ |
|
453 public function getViewability() |
|
454 { |
|
455 return $this->_viewability; |
|
456 } |
|
457 |
|
458 /** |
|
459 * Sets the Comments class |
|
460 * |
|
461 * @param Zend_Gdata_Extension_Comments|null $comments Comments class |
|
462 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
463 */ |
|
464 public function setComments($comments) |
|
465 { |
|
466 $this->_comments = $comments; |
|
467 return $this; |
|
468 } |
|
469 |
|
470 /** |
|
471 * Sets the creators |
|
472 * |
|
473 * @param array $creators Creators|null |
|
474 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
475 */ |
|
476 public function setCreators($creators) |
|
477 { |
|
478 $this->_creators = $creators; |
|
479 return $this; |
|
480 } |
|
481 |
|
482 /** |
|
483 * Sets the dates |
|
484 * |
|
485 * @param array $dates dates |
|
486 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
487 */ |
|
488 public function setDates($dates) |
|
489 { |
|
490 $this->_dates = $dates; |
|
491 return $this; |
|
492 } |
|
493 |
|
494 /** |
|
495 * Sets the descriptions |
|
496 * |
|
497 * @param array $descriptions descriptions |
|
498 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
499 */ |
|
500 public function setDescriptions($descriptions) |
|
501 { |
|
502 $this->_descriptions = $descriptions; |
|
503 return $this; |
|
504 } |
|
505 |
|
506 /** |
|
507 * Sets the embeddability |
|
508 * |
|
509 * @param Zend_Gdata_Books_Extension_Embeddability|null $embeddability |
|
510 * embeddability |
|
511 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
512 */ |
|
513 public function setEmbeddability($embeddability) |
|
514 { |
|
515 $this->_embeddability = $embeddability; |
|
516 return $this; |
|
517 } |
|
518 |
|
519 /** |
|
520 * Sets the formats |
|
521 * |
|
522 * @param array $formats formats |
|
523 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
524 */ |
|
525 public function setFormats($formats) |
|
526 { |
|
527 $this->_formats = $formats; |
|
528 return $this; |
|
529 } |
|
530 |
|
531 /** |
|
532 * Sets the identifiers |
|
533 * |
|
534 * @param array $identifiers identifiers |
|
535 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
536 */ |
|
537 public function setIdentifiers($identifiers) |
|
538 { |
|
539 $this->_identifiers = $identifiers; |
|
540 return $this; |
|
541 } |
|
542 |
|
543 /** |
|
544 * Sets the languages |
|
545 * |
|
546 * @param array $languages languages |
|
547 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
548 */ |
|
549 public function setLanguages($languages) |
|
550 { |
|
551 $this->_languages = $languages; |
|
552 return $this; |
|
553 } |
|
554 |
|
555 /** |
|
556 * Sets the publishers |
|
557 * |
|
558 * @param array $publishers publishers |
|
559 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
560 */ |
|
561 public function setPublishers($publishers) |
|
562 { |
|
563 $this->_publishers = $publishers; |
|
564 return $this; |
|
565 } |
|
566 |
|
567 /** |
|
568 * Sets the rating |
|
569 * |
|
570 * @param Zend_Gdata_Extension_Rating|null $rating rating |
|
571 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
572 */ |
|
573 public function setRating($rating) |
|
574 { |
|
575 $this->_rating = $rating; |
|
576 return $this; |
|
577 } |
|
578 |
|
579 /** |
|
580 * Sets the review |
|
581 * |
|
582 * @param Zend_Gdata_Books_Extension_Review|null $review review |
|
583 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
584 */ |
|
585 public function setReview($review) |
|
586 { |
|
587 $this->_review = $review; |
|
588 return $this; |
|
589 } |
|
590 |
|
591 /** |
|
592 * Sets the subjects |
|
593 * |
|
594 * @param array $subjects subjects |
|
595 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
596 */ |
|
597 public function setSubjects($subjects) |
|
598 { |
|
599 $this->_subjects = $subjects; |
|
600 return $this; |
|
601 } |
|
602 |
|
603 /** |
|
604 * Sets the titles |
|
605 * |
|
606 * @param array $titles titles |
|
607 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
608 */ |
|
609 public function setTitles($titles) |
|
610 { |
|
611 $this->_titles = $titles; |
|
612 return $this; |
|
613 } |
|
614 |
|
615 /** |
|
616 * Sets the viewability |
|
617 * |
|
618 * @param Zend_Gdata_Books_Extension_Viewability|null $viewability |
|
619 * viewability |
|
620 * @return Zend_Gdata_Books_VolumeEntry Provides a fluent interface |
|
621 */ |
|
622 public function setViewability($viewability) |
|
623 { |
|
624 $this->_viewability = $viewability; |
|
625 return $this; |
|
626 } |
|
627 |
|
628 |
|
629 /** |
|
630 * Gets the volume ID based upon the atom:id value |
|
631 * |
|
632 * @return string The volume ID |
|
633 * @throws Zend_Gdata_App_Exception |
|
634 */ |
|
635 public function getVolumeId() |
|
636 { |
|
637 $fullId = $this->getId()->getText(); |
|
638 $position = strrpos($fullId, '/'); |
|
639 if ($position === false) { |
|
640 require_once 'Zend/Gdata/App/Exception.php'; |
|
641 throw new Zend_Gdata_App_Exception('Slash not found in atom:id'); |
|
642 } else { |
|
643 return substr($fullId, strrpos($fullId,'/') + 1); |
|
644 } |
|
645 } |
|
646 |
|
647 /** |
|
648 * Gets the thumbnail link |
|
649 * |
|
650 * @return Zend_Gdata_App_Extension_link|null The thumbnail link |
|
651 */ |
|
652 public function getThumbnailLink() |
|
653 { |
|
654 return $this->getLink(self::THUMBNAIL_LINK_REL); |
|
655 } |
|
656 |
|
657 /** |
|
658 * Gets the preview link |
|
659 * |
|
660 * @return Zend_Gdata_App_Extension_Link|null The preview link |
|
661 */ |
|
662 public function getPreviewLink() |
|
663 { |
|
664 return $this->getLink(self::PREVIEW_LINK_REL); |
|
665 } |
|
666 |
|
667 /** |
|
668 * Gets the info link |
|
669 * |
|
670 * @return Zend_Gdata_App_Extension_Link|null The info link |
|
671 */ |
|
672 public function getInfoLink() |
|
673 { |
|
674 return $this->getLink(self::INFO_LINK_REL); |
|
675 } |
|
676 |
|
677 /** |
|
678 * Gets the annotations link |
|
679 * |
|
680 * @return Zend_Gdata_App_Extension_Link|null The annotations link |
|
681 */ |
|
682 public function getAnnotationLink() |
|
683 { |
|
684 return $this->getLink(self::ANNOTATION_LINK_REL); |
|
685 } |
|
686 |
|
687 } |