|
Novell exteNd Director 5.2 API |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
The Content Manager provides the ability to define Document Layouts which are descriptions of how Documents should look like once they are retrieved by the Presentation Layer and rendered for viewing.
It is assumed that an Administrator would create a number of Document Layout Styles per a specific Document Type. E.g. for the type of "Movie Review", there may be three Styles: "with the picture on the left", "with the picture on the right", "with the picture underneath the text".
For each of the Layout Styles, the Administrator may set up a number of Layout Documents, by setting Layout Document Descriptors for the Style. A Layout Document Descriptor is created per a Layout Style and contains a) the ID of the Document that stores a Document Layout and b) the "user agent" qualifier. The User Agent is a special header which is used for identifying the Web client to the server.
The Layout Styles may be thought of as Layout interfaces or general descriptions of Layouts, whereas the Layout Documents may be thought of as the actual implementations of Layouts. E.g. for the type of "Movie Review", each specific Style may have several actual Layouts:
Document Type |
Layout Style |
Layout Document |
Client type |
---|---|---|---|
"Movie Review" |
id=5 (with picture on the left) |
id=6 |
unknown or default |
id=6 |
Internet Explorer |
||
id=7 |
Netscape |
||
id=8 |
Lynx |
||
id=8 |
Opera |
||
id=6 (with picture on the right) |
id=9 |
Internet Explorer |
|
id=10 |
Netscape |
||
id=11 |
Lynx |
||
id=11 |
Opera |
||
id=10 |
unknown or default |
||
id=7 (with picture underneath the text) |
id=12 |
unknown or default |
A Document Author may choose to decide to make use of the Layouts, in which case they create a Document Layout Set for their Document, which is specific for a Layout Style chosen by the Author for the Document. The Set allows the Content Manager to fetch a Layout for the Presentation Layer that is specific to a particular Client, who is identified by their User Agent. Below is an example of a Layout Set:
Document |
Layout Style |
Layout Document |
Layout Document Version |
---|---|---|---|
id=15 (a specific Movie Review) |
id=5 (with picture on the left) |
id=6 |
version id=5 (locked in to version 5) |
id=7 |
version id=6 (locked in to version 6) |
||
id=8 |
version id=-1 (use whatever version is currently published) |
Note that the Document Author may choose to "lock in" to a specific version of each individual Layout Document, or decide to default to whatever the published version of that Document happens to be at the time of the Client's request.
See Section 14.42 of the HTTP 1.1 spec for more information on user agents.
Examples of user agent strings:
User Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)
User Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)
User Agent: Mozilla/4.5 (Macintosh; U; PPC)
User Agent: Mozilla/4.7 [en] (WinNT; I)
User Agent: Mozilla/3.0 (compatible; Opera/3.0; Windows 95/NT) 3.1
User Agent: Mozilla/4.03 [la] (X11; I; Linux 2.1.29 i586)
User Agent: Mozilla/2.0 (compatible; AOL 3.0; Mac_PowerPC)
User Agent: NCSA Mosaic/2.6b1 (X11;UNIX_SV 4.2MP R4000) libwww/2.12 modified
User Agent: Lynx/2.7 libwww-FM/2.14
Field Summary | |
static String |
EL_LAYOUT_DOC_DESC
The element type of Layout Document Descriptor |
Fields inherited from interface com.sssw.cm.api.EbiCmElement |
OP_COPY,
OP_MOVE,
OP_REMOVE,
OP_UPDATE |
Method Summary | |
String |
getLayoutDocumentID()
Gets the ID of the Layout Document. |
String |
getStyleID()
Gets the ID of the Layout Style. |
String |
getUserAgent()
Gets the User Agent associated with this Descriptor. |
void |
setLayoutDocumentID(String layoutDocID)
Deprecated. Use EbiContentMgmtDelegate.updateLayoutDocumentDescriptor(EbiContext, EbiLayoutDocDescriptor, String) |
void |
setStyleID(String styleID)
Set the Style ID. |
void |
setUserAgent(String userAgent)
Deprecated. Use EbiContentMgmtDelegate.updateLayoutDocumentDescriptor(EbiContext, EbiLayoutDocDescriptor, String) |
Methods implemented from interface com.sssw.cm.api.EbiCmElement |
fromXML,
toXML,
validateOperation |
Methods implemented from interface com.sssw.fw.api.EbiFrameworkElement |
getElementUUID,
getLastModified,
getLastModifiedBy,
isEqualTo,
isReadOnly,
resetReadOnly,
setLastModified,
setLastModifiedBy,
setReadOnly |
Methods implemented from interface com.sssw.fw.api.EbiElement |
getType |
Field Detail |
public static final String EL_LAYOUT_DOC_DESC
Method Detail |
public String getStyleID()
public String getLayoutDocumentID()
public String getUserAgent()
public void setLayoutDocumentID(String layoutDocID)
EbiContentMgmtDelegate.updateLayoutDocumentDescriptor(EbiContext, EbiLayoutDocDescriptor, String)
EbiContentManager.updateLayoutDocumentDescriptor
for the
changes to take effect.layoutDocID
- the new value for the Layout Document ID.public void setStyleID(String styleID)
public void setUserAgent(String userAgent)
EbiContentMgmtDelegate.updateLayoutDocumentDescriptor(EbiContext, EbiLayoutDocDescriptor, String)
EbiContentManager.addLayoutDocumentDescriptor
or EbiContentManager.updateLayoutDocumentDescriptor
for the
changes to take effect.userAgent
- the new value for the User Agent; the value of null or
empty string implies that this Layout Descriptor describes the default
implementation of the Layout Style
|
Novell exteNd Director 5.2 API |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |