forked from phalcon/cphalcon
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathresponseinterface.zep
142 lines (121 loc) · 3.94 KB
/
responseinterface.zep
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
/*
+------------------------------------------------------------------------+
| Phalcon Framework |
+------------------------------------------------------------------------+
| Copyright (c) 2011-2015 Phalcon Team (http://www.phalconphp.com) |
+------------------------------------------------------------------------+
| This source file is subject to the New BSD License that is bundled |
| with this package in the file docs/LICENSE.txt. |
| |
| 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 license@phalconphp.com so we can send you a copy immediately. |
+------------------------------------------------------------------------+
| Authors: Andres Gutierrez <andres@phalconphp.com> |
| Eduar Carvajal <eduar@phalconphp.com> |
+------------------------------------------------------------------------+
*/
namespace Phalcon\Http;
use Phalcon\Http\Response\HeadersInterface;
/**
* Phalcon\Http\Response
*
* Interface for Phalcon\Http\Response
*/
interface ResponseInterface
{
/**
* Sets the HTTP response code
*/
public function setStatusCode(int code, string message = null) -> <ResponseInterface>;
/**
* Returns headers set by the user
*/
public function getHeaders() -> <HeadersInterface>;
/**
* Overwrites a header in the response
*
* @param string name
* @param string value
* @return \Phalcon\Http\ResponseInterface
*/
public function setHeader(string name, value) -> <ResponseInterface>;
/**
* Send a raw header to the response
*/
public function setRawHeader(string header) -> <ResponseInterface>;
/**
* Resets all the stablished headers
*/
public function resetHeaders() -> <ResponseInterface>;
/**
* Sets output expire time header
*/
public function setExpires(<\DateTime> datetime) -> <ResponseInterface>;
/**
* Sends a Not-Modified response
*/
public function setNotModified() -> <ResponseInterface>;
/**
* Sets the response content-type mime, optionally the charset
*
* @param string contentType
* @param string charset
* @return \Phalcon\Http\ResponseInterface
*/
public function setContentType(string contentType, charset = null) -> <ResponseInterface>;
/**
* Redirect by HTTP to another action or URL
*
* @param string location
* @param boolean externalRedirect
* @param int statusCode
* @return \Phalcon\Http\ResponseInterface
*/
public function redirect(location = null, boolean externalRedirect = false, int statusCode = 302) -> <ResponseInterface>;
/**
* Sets HTTP response body
*/
public function setContent(string content) -> <ResponseInterface>;
/**
* Sets HTTP response body. The parameter is automatically converted to JSON
*
*<code>
* response->setJsonContent(array("status" => "OK"));
*</code>
*
* @param string content
* @return \Phalcon\Http\ResponseInterface
*/
public function setJsonContent(content) -> <ResponseInterface>;
/**
* Appends a string to the HTTP response body
*
* @param string content
* @return \Phalcon\Http\ResponseInterface
*/
public function appendContent(content) -> <ResponseInterface>;
/**
* Gets the HTTP response body
*/
public function getContent() -> string;
/**
* Sends headers to the client
*/
public function sendHeaders() -> <ResponseInterface>;
/**
* Sends cookies to the client
*/
public function sendCookies() -> <ResponseInterface>;
/**
* Prints out HTTP response to the client
*/
public function send() -> <ResponseInterface>;
/**
* Sets an attached file to be sent at the end of the request
*
* @param string filePath
* @param string attachmentName
*/
public function setFileToSend(string filePath, attachmentName = null) -> <ResponseInterface>;
}