File: RendererAbstract.php

package info (click to toggle)
zendframework 1.10.6-1squeeze2
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 29,480 kB
  • ctags: 46,247
  • sloc: xml: 233,973; php: 195,700; sql: 90; sh: 19; makefile: 10
file content (179 lines) | stat: -rw-r--r-- 3,855 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<?php
/**
 * Zend Framework
 *
 * LICENSE
 *
 * This source file is subject to the new BSD license that is bundled
 * with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://framework.zend.com/license/new-bsd
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to padraic dot brady at yahoo dot com so we can send you a copy immediately.
 *
 * @category   Zend
 * @package    Zend_Feed_Writer_Entry_Rss
 * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
 
/**
 * @see Zend_Feed_Writer_Extension_RendererInterface
 */
require_once 'Zend/Feed/Writer/Extension/RendererInterface.php';
 
 /**
 * @category   Zend
 * @package    Zend_Feed_Writer_Entry_Rss
 * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
 * @license    http://framework.zend.com/license/new-bsd     New BSD License
 */
abstract class Zend_Feed_Writer_Extension_RendererAbstract
    implements Zend_Feed_Writer_Extension_RendererInterface
{
    /**
     * @var DOMDocument
     */
    protected $_dom = null;
    
    /**
     * @var mixed
     */
    protected $_entry = null;
    
    /**
     * @var DOMElement
     */
    protected $_base = null;
    
    /**
     * @var mixed
     */
    protected $_container = null;
    
    /**
     * @var string
     */
    protected $_type = null;
    
    /**
     * @var DOMElement
     */
    protected $_rootElement = null;
    
    /**
     * Encoding of all text values
     *
     * @var string
     */
    protected $_encoding = 'UTF-8';

    /**
     * Constructor
     * 
     * @param  mixed $container 
     * @return void
     */
    public function __construct($container)
    {
        $this->_container = $container;
    }
    
    /**
     * Set feed encoding
     * 
     * @param  string $enc 
     * @return Zend_Feed_Writer_Extension_RendererAbstract
     */
    public function setEncoding($enc)
    {
        $this->_encoding = $enc;
        return $this;
    }
    
    /**
     * Get feed encoding
     * 
     * @return void
     */
    public function getEncoding()
    {
        return $this->_encoding;
    }
    
    /**
     * Set DOMDocument and DOMElement on which to operate
     * 
     * @param  DOMDocument $dom 
     * @param  DOMElement $base 
     * @return Zend_Feed_Writer_Extension_RendererAbstract
     */
    public function setDomDocument(DOMDocument $dom, DOMElement $base)
    {
        $this->_dom  = $dom;
        $this->_base = $base;
        return $this;
    }
    
    /**
     * Get data container being rendered
     * 
     * @return mixed
     */
    public function getDataContainer()
    {
        return $this->_container;
    }
    
    /**
     * Set feed type
     * 
     * @param  string $type 
     * @return Zend_Feed_Writer_Extension_RendererAbstract
     */
    public function setType($type)
    {
        $this->_type = $type;
        return $this;
    }
    
    /**
     * Get feedtype
     * 
     * @return string
     */
    public function getType()
    {
        return $this->_type;
    }
    
    /**
     * Set root element of document 
     * 
     * @param  DOMElement $root 
     * @return Zend_Feed_Writer_Extension_RendererAbstract
     */
    public function setRootElement(DOMElement $root)
    {
        $this->_rootElement = $root;
        return $this;
    }
    
    /**
     * Get root element
     * 
     * @return DOMElement
     */
    public function getRootElement()
    {
        return $this->_rootElement;
    }
    
    /**
     * Append namespaces to feed
     * 
     * @return void
     */
    abstract protected function _appendNamespaces();
}