|
![]() |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--ipworks.Http
The HTTP control can be used to retrieve documents from the World Wide Web.
The HTTP control implements a standard HTTP Version 1.0 client through a simple plug-and-play interface.
The control contains a number of properties that map directly to HTTP request
headers. Files are received through events: Transfer
for contents, and Header
for HTTP headers. The StartTransfer
and EndTransfer
events are fired at the beginning and end
of transmission.
To receive a document call the Get
method with the URL to retrieve
specified in the URL parameter. Alternatively, the URL
property
can specify the document to receive. To receive the document set the Action
property to httpGet . Data can be POST-ed to the HTTP server by assigning it to
the PostData
property and then calling the Post
method or by setting
the Action
property to httpPost .
The PUT method is also supported. You should specify the User
and Password
properties or alternatively the Authorization
and call the Put
method
with specified URL . It is also possible to specify the URL
and set Action
to httpPut if you wish not to use the method calls. The AttachedFile
will be sent.
The HTTP control supports the HTTP Basic authentication
scheme through the User
and Password
properties. Other authentication
schemes can be implemented by using the Authorization
property.
Field Summary | |
static int |
frAlways
|
static int |
frNever
|
static int |
frSameScheme
|
static int |
fwNone
|
static int |
fwSOCKS4
|
static int |
fwSOCKS5
|
static int |
fwTunnel
|
static int |
httpGet
|
static int |
httpHead
|
static int |
httpIdle
|
static int |
httpPost
|
static int |
httpPut
|
static int |
httpResetHeaders
|
Constructor Summary | |
Http()
|
Method Summary | |
void |
addCookie(java.lang.String cookieName,
java.lang.String cookieValue)
Sets a cookie and the corresponding value. |
void |
addHttpEventListener(HttpEventListener l)
|
void |
fireConnected(int statusCode,
java.lang.String description)
Fired immediately after a connection completes (or fails). |
void |
fireDisconnected(int statusCode,
java.lang.String description)
Fired when a connection is closed. |
void |
fireEndTransfer(int direction)
Fired when a document finishes transferring. |
void |
fireError(int errorCode,
java.lang.String description)
Information about errors during data delivery. |
void |
fireHeader(java.lang.String field,
java.lang.String value)
Fired every time a header line comes in. |
void |
fireSetCookie(java.lang.String name,
java.lang.String value,
java.lang.String expires,
java.lang.String domain,
java.lang.String path,
boolean secure)
Fired for every cookie set by the server. |
void |
fireStartTransfer(int direction)
Fired when a document starts transferring (after the headers). |
void |
fireTransfer(int direction,
int bytesTransferred,
byte[] text)
Fired while a document transfers (delivers document). |
void |
get(java.lang.String URL)
Fetch the document using the HTTP GET method. |
java.lang.String |
getAccept()
A list of acceptable MIME types for the request. |
int |
getAction()
An action code for the component. |
java.lang.String |
getAttachedFile()
A file to append to PostData if the POST or PUT methods are used. |
java.lang.String |
getAuthorization()
The Authorization string to be sent to the server. |
java.lang.String |
getContentType()
Content type for posted data. |
int |
getCookieCount()
Number of cookies in the current request. |
java.lang.String |
getCookieName(int cookieIndex)
Array of cookie names. |
java.lang.String |
getCookieValue(int cookieIndex)
Array of cookie values. |
byte[] |
getFirewallData()
Used to send other data to firewall. |
java.lang.String |
getFirewallHost()
Name or IP address of firewall (optional). |
java.lang.String |
getFirewallPassword()
A password if authentication is to be used connecting through the firewall. |
int |
getFirewallPort()
Port of the firewall to connect to. |
int |
getFirewallType()
Determines the type of firewall to connect through. |
java.lang.String |
getFirewallUser()
A user name if authentication is to be used connecting through a firewall. |
int |
getFollowRedirects()
Determines what happens when the server issues a redirect. |
java.lang.String |
getFrom()
The email address of the HTTP agent (optional). |
java.lang.String |
getHTTPMethod()
The HTTP method used for the request. |
java.lang.String |
getHTTPVersion()
The version of HTTP used by the component. |
java.lang.String |
getIfModifiedSince()
A date determining the maximum age of the desired document. |
java.lang.String |
getLocalFile()
The path to a local file for downloading. |
java.lang.String |
getLocalHost()
The name of the local host or user-assigned IP interface through which connections are initiated or accepted. |
int |
getMaxTransferredData()
The maximum number of bytes to store in TransferredData . |
java.lang.String |
getOtherHeaders()
Other headers as determined by the user (optional). |
java.lang.String |
getPassword()
A password if Basic authentication is to be used. |
byte[] |
getPostData()
The data to post with the URL if the POST method is used. |
java.lang.String |
getPragma()
A browser/server specific header line (optional). |
java.lang.String |
getProxyAuthorization()
Similar to the Authorization property, but for proxy authorization. |
java.lang.String |
getProxyPassword()
A password if Basic authentication is to be used for the proxy. |
int |
getProxyPort()
Port for the proxy server (default 80). |
java.lang.String |
getProxyServer()
Name or IP address of a proxy server (optional). |
java.lang.String |
getProxyUser()
A user name if Basic authentication is to be used for the proxy. |
java.lang.String |
getReferer()
Referer URL/document (optional). |
java.lang.String |
getStatusLine()
The first line of the last server response. |
int |
getTimeout()
A timeout for the component. |
byte[] |
getTransferredData()
The contents of the last transfer. |
java.lang.String |
getTransferredHeaders()
The full set of headers as received from the server. |
java.lang.String |
getURL()
The URL to fetch. |
java.lang.String |
getURLPath()
The path for the URL. |
int |
getURLPort()
The port for the URL. |
java.lang.String |
getURLScheme()
The scheme for the URL. |
java.lang.String |
getURLServer()
The server for the URL. |
java.lang.String |
getUser()
A user name if Basic authentication is to be used. |
java.lang.String |
getUserAgent()
Information about the user agent (browser). |
void |
head(java.lang.String URL)
Fetch the document headers using the HTTP HEAD method. |
void |
interrupt()
Interrupt the Action in progress (if any). |
boolean |
isConnected()
Shows whether the component is connected. |
void |
post(java.lang.String URL)
Post data to the HTTP server using the HTTP POST method. |
void |
put(java.lang.String URL)
Send data to the HTTP server using the HTTP PUT method. |
void |
removeHttpEventListener(HttpEventListener l)
|
void |
resetHeaders()
Resets all HTTP headers, cookies, LocalFile , and AttachedFile . |
void |
setAccept(java.lang.String accept)
A list of acceptable MIME types for the request. |
void |
setAction(int action)
An action code for the component. |
void |
setAttachedFile(java.lang.String attachedFile)
A file to append to PostData if the POST or PUT methods are used. |
void |
setAuthorization(java.lang.String authorization)
The Authorization string to be sent to the server. |
void |
setContentType(java.lang.String contentType)
Content type for posted data. |
void |
setCookieCount(int cookieCount)
Number of cookies in the current request. |
void |
setCookieName(int cookieIndex,
java.lang.String cookieName)
Array of cookie names. |
void |
setCookieValue(int cookieIndex,
java.lang.String cookieValue)
Array of cookie values. |
void |
setFirewallData(byte[] firewallData)
Used to send other data to firewall. |
void |
setFirewallHost(java.lang.String firewallHost)
Name or IP address of firewall (optional). |
void |
setFirewallPassword(java.lang.String firewallPassword)
A password if authentication is to be used connecting through the firewall. |
void |
setFirewallPort(int firewallPort)
Port of the firewall to connect to. |
void |
setFirewallType(int firewallType)
Determines the type of firewall to connect through. |
void |
setFirewallUser(java.lang.String firewallUser)
A user name if authentication is to be used connecting through a firewall. |
void |
setFollowRedirects(int followRedirects)
Determines what happens when the server issues a redirect. |
void |
setFrom(java.lang.String from)
The email address of the HTTP agent (optional). |
void |
setHTTPMethod(java.lang.String HTTPMethod)
The HTTP method used for the request. |
void |
setHTTPVersion(java.lang.String HTTPVersion)
The version of HTTP used by the component. |
void |
setIfModifiedSince(java.lang.String ifModifiedSince)
A date determining the maximum age of the desired document. |
void |
setLocalFile(java.lang.String localFile)
The path to a local file for downloading. |
void |
setLocalHost(java.lang.String localHost)
The name of the local host or user-assigned IP interface through which connections are initiated or accepted. |
void |
setMaxTransferredData(int maxTransferredData)
The maximum number of bytes to store in TransferredData . |
void |
setOtherHeaders(java.lang.String otherHeaders)
Other headers as determined by the user (optional). |
void |
setPassword(java.lang.String password)
A password if Basic authentication is to be used. |
void |
setPostData(byte[] postData)
The data to post with the URL if the POST method is used. |
void |
setPragma(java.lang.String pragma)
A browser/server specific header line (optional). |
void |
setProxyAuthorization(java.lang.String proxyAuthorization)
Similar to the Authorization property, but for proxy authorization. |
void |
setProxyPassword(java.lang.String proxyPassword)
A password if Basic authentication is to be used for the proxy. |
void |
setProxyPort(int proxyPort)
Port for the proxy server (default 80). |
void |
setProxyServer(java.lang.String proxyServer)
Name or IP address of a proxy server (optional). |
void |
setProxyUser(java.lang.String proxyUser)
A user name if Basic authentication is to be used for the proxy. |
void |
setReferer(java.lang.String referer)
Referer URL/document (optional). |
void |
setTimeout(int timeout)
A timeout for the component. |
void |
setURL(java.lang.String URL)
The URL to fetch. |
void |
setURLPath(java.lang.String URLPath)
The path for the URL. |
void |
setURLPort(int URLPort)
The port for the URL. |
void |
setURLScheme(java.lang.String URLScheme)
The scheme for the URL. |
void |
setURLServer(java.lang.String URLServer)
The server for the URL. |
void |
setUser(java.lang.String user)
A user name if Basic authentication is to be used. |
void |
setUserAgent(java.lang.String userAgent)
Information about the user agent (browser). |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int httpIdle
public static final int httpGet
public static final int httpPost
public static final int httpHead
public static final int httpResetHeaders
public static final int httpPut
public static final int fwNone
public static final int fwTunnel
public static final int fwSOCKS4
public static final int fwSOCKS5
public static final int frNever
public static final int frAlways
public static final int frSameScheme
Constructor Detail |
public Http()
Method Detail |
public java.lang.String getAccept()
Accept
property contains a non-empty string,
an HTTP Accept header is added to the request.
The Accept header is used for content negotiation. It consists of a comma-separated list of acceptable MIME types.
public void setAccept(java.lang.String accept) throws IPWorksException
Accept
property contains a non-empty string,
an HTTP Accept header is added to the request.
The Accept header is used for content negotiation. It consists of a comma-separated list of acceptable MIME types.
public int getAction()
Action
property to a valid action code makes
the control perform the associated action. If the action completes
successfully, execution continues normally, and Action
is
reset to 0 (Idle). If an error happens, then
an IPWorksException exception is raised.
The following are the possible values for the Action
property
and the corresponding descriptions:
Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
Header
event.
LocalFile
and AttachedFile
to "" (empty string). Also sets CookieCount
to 0 (resets cookie arrays). Use this property
before creating a new request, so that headers from the previous request
are not carried over to the next one.
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
The user should normally have assigned correct
values to User
and Password
or Authorization
.
public void setAction(int action) throws IPWorksException
Action
property to a valid action code makes
the control perform the associated action. If the action completes
successfully, execution continues normally, and Action
is
reset to 0 (Idle). If an error happens, then
an IPWorksException exception is raised.
The following are the possible values for the Action
property
and the corresponding descriptions:
Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
Header
event.
LocalFile
and AttachedFile
to "" (empty string). Also sets CookieCount
to 0 (resets cookie arrays). Use this property
before creating a new request, so that headers from the previous request
are not carried over to the next one.
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
The user should normally have assigned correct
values to User
and Password
or Authorization
.
public java.lang.String getAttachedFile()
AttachedFile
is a non-empty string, then if the HTTP 'POST' or 'PUT' methods are used ( Post Data or Put Data Action
), the contents of the AttachedFile
file are appended to the HTTP request after any
data in PostData
.
An HTTP 'Content-Length' header is also added to request. Its
value is the cumulative length of the PostData
string and the file.
public void setAttachedFile(java.lang.String attachedFile) throws IPWorksException
AttachedFile
is a non-empty string, then if the HTTP 'POST' or 'PUT' methods are used ( Post Data or Put Data Action
), the contents of the AttachedFile
file are appended to the HTTP request after any
data in PostData
.
An HTTP 'Content-Length' header is also added to request. Its
value is the cumulative length of the PostData
string and the file.
public java.lang.String getAuthorization()
Authorization
property contains a non-empty string,
an Authorization HTTP request header is added to the
request. This header conveys Authorization information to the
server.
This property is provided so that the HTTP control can be extended with other security schemes except the common Basic authorization scheme defined by the HTTP protocol.
If User
and Password
are specified, they are Base64 encoded,
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
public void setAuthorization(java.lang.String authorization) throws IPWorksException
Authorization
property contains a non-empty string,
an Authorization HTTP request header is added to the
request. This header conveys Authorization information to the
server.
This property is provided so that the HTTP control can be extended with other security schemes except the common Basic authorization scheme defined by the HTTP protocol.
If User
and Password
are specified, they are Base64 encoded,
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
public boolean isConnected()
public java.lang.String getContentType()
ContentType
property contains a non-empty string,
a Content-Type HTTP request header is added to the
request. The purpose of the header is to show the contents
of the data being POST-ed to the server.
The most common example is posting of HTML form input data.
In that case, the ContentType
property must be set to "application/x-www-form-urlencoded" .
public void setContentType(java.lang.String contentType) throws IPWorksException
ContentType
property contains a non-empty string,
a Content-Type HTTP request header is added to the
request. The purpose of the header is to show the contents
of the data being POST-ed to the server.
The most common example is posting of HTML form input data.
In that case, the ContentType
property must be set to "application/x-www-form-urlencoded" .
public int getCookieCount()
CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public void setCookieCount(int cookieCount) throws IPWorksException
CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public java.lang.String getCookieName(int cookieIndex) throws IPWorksException
CookieCount
property. Element
indexes start at 1.
All cookies specified in the array are sent to URLServer
when the URL
is submitted.
The cookie arrays such as CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public void setCookieName(int cookieIndex, java.lang.String cookieName) throws IPWorksException
CookieCount
property. Element
indexes start at 1.
All cookies specified in the array are sent to URLServer
when the URL
is submitted.
The cookie arrays such as CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public java.lang.String getCookieValue(int cookieIndex) throws IPWorksException
CookieCount
property. Element
indexes start at 1.
All cookies specified in the array are sent to URLServer
when the URL
is submitted.
The cookie arrays such as CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public void setCookieValue(int cookieIndex, java.lang.String cookieValue) throws IPWorksException
CookieCount
property. Element
indexes start at 1.
All cookies specified in the array are sent to URLServer
when the URL
is submitted.
The cookie arrays such as CookieName
and CookieValue
maintain the cookies
sent to the server.
The SetCookie
event displays the cookies set by the server and their properties.
public byte[] getFirewallData()
public void setFirewallData(byte[] firewallData) throws IPWorksException
public java.lang.String getFirewallHost()
FirewallHost
is given, requested connections will be
authenticated through the specified firewall when connecting.
If the FirewallHost
property is set to a Domain Name, a DNS request
is initiated and upon successful termination of the request, the FirewallHost
property is set to the corresponding address. If the
search is not successful, an error is returned.
public void setFirewallHost(java.lang.String firewallHost) throws IPWorksException
FirewallHost
is given, requested connections will be
authenticated through the specified firewall when connecting.
If the FirewallHost
property is set to a Domain Name, a DNS request
is initiated and upon successful termination of the request, the FirewallHost
property is set to the corresponding address. If the
search is not successful, an error is returned.
public java.lang.String getFirewallPassword()
FirewallHost
is specified, the FirewallUser
and FirewallPassword
properties are used to connect and authenticate
to the given firewall. If the authentication fails, a trappable error is fired.
public void setFirewallPassword(java.lang.String firewallPassword) throws IPWorksException
FirewallHost
is specified, the FirewallUser
and FirewallPassword
properties are used to connect and authenticate
to the given firewall. If the authentication fails, a trappable error is fired.
public int getFirewallPort()
FirewallHost
. See the
description of the FirewallHost
property for
details.
Note that the FirewallPort
is set automatically
when FirewallType
is set to a valid value. See the
description of the FirewallType
property for
details.
public void setFirewallPort(int firewallPort) throws IPWorksException
FirewallHost
. See the
description of the FirewallHost
property for
details.
Note that the FirewallPort
is set automatically
when FirewallType
is set to a valid value. See the
description of the FirewallType
property for
details.
public int getFirewallType()
FirewallPort
is set to 80.
FirewallPort
is set to 1080.
FirewallPort
is set to 1080.
public void setFirewallType(int firewallType) throws IPWorksException
FirewallPort
is set to 80.
FirewallPort
is set to 1080.
FirewallPort
is set to 1080.
public java.lang.String getFirewallUser()
FirewallHost
is specified, the FirewallUser
and FirewallPassword
properties are used to connect and authenticate
to the given firewall. If the authentication fails, a trappable error is fired.
public void setFirewallUser(java.lang.String firewallUser) throws IPWorksException
FirewallHost
is specified, the FirewallUser
and FirewallPassword
properties are used to connect and authenticate
to the given firewall. If the authentication fails, a trappable error is fired.
public int getFollowRedirects()
FollowRedirects
is set to
frAlways (1) the new URL
for the object is retrieved automatically
every time.
If FollowRedirects
is set to frSameScheme (2), the new URL
is
retrieved automatically only if the URLScheme
is the same, otherwise
a runtime error is returned.
Note that following the HTTP specification, automatic redirects, will be performed only for 'GET' or 'HEAD' requests. Other methods could potentially change the conditions of the initial request and create security vulnerabilities.
The default value is frNever (0). In this case, redirects are never followed, and a runtime error is generated instead.
public void setFollowRedirects(int followRedirects) throws IPWorksException
FollowRedirects
is set to
frAlways (1) the new URL
for the object is retrieved automatically
every time.
If FollowRedirects
is set to frSameScheme (2), the new URL
is
retrieved automatically only if the URLScheme
is the same, otherwise
a runtime error is returned.
Note that following the HTTP specification, automatic redirects, will be performed only for 'GET' or 'HEAD' requests. Other methods could potentially change the conditions of the initial request and create security vulnerabilities.
The default value is frNever (0). In this case, redirects are never followed, and a runtime error is generated instead.
public java.lang.String getFrom()
From
property contains a non-empty string,
an HTTP From: header is added to the
request. This header generally gives the email
address of the requester of the document.
public void setFrom(java.lang.String from) throws IPWorksException
From
property contains a non-empty string,
an HTTP From: header is added to the
request. This header generally gives the email
address of the requester of the document.
public java.lang.String getHTTPMethod()
HTTPMethod
is computed
automatically by the specified Action
. You may change it to
a custom value if you require a method other than what is
provided by the control actions.
public void setHTTPMethod(java.lang.String HTTPMethod) throws IPWorksException
HTTPMethod
is computed
automatically by the specified Action
. You may change it to
a custom value if you require a method other than what is
provided by the control actions.
public java.lang.String getHTTPVersion()
HTTPVersion
is HTTP/1.0.
public void setHTTPVersion(java.lang.String HTTPVersion) throws IPWorksException
HTTPVersion
is HTTP/1.0.
public java.lang.String getIfModifiedSince()
IfModifiedSince
property contains a non-empty string,
a If-Modified-Since HTTP request header is added to the
request. The value of the header is used to make the HTTP request
conditional: if the requested documented has not been modified
since the time specified in the field, a copy of the document will not
be returned from the server; instead, a 304 (not modified) response
will be returned only.
The format of the date value for IfModifiedSince
is detailed
in the HTTP specs. An example is Sat, 29 Oct 1994 19:43:31 GMT.
public void setIfModifiedSince(java.lang.String ifModifiedSince) throws IPWorksException
IfModifiedSince
property contains a non-empty string,
a If-Modified-Since HTTP request header is added to the
request. The value of the header is used to make the HTTP request
conditional: if the requested documented has not been modified
since the time specified in the field, a copy of the document will not
be returned from the server; instead, a 304 (not modified) response
will be returned only.
The format of the date value for IfModifiedSince
is detailed
in the HTTP specs. An example is Sat, 29 Oct 1994 19:43:31 GMT.
public java.lang.String getLocalFile()
LocalFile
property is used when getting a document
via the Action
property.
If LocalFile
is empty then
the received data is provided through the parameters of the Transfer
event.
public void setLocalFile(java.lang.String localFile) throws IPWorksException
LocalFile
property is used when getting a document
via the Action
property.
If LocalFile
is empty then
the received data is provided through the parameters of the Transfer
event.
public java.lang.String getLocalHost()
LocalHost
property contains the name of the local host
as obtained by the gethostname() Winsock call, or if the
user has assigned an IP address, the value of that address.
In multihomed hosts (machines with more than one IP interface) setting LocalHost to the value of an interface will make the control initiate connections (or accept in the case of server controls) only through that interface.
If the control is connected, the LocalHost
property shows
the IP address of the interface through which the connection
is made in internet dotted format (aaa.bbb.ccc.ddd). In most
cases, this is the address of the local host, except for multihomed
hosts (machines with more than one IP interface).
NOTE: LocalHost
is not persistent. You must always set it in
code, and never in the property window.
public void setLocalHost(java.lang.String localHost) throws IPWorksException
LocalHost
property contains the name of the local host
as obtained by the gethostname() Winsock call, or if the
user has assigned an IP address, the value of that address.
In multihomed hosts (machines with more than one IP interface) setting LocalHost to the value of an interface will make the control initiate connections (or accept in the case of server controls) only through that interface.
If the control is connected, the LocalHost
property shows
the IP address of the interface through which the connection
is made in internet dotted format (aaa.bbb.ccc.ddd). In most
cases, this is the address of the local host, except for multihomed
hosts (machines with more than one IP interface).
NOTE: LocalHost
is not persistent. You must always set it in
code, and never in the property window.
public int getMaxTransferredData()
TransferredData
buffer.
If MaxTransferredData
is set to 0, no limits are imposed.
public void setMaxTransferredData(int maxTransferredData) throws IPWorksException
TransferredData
buffer.
If MaxTransferredData
is set to 0, no limits are imposed.
public java.lang.String getOtherHeaders()
OtherHeaders
property contains a string of headers
to be appended to the HTTP request headers created from other
properties like ContentType
, From
, etc.
The headers must of the format "header: value" as specified in the HTTP specs. Header lines should be separated by CRLF ("\\r\\n").
Use this property with caution. If OtherHeaders
contains
invalid headers, HTTP requests may fail.
The OtherHeaders
property is useful for extending the
functionality of the control beyond what is provided.
public void setOtherHeaders(java.lang.String otherHeaders) throws IPWorksException
OtherHeaders
property contains a string of headers
to be appended to the HTTP request headers created from other
properties like ContentType
, From
, etc.
The headers must of the format "header: value" as specified in the HTTP specs. Header lines should be separated by CRLF ("\\r\\n").
Use this property with caution. If OtherHeaders
contains
invalid headers, HTTP requests may fail.
The OtherHeaders
property is useful for extending the
functionality of the control beyond what is provided.
public java.lang.String getPassword()
User
and Password
are Base64 encoded
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
The User
and Password
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the User
and Password
properties are immediately cleared.
public void setPassword(java.lang.String password) throws IPWorksException
User
and Password
are Base64 encoded
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
The User
and Password
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the User
and Password
properties are immediately cleared.
public byte[] getPostData()
PostData
is a non-empty string, then if the HTTP 'POST' method is used ( Post Data Action
), the contents of the PostData
property are appended to the HTTP request after the
HTTP headers.
An HTTP 'Content-Length' header is also added to the request. Its
value is the length of the string in PostData
, or, if the AttachedFile
property has been set, the cumulative length of the
string and the file. See the description of the AttachedFile
property for details.
public void setPostData(byte[] postData) throws IPWorksException
PostData
is a non-empty string, then if the HTTP 'POST' method is used ( Post Data Action
), the contents of the PostData
property are appended to the HTTP request after the
HTTP headers.
An HTTP 'Content-Length' header is also added to the request. Its
value is the length of the string in PostData
, or, if the AttachedFile
property has been set, the cumulative length of the
string and the file. See the description of the AttachedFile
property for details.
public java.lang.String getPragma()
Pragma
property contains a non-empty string,
a Pragma HTTP request header is added to the
request. The meaning of the header depends on
the implementation and can be used to send/receive
proprietary information to/from the server.
public void setPragma(java.lang.String pragma) throws IPWorksException
Pragma
property contains a non-empty string,
a Pragma HTTP request header is added to the
request. The meaning of the header depends on
the implementation and can be used to send/receive
proprietary information to/from the server.
public java.lang.String getProxyAuthorization()
Authorization
property contains a non-empty string,
a Prxy-Authorization HTTP request header is added to the
request. This header conveys proxy authorization information to the
server.
If ProxyUser
and ProxyPassword
are specified, they are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
public void setProxyAuthorization(java.lang.String proxyAuthorization) throws IPWorksException
Authorization
property contains a non-empty string,
a Prxy-Authorization HTTP request header is added to the
request. This header conveys proxy authorization information to the
server.
If ProxyUser
and ProxyPassword
are specified, they are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
public java.lang.String getProxyPassword()
ProxyUser
and ProxyPassword
are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
The ProxyUser
and ProxyPassword
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the ProxyUser
and ProxyPassword
properties are immediately cleared.
public void setProxyPassword(java.lang.String proxyPassword) throws IPWorksException
ProxyUser
and ProxyPassword
are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
The ProxyUser
and ProxyPassword
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the ProxyUser
and ProxyPassword
properties are immediately cleared.
public int getProxyPort()
ProxyServer
. See the
description of the ProxyServer
property for
details.
public void setProxyPort(int proxyPort) throws IPWorksException
ProxyServer
. See the
description of the ProxyServer
property for
details.
public java.lang.String getProxyServer()
ProxyServer
is given, then the HTTP request is
sent to the proxy instead of the server specified in the URL
.
If the ProxyServer
property is set to a Domain Name, a DNS request
is initiated and upon successful termination of the request, the ProxyServer
property is set to the corresponding address. If the
search is not successful, an error is returned.
public void setProxyServer(java.lang.String proxyServer) throws IPWorksException
ProxyServer
is given, then the HTTP request is
sent to the proxy instead of the server specified in the URL
.
If the ProxyServer
property is set to a Domain Name, a DNS request
is initiated and upon successful termination of the request, the ProxyServer
property is set to the corresponding address. If the
search is not successful, an error is returned.
public java.lang.String getProxyUser()
ProxyUser
and ProxyPassword
are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
The ProxyUser
and ProxyPassword
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the ProxyUser
and ProxyPassword
properties are immediately cleared.
public void setProxyUser(java.lang.String proxyUser) throws IPWorksException
ProxyUser
and ProxyPassword
are Base64 encoded,
and the result is put in the ProxyAuthorization
property
in the form "Basic [encoded-proxyuser-proxypassword]".
The ProxyUser
and ProxyPassword
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the ProxyUser
and ProxyPassword
properties are immediately cleared.
public java.lang.String getReferer()
Referer
property contains a non-empty string,
a Referer HTTP request header is added to the
request. The purpose of the header is to show the
document referring the requested URL.
public void setReferer(java.lang.String referer) throws IPWorksException
Referer
property contains a non-empty string,
a Referer HTTP request header is added to the
request. The purpose of the header is to show the
document referring the requested URL.
public java.lang.String getStatusLine()
Action
property, the
error string is the same as the StatusLine
property.
The HTTP protocol specifies the structure of the StatusLine
as: [HTTP version] [Result Code] [Description].
public int getTimeout()
Timeout
property is set to 0 (default value) all actions
will run uninterrupted until succesful completion, or an error condition
is encountered.
If Timeout
is set to a positive value, and any action does not
complete within Timeout
seconds, the action is aborted, and a 'Timeout' error is fired..
The control will use DoEvents
to enter an efficient wait loop
during any potential waiting period, making sure that all system events
are processed immediately as they arrive. This ensures that the host
application does not "freeze" and always remains responsive.
public void setTimeout(int timeout) throws IPWorksException
Timeout
property is set to 0 (default value) all actions
will run uninterrupted until succesful completion, or an error condition
is encountered.
If Timeout
is set to a positive value, and any action does not
complete within Timeout
seconds, the action is aborted, and a 'Timeout' error is fired..
The control will use DoEvents
to enter an efficient wait loop
during any potential waiting period, making sure that all system events
are processed immediately as they arrive. This ensures that the host
application does not "freeze" and always remains responsive.
public byte[] getTransferredData()
LocalFile
is not empty, the data is not accumulated and TransferredData
returns an empty string.
The MaxTransferredData
property controls the amount of data
accumulated in TransferredData
.
public java.lang.String getTransferredHeaders()
Header
event shows
the individual headers as parsed by the control.
public java.lang.String getURL()
URLScheme
, URLServer
, URLPort
, and URLPath
properties.
public void setURL(java.lang.String URL) throws IPWorksException
URLScheme
, URLServer
, URLPort
, and URLPath
properties.
public java.lang.String getURLPath()
URL
property.
public void setURLPath(java.lang.String URLPath) throws IPWorksException
URL
property.
public int getURLPort()
URL
property.
public void setURLPort(int URLPort) throws IPWorksException
URL
property.
public java.lang.String getURLScheme()
URL
property.
public void setURLScheme(java.lang.String URLScheme) throws IPWorksException
URL
property.
public java.lang.String getURLServer()
URL
property.
public void setURLServer(java.lang.String URLServer) throws IPWorksException
URL
property.
public java.lang.String getUser()
User
and Password
are Base64 encoded,
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
The User
and Password
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the User
and Password
properties are immediately cleared.
public void setUser(java.lang.String user) throws IPWorksException
User
and Password
are Base64 encoded,
and the result is put in the Authorization
property
in the form "Basic [encoded-user-password]".
The User
and Password
properties must be set only after the URL
property is set. When the URL
property is set, for security reasons, the User
and Password
properties are immediately cleared.
public java.lang.String getUserAgent()
public void setUserAgent(java.lang.String userAgent) throws IPWorksException
public void fireConnected(int statusCode, java.lang.String description)
HttpConnectedEvent
public void fireDisconnected(int statusCode, java.lang.String description)
HttpDisconnectedEvent
public void fireEndTransfer(int direction)
HttpEndTransferEvent
public void fireError(int errorCode, java.lang.String description)
HttpErrorEvent
public void fireHeader(java.lang.String field, java.lang.String value)
HttpHeaderEvent
public void fireSetCookie(java.lang.String name, java.lang.String value, java.lang.String expires, java.lang.String domain, java.lang.String path, boolean secure)
HttpSetCookieEvent
public void fireStartTransfer(int direction)
HttpStartTransferEvent
public void fireTransfer(int direction, int bytesTransferred, byte[] text)
HttpTransferEvent
public void addCookie(java.lang.String cookieName, java.lang.String cookieValue) throws IPWorksException
CookieName
and CookieValue
properties
for more information on cookies and how they are managed.
public void get(java.lang.String URL) throws IPWorksException
Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
Calling this method is equivalent to setting the Action
property
to httpGet .
public void head(java.lang.String URL) throws IPWorksException
Header
event.
Calling this method is equivalent to setting the Action
property
to httpHead .
public void interrupt() throws IPWorksException
Action
property
to Idle (0) .
public void post(java.lang.String URL) throws IPWorksException
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
Calling this method is equivalent to setting the Action
property
to httpPost .
public void put(java.lang.String URL) throws IPWorksException
PostData
and/or AttachedFile
. The server response
text is received through the Transfer
event, and the HTTP response headers
through the Header
event.
If LocalFile
is not empty the data (not the headers) is written there as well.
The user should normally have assigned correct
values to User
and Password
or Authorization
.
Calling this method is equivalent to setting the Action
property
to httpPut .
public void resetHeaders() throws IPWorksException
LocalFile
and AttachedFile
to "" (empty string). Also sets CookieCount
to 0 (resets cookie arrays). Use this method
before creating a new request, so that headers from the previous message
are not carried over to the next one.
Calling this method is equivalent to setting the Action
property
to httpResetHeaders .
public void addHttpEventListener(HttpEventListener l) throws java.util.TooManyListenersException
public void removeHttpEventListener(HttpEventListener l)
|
![]() |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |