source: trunk/www.guidonia.net/wp/wp-content/plugins/webtv/Drivers/Zend/Gdata/Photos/AlbumEntry.php@ 44

Last change on this file since 44 was 44, checked in by luciano, 14 years ago
File size: 17.9 KB
Line 
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 Photos
19 * @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com)
20 * @license http://framework.zend.com/license/new-bsd New BSD License
21 */
22
23/**
24 * @see Zend_Gdata_Entry
25 */
26require_once 'Zend/Gdata/Entry.php';
27
28/**
29 * @see Zend_Gdata_Photos_Extension_Access
30 */
31require_once 'Zend/Gdata/Photos/Extension/Access.php';
32
33/**
34 * @see Zend_Gdata_Photos_Extension_BytesUsed
35 */
36require_once 'Zend/Gdata/Photos/Extension/BytesUsed.php';
37
38/**
39 * @see Zend_Gdata_Photos_Extension_Location
40 */
41require_once 'Zend/Gdata/Photos/Extension/Location.php';
42
43/**
44 * @see Zend_Gdata_Photos_Extension_Name
45 */
46require_once 'Zend/Gdata/Photos/Extension/Name.php';
47
48/**
49 * @see Zend_Gdata_Photos_Extension_NumPhotos
50 */
51require_once 'Zend/Gdata/Photos/Extension/NumPhotos.php';
52
53/**
54 * @see Zend_Gdata_Photos_Extension_NumPhotosRemaining
55 */
56require_once 'Zend/Gdata/Photos/Extension/NumPhotosRemaining.php';
57
58/**
59 * @see Zend_Gdata_Photos_Extension_CommentCount
60 */
61require_once 'Zend/Gdata/Photos/Extension/CommentCount.php';
62
63/**
64 * @see Zend_Gdata_Photos_Extension_CommentingEnabled
65 */
66require_once 'Zend/Gdata/Photos/Extension/CommentingEnabled.php';
67
68/**
69 * @see Zend_Gdata_Photos_Extension_Id
70 */
71require_once 'Zend/Gdata/Photos/Extension/Id.php';
72
73/**
74 * @see Zend_Gdata_Geo_Extension_GeoRssWhere
75 */
76require_once 'Zend/Gdata/Geo/Extension/GeoRssWhere.php';
77
78/**
79 * @see Zend_Gdata_Media_Extension_MediaGroup
80 */
81require_once 'Zend/Gdata/Media/Extension/MediaGroup.php';
82
83/**
84 * @see Zend_Gdata_App_Extension_Category
85 */
86require_once 'Zend/Gdata/App/Extension/Category.php';
87
88/**
89 * Data model class for a Photo Album Entry.
90 *
91 * To transfer user entries to and from the servers, including
92 * creating new entries, refer to the service class,
93 * Zend_Gdata_Photos.
94 *
95 * This class represents <atom:entry> in the Google Data protocol.
96 *
97 * @category Zend
98 * @package Zend_Gdata
99 * @subpackage Photos
100 * @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com)
101 * @license http://framework.zend.com/license/new-bsd New BSD License
102 */
103class Zend_Gdata_Photos_AlbumEntry extends Zend_Gdata_Entry
104{
105
106 protected $_entryClassName = 'Zend_Gdata_Photos_AlbumEntry';
107
108 /**
109 * gphoto:id element
110 *
111 * @var Zend_Gdata_Photos_Extension_Id
112 */
113 protected $_gphotoId = null;
114
115 /**
116 * gphoto:access element
117 *
118 * @var Zend_Gdata_Photos_Extension_Access
119 */
120 protected $_gphotoAccess = null;
121
122 /**
123 * gphoto:location element
124 *
125 * @var Zend_Gdata_Photos_Extension_Location
126 */
127 protected $_gphotoLocation = null;
128
129 /**
130 * gphoto:user element
131 *
132 * @var Zend_Gdata_Photos_Extension_User
133 */
134 protected $_gphotoUser = null;
135
136 /**
137 * gphoto:nickname element
138 *
139 * @var Zend_Gdata_Photos_Extension_Nickname
140 */
141 protected $_gphotoNickname = null;
142
143 /**
144 * gphoto:timestamp element
145 *
146 * @var Zend_Gdata_Photos_Extension_Timestamp
147 */
148 protected $_gphotoTimestamp = null;
149
150 /**
151 * gphoto:name element
152 *
153 * @var Zend_Gdata_Photos_Extension_Name
154 */
155 protected $_gphotoName = null;
156
157 /**
158 * gphoto:numphotos element
159 *
160 * @var Zend_Gdata_Photos_Extension_NumPhotos
161 */
162 protected $_gphotoNumPhotos = null;
163
164 /**
165 * gphoto:commentCount element
166 *
167 * @var Zend_Gdata_Photos_Extension_CommentCount
168 */
169 protected $_gphotoCommentCount = null;
170
171 /**
172 * gphoto:commentingEnabled element
173 *
174 * @var Zend_Gdata_Photos_Extension_CommentingEnabled
175 */
176 protected $_gphotoCommentingEnabled = null;
177
178 /**
179 * media:group element
180 *
181 * @var Zend_Gdata_Media_MediaGroup
182 */
183 protected $_mediaGroup = null;
184
185 /**
186 * georss:where element
187 *
188 * @var Zend_Gdata_Geo_Extension_GeoRssWhere
189 */
190 protected $_geoRssWhere = null;
191
192 /**
193 * Create a new instance.
194 *
195 * @param DOMElement $element (optional) DOMElement from which this
196 * object should be constructed.
197 */
198 public function __construct($element = null)
199 {
200 $this->registerAllNamespaces(Zend_Gdata_Photos::$namespaces);
201 parent::__construct($element);
202
203 $category = new Zend_Gdata_App_Extension_Category(
204 'http://schemas.google.com/photos/2007#album',
205 'http://schemas.google.com/g/2005#kind');
206 $this->setCategory(array($category));
207 }
208
209 /**
210 * Retrieves a DOMElement which corresponds to this element and all
211 * child properties. This is used to build an entry back into a DOM
212 * and eventually XML text for application storage/persistence.
213 *
214 * @param DOMDocument $doc The DOMDocument used to construct DOMElements
215 * @return DOMElement The DOMElement representing this element and all
216 * child properties.
217 */
218 public function getDOM($doc = null, $majorVersion = 1, $minorVersion = null)
219 {
220 $element = parent::getDOM($doc, $majorVersion, $minorVersion);
221 if ($this->_gphotoTimestamp !== null) {
222 $element->appendChild($this->_gphotoTimestamp->getDOM($element->ownerDocument));
223 }
224 if ($this->_gphotoUser !== null) {
225 $element->appendChild($this->_gphotoUser->getDOM($element->ownerDocument));
226 }
227 if ($this->_gphotoNickname !== null) {
228 $element->appendChild($this->_gphotoNickname->getDOM($element->ownerDocument));
229 }
230 if ($this->_gphotoAccess !== null) {
231 $element->appendChild($this->_gphotoAccess->getDOM($element->ownerDocument));
232 }
233 if ($this->_gphotoLocation !== null) {
234 $element->appendChild($this->_gphotoLocation->getDOM($element->ownerDocument));
235 }
236 if ($this->_gphotoName !== null) {
237 $element->appendChild($this->_gphotoName->getDOM($element->ownerDocument));
238 }
239 if ($this->_gphotoNumPhotos !== null) {
240 $element->appendChild($this->_gphotoNumPhotos->getDOM($element->ownerDocument));
241 }
242 if ($this->_gphotoCommentCount !== null) {
243 $element->appendChild($this->_gphotoCommentCount->getDOM($element->ownerDocument));
244 }
245 if ($this->_gphotoCommentingEnabled !== null) {
246 $element->appendChild($this->_gphotoCommentingEnabled->getDOM($element->ownerDocument));
247 }
248 if ($this->_gphotoId !== null) {
249 $element->appendChild($this->_gphotoId->getDOM($element->ownerDocument));
250 }
251 if ($this->_mediaGroup !== null) {
252 $element->appendChild($this->_mediaGroup->getDOM($element->ownerDocument));
253 }
254 return $element;
255 }
256
257 /**
258 * Creates individual Entry objects of the appropriate type and
259 * stores them as members of this entry based upon DOM data.
260 *
261 * @param DOMNode $child The DOMNode to process
262 */
263 protected function takeChildFromDOM($child)
264 {
265 $absoluteNodeName = $child->namespaceURI . ':' . $child->localName;
266
267 switch ($absoluteNodeName) {
268 case $this->lookupNamespace('gphoto') . ':' . 'access';
269 $access = new Zend_Gdata_Photos_Extension_Access();
270 $access->transferFromDOM($child);
271 $this->_gphotoAccess = $access;
272 break;
273 case $this->lookupNamespace('gphoto') . ':' . 'location';
274 $location = new Zend_Gdata_Photos_Extension_Location();
275 $location->transferFromDOM($child);
276 $this->_gphotoLocation = $location;
277 break;
278 case $this->lookupNamespace('gphoto') . ':' . 'name';
279 $name = new Zend_Gdata_Photos_Extension_Name();
280 $name->transferFromDOM($child);
281 $this->_gphotoName = $name;
282 break;
283 case $this->lookupNamespace('gphoto') . ':' . 'numphotos';
284 $numPhotos = new Zend_Gdata_Photos_Extension_NumPhotos();
285 $numPhotos->transferFromDOM($child);
286 $this->_gphotoNumPhotos = $numPhotos;
287 break;
288 case $this->lookupNamespace('gphoto') . ':' . 'commentCount';
289 $commentCount = new Zend_Gdata_Photos_Extension_CommentCount();
290 $commentCount->transferFromDOM($child);
291 $this->_gphotoCommentCount = $commentCount;
292 break;
293 case $this->lookupNamespace('gphoto') . ':' . 'commentingEnabled';
294 $commentingEnabled = new Zend_Gdata_Photos_Extension_CommentingEnabled();
295 $commentingEnabled->transferFromDOM($child);
296 $this->_gphotoCommentingEnabled = $commentingEnabled;
297 break;
298 case $this->lookupNamespace('gphoto') . ':' . 'id';
299 $id = new Zend_Gdata_Photos_Extension_Id();
300 $id->transferFromDOM($child);
301 $this->_gphotoId = $id;
302 break;
303 case $this->lookupNamespace('gphoto') . ':' . 'user';
304 $user = new Zend_Gdata_Photos_Extension_User();
305 $user->transferFromDOM($child);
306 $this->_gphotoUser = $user;
307 break;
308 case $this->lookupNamespace('gphoto') . ':' . 'timestamp';
309 $timestamp = new Zend_Gdata_Photos_Extension_Timestamp();
310 $timestamp->transferFromDOM($child);
311 $this->_gphotoTimestamp = $timestamp;
312 break;
313 case $this->lookupNamespace('gphoto') . ':' . 'nickname';
314 $nickname = new Zend_Gdata_Photos_Extension_Nickname();
315 $nickname->transferFromDOM($child);
316 $this->_gphotoNickname = $nickname;
317 break;
318 case $this->lookupNamespace('georss') . ':' . 'where';
319 $geoRssWhere = new Zend_Gdata_Geo_Extension_GeoRssWhere();
320 $geoRssWhere->transferFromDOM($child);
321 $this->_geoRssWhere = $geoRssWhere;
322 break;
323 case $this->lookupNamespace('media') . ':' . 'group';
324 $mediaGroup = new Zend_Gdata_Media_Extension_MediaGroup();
325 $mediaGroup->transferFromDOM($child);
326 $this->_mediaGroup = $mediaGroup;
327 break;
328 default:
329 parent::takeChildFromDOM($child);
330 break;
331 }
332 }
333
334 /**
335 * Get the value for this element's gphoto:access attribute.
336 *
337 * @see setGphotoAccess
338 * @return string The requested attribute.
339 */
340 public function getGphotoAccess()
341 {
342 return $this->_gphotoAccess;
343 }
344
345 /**
346 * Set the value for this element's gphoto:access attribute.
347 *
348 * @param string $value The desired value for this attribute.
349 * @return Zend_Gdata_Photos_Extension_Access The element being modified.
350 */
351 public function setGphotoAccess($value)
352 {
353 $this->_gphotoAccess = $value;
354 return $this;
355 }
356
357 /**
358 * Get the value for this element's gphoto:location attribute.
359 *
360 * @see setGphotoLocation
361 * @return string The requested attribute.
362 */
363 public function getGphotoLocation()
364 {
365 return $this->_gphotoLocation;
366 }
367
368 /**
369 * Set the value for this element's gphoto:location attribute.
370 *
371 * @param string $value The desired value for this attribute.
372 * @return Zend_Gdata_Photos_Extension_Location The element being modified.
373 */
374 public function setGphotoLocation($value)
375 {
376 $this->_location = $value;
377 return $this;
378 }
379
380 /**
381 * Get the value for this element's gphoto:name attribute.
382 *
383 * @see setGphotoName
384 * @return string The requested attribute.
385 */
386 public function getGphotoName()
387 {
388 return $this->_gphotoName;
389 }
390
391 /**
392 * Set the value for this element's gphoto:name attribute.
393 *
394 * @param string $value The desired value for this attribute.
395 * @return Zend_Gdata_Photos_Extension_Name The element being modified.
396 */
397 public function setGphotoName($value)
398 {
399 $this->_gphotoName = $value;
400 return $this;
401 }
402
403 /**
404 * Get the value for this element's gphoto:numphotos attribute.
405 *
406 * @see setGphotoNumPhotos
407 * @return string The requested attribute.
408 */
409 public function getGphotoNumPhotos()
410 {
411 return $this->_gphotoNumPhotos;
412 }
413
414 /**
415 * Set the value for this element's gphoto:numphotos attribute.
416 *
417 * @param string $value The desired value for this attribute.
418 * @return Zend_Gdata_Photos_Extension_NumPhotos The element being modified.
419 */
420 public function setGphotoNumPhotos($value)
421 {
422 $this->_gphotoNumPhotos = $value;
423 return $this;
424 }
425
426 /**
427 * Get the value for this element's gphoto:commentCount attribute.
428 *
429 * @see setGphotoCommentCount
430 * @return string The requested attribute.
431 */
432 public function getGphotoCommentCount()
433 {
434 return $this->_gphotoCommentCount;
435 }
436
437 /**
438 * Set the value for this element's gphoto:commentCount attribute.
439 *
440 * @param string $value The desired value for this attribute.
441 * @return Zend_Gdata_Photos_Extension_CommentCount The element being modified.
442 */
443 public function setGphotoCommentCount($value)
444 {
445 $this->_gphotoCommentCount = $value;
446 return $this;
447 }
448
449 /**
450 * Get the value for this element's gphoto:commentingEnabled attribute.
451 *
452 * @see setGphotoCommentingEnabled
453 * @return string The requested attribute.
454 */
455 public function getGphotoCommentingEnabled()
456 {
457 return $this->_gphotoCommentingEnabled;
458 }
459
460 /**
461 * Set the value for this element's gphoto:commentingEnabled attribute.
462 *
463 * @param string $value The desired value for this attribute.
464 * @return Zend_Gdata_Photos_Extension_CommentingEnabled The element being modified.
465 */
466 public function setGphotoCommentingEnabled($value)
467 {
468 $this->_gphotoCommentingEnabled = $value;
469 return $this;
470 }
471
472 /**
473 * Get the value for this element's gphoto:id attribute.
474 *
475 * @see setGphotoId
476 * @return string The requested attribute.
477 */
478 public function getGphotoId()
479 {
480 return $this->_gphotoId;
481 }
482
483 /**
484 * Set the value for this element's gphoto:id attribute.
485 *
486 * @param string $value The desired value for this attribute.
487 * @return Zend_Gdata_Photos_Extension_Id The element being modified.
488 */
489 public function setGphotoId($value)
490 {
491 $this->_gphotoId = $value;
492 return $this;
493 }
494
495 /**
496 * Get the value for this element's georss:where attribute.
497 *
498 * @see setGeoRssWhere
499 * @return string The requested attribute.
500 */
501 public function getGeoRssWhere()
502 {
503 return $this->_geoRssWhere;
504 }
505
506 /**
507 * Set the value for this element's georss:where attribute.
508 *
509 * @param string $value The desired value for this attribute.
510 * @return Zend_Gdata_Geo_Extension_GeoRssWhere The element being modified.
511 */
512 public function setGeoRssWhere($value)
513 {
514 $this->_geoRssWhere = $value;
515 return $this;
516 }
517
518 /**
519 * Get the value for this element's media:group attribute.
520 *
521 * @see setMediaGroup
522 * @return string The requested attribute.
523 */
524 public function getMediaGroup()
525 {
526 return $this->_mediaGroup;
527 }
528
529 /**
530 * Set the value for this element's media:group attribute.
531 *
532 * @param string $value The desired value for this attribute.
533 * @return Zend_Gdata_Media_Extension_MediaGroup The element being modified.
534 */
535 public function setMediaGroup($value)
536 {
537 $this->_mediaGroup = $value;
538 return $this;
539 }
540
541 /**
542 * Get the value for this element's gphoto:user attribute.
543 *
544 * @see setGphotoUser
545 * @return string The requested attribute.
546 */
547 public function getGphotoUser()
548 {
549 return $this->_gphotoUser;
550 }
551
552 /**
553 * Set the value for this element's gphoto:user attribute.
554 *
555 * @param string $value The desired value for this attribute.
556 * @return Zend_Gdata_Photos_Extension_User The element being modified.
557 */
558 public function setGphotoUser($value)
559 {
560 $this->_gphotoUser = $value;
561 return $this;
562 }
563
564 /**
565 * Get the value for this element's gphoto:nickname attribute.
566 *
567 * @see setGphotoNickname
568 * @return string The requested attribute.
569 */
570 public function getGphotoNickname()
571 {
572 return $this->_gphotoNickname;
573 }
574
575 /**
576 * Set the value for this element's gphoto:nickname attribute.
577 *
578 * @param string $value The desired value for this attribute.
579 * @return Zend_Gdata_Photos_Extension_Nickname The element being modified.
580 */
581 public function setGphotoNickname($value)
582 {
583 $this->_gphotoNickname = $value;
584 return $this;
585 }
586
587 /**
588 * Get the value for this element's gphoto:timestamp attribute.
589 *
590 * @see setGphotoTimestamp
591 * @return string The requested attribute.
592 */
593 public function getGphotoTimestamp()
594 {
595 return $this->_gphotoTimestamp;
596 }
597
598 /**
599 * Set the value for this element's gphoto:timestamp attribute.
600 *
601 * @param string $value The desired value for this attribute.
602 * @return Zend_Gdata_Photos_Extension_Timestamp The element being modified.
603 */
604 public function setGphotoTimestamp($value)
605 {
606 $this->_gphotoTimestamp = $value;
607 return $this;
608 }
609}
Note: See TracBrowser for help on using the repository browser.