DocumentSpec
from panda3d.core import DocumentSpec
- class DocumentSpec
Bases:
DTOOL_SUPER_BASE
A descriptor that refers to a particular version of a document. This includes the URL of the document and its identity tag and last-modified dates.
The DocumentSpec may also be used to request a newer document than a particular one if available, for instance to refresh a cached document.
Inheritance diagram
- CCAllowCache = 0
- CCNoCache = 2
- CCRevalidate = 1
- CC_allow_cache = 0
- CC_no_cache = 2
- CC_revalidate = 1
- RMAny = 0
- RMEqual = 1
- RMEqualOrNewer = 3
- RMNewer = 2
- RM_any = 0
- RM_equal = 1
- RM_equal_or_newer = 3
- RM_newer = 2
- __init__(*args, **kwargs)
- assign()
C++ Interface: assign(const DocumentSpec self, const DocumentSpec copy)
- cache_control
- clearDate()
C++ Interface: clear_date(const DocumentSpec self)
- /**
Removes the last-modified date associated with the DocumentSpec, if there
is one.
*/
- clearTag()
C++ Interface: clear_tag(const DocumentSpec self)
- /**
Removes the identity tag associated with the DocumentSpec, if there is one.
*/
- clear_date()
C++ Interface: clear_date(const DocumentSpec self)
- /**
Removes the last-modified date associated with the DocumentSpec, if there
is one.
*/
- clear_tag()
C++ Interface: clear_tag(const DocumentSpec self)
- /**
Removes the identity tag associated with the DocumentSpec, if there is one.
*/
- date
- getCacheControl()
C++ Interface: get_cache_control(DocumentSpec self)
- /**
Returns the request mode of this DocumentSpec. See set_cache_control().
*/
- getDate()
C++ Interface: get_date(DocumentSpec self)
- /**
Returns the last-modified date associated with the DocumentSpec, if there
is one. It is an error to call this if has_date() returns false.
*/
- getRequestMode()
C++ Interface: get_request_mode(DocumentSpec self)
- /**
Returns the request mode of this DocumentSpec. See set_request_mode().
*/
- getTag()
C++ Interface: get_tag(DocumentSpec self)
- /**
Returns the identity tag associated with the DocumentSpec, if there is one.
It is an error to call this if has_tag() returns false.
The identity tag is set by the HTTP server to uniquely refer to a
particular version of a document.
*/
- get_cache_control()
C++ Interface: get_cache_control(DocumentSpec self)
- /**
Returns the request mode of this DocumentSpec. See set_cache_control().
*/
- get_date()
C++ Interface: get_date(DocumentSpec self)
- /**
Returns the last-modified date associated with the DocumentSpec, if there
is one. It is an error to call this if has_date() returns false.
*/
- get_request_mode()
C++ Interface: get_request_mode(DocumentSpec self)
- /**
Returns the request mode of this DocumentSpec. See set_request_mode().
*/
- get_tag()
C++ Interface: get_tag(DocumentSpec self)
- /**
Returns the identity tag associated with the DocumentSpec, if there is one.
It is an error to call this if has_tag() returns false.
The identity tag is set by the HTTP server to uniquely refer to a
particular version of a document.
*/
- hasDate()
C++ Interface: has_date(DocumentSpec self)
- /**
Returns true if a last-modified date is associated with the DocumentSpec.
*/
- hasTag()
C++ Interface: has_tag(DocumentSpec self)
- /**
Returns true if an identity tag is associated with the DocumentSpec.
*/
- has_date()
C++ Interface: has_date(DocumentSpec self)
- /**
Returns true if a last-modified date is associated with the DocumentSpec.
*/
- has_tag()
C++ Interface: has_tag(DocumentSpec self)
- /**
Returns true if an identity tag is associated with the DocumentSpec.
*/
- input()
C++ Interface: input(const DocumentSpec self, istream in)
- /**
Can be used to read in the DocumentSpec from a stream generated either by
output() or write(). Returns true on success, false on failure.
*/
- request_mode
- setCacheControl()
C++ Interface: set_cache_control(const DocumentSpec self, int cache_control)
- /**
Specifies what kind of cached value is acceptable for this document.
Warning: some HTTP proxies may not respect this setting and may return a
cached result anyway.
CC_allow_cache: the normal HTTP behavior; the server may return a cached
value if it believes it is valid.
CC_revalidate: a proxy is forced to contact the origin server and verify
that is cached value is in fact still valid before it returns it.
CC_no_cache: a proxy must not return its cached value at all, but is forced
to go all the way back to the origin server for the official document.
The default mode is CC_allow_cache.
*/
- setDate()
C++ Interface: set_date(const DocumentSpec self, const HTTPDate date)
- /**
Changes the last-modified date associated with the DocumentSpec.
*/
- setRequestMode()
C++ Interface: set_request_mode(const DocumentSpec self, int request_mode)
- /**
Sets the request mode of this DocumentSpec. This is only relevant when
using the DocumentSpec to generate a request (for instance, in
HTTPChannel). This specifies whether the document request will ask the
server for a newer version than the indicated version, or the exact
version, neither, or either.
The possible values are:
RM_any: ignore date and tag (if specified), and retrieve any document that
matches the URL. For a subrange request, if the document matches the
version indicated exactly, retrieve the subrange only; otherwise, retrieve
the entire document.
RM_equal: request only the precise version of the document that matches the
particular date and/or tag exactly, if specified; fail if this version is
not available.
RM_newer: request any document that is newer than the version indicated by
the particular date and/or tag; fail if only that version (or older
versions) are available.
RM_newer_or_equal: request any document that matches the version indicated
by the particular date and/or tag, or is a newer version; fail if only
older versions are available.
In any of the above, you may specify either or both of the last-modified
date and the identity tag, whichever is known to the client.
The default mode is RM_any.
*/
- setTag()
C++ Interface: set_tag(const DocumentSpec self, const HTTPEntityTag tag)
- /**
Changes the identity tag associated with the DocumentSpec.
*/
- setUrl()
C++ Interface: set_url(const DocumentSpec self, const URLSpec url)
- /**
Changes the URL of the DocumentSpec without modifying its other properties.
Normally this would be a strange thing to do, because the tag and date are
usually strongly associated with the URL. To get a DocumentSpec pointing
to a new URL, you would normally create a new DocumentSpec object.
*/
- set_cache_control()
C++ Interface: set_cache_control(const DocumentSpec self, int cache_control)
- /**
Specifies what kind of cached value is acceptable for this document.
Warning: some HTTP proxies may not respect this setting and may return a
cached result anyway.
CC_allow_cache: the normal HTTP behavior; the server may return a cached
value if it believes it is valid.
CC_revalidate: a proxy is forced to contact the origin server and verify
that is cached value is in fact still valid before it returns it.
CC_no_cache: a proxy must not return its cached value at all, but is forced
to go all the way back to the origin server for the official document.
The default mode is CC_allow_cache.
*/
- set_date()
C++ Interface: set_date(const DocumentSpec self, const HTTPDate date)
- /**
Changes the last-modified date associated with the DocumentSpec.
*/
- set_request_mode()
C++ Interface: set_request_mode(const DocumentSpec self, int request_mode)
- /**
Sets the request mode of this DocumentSpec. This is only relevant when
using the DocumentSpec to generate a request (for instance, in
HTTPChannel). This specifies whether the document request will ask the
server for a newer version than the indicated version, or the exact
version, neither, or either.
The possible values are:
RM_any: ignore date and tag (if specified), and retrieve any document that
matches the URL. For a subrange request, if the document matches the
version indicated exactly, retrieve the subrange only; otherwise, retrieve
the entire document.
RM_equal: request only the precise version of the document that matches the
particular date and/or tag exactly, if specified; fail if this version is
not available.
RM_newer: request any document that is newer than the version indicated by
the particular date and/or tag; fail if only that version (or older
versions) are available.
RM_newer_or_equal: request any document that matches the version indicated
by the particular date and/or tag, or is a newer version; fail if only
older versions are available.
In any of the above, you may specify either or both of the last-modified
date and the identity tag, whichever is known to the client.
The default mode is RM_any.
*/
- set_tag()
C++ Interface: set_tag(const DocumentSpec self, const HTTPEntityTag tag)
- /**
Changes the identity tag associated with the DocumentSpec.
*/
- set_url()
C++ Interface: set_url(const DocumentSpec self, const URLSpec url)
- /**
Changes the URL of the DocumentSpec without modifying its other properties.
Normally this would be a strange thing to do, because the tag and date are
usually strongly associated with the URL. To get a DocumentSpec pointing
to a new URL, you would normally create a new DocumentSpec object.
*/
- tag
- url