|
WWW Interface Design
Revision A - 1 APR 1996
|
| Name | Position | E-mail address |
---|
Author(s): | Peter Wikström | | pt93pw@pt.hk-r.se |
Responsible: | Johan Sassner | Team Manager | pt93js@pt.hk-r.se |
To: | SIW | Project Team | |
Cc: | SAIDA | Project | saida@pt.hk-r.se |
Abstract
The WWW interface subsystem of the SAIDA project offers the functionality of remotely monitoring and changing the settings of home appliances via WWW to customers of Sydkraft.
1 Outline
1.1 Requirements
All the requirements in the WWW Interface requirements specification [SAIDA 96-1] has to be met by implementing the design presented in this document.
1.2 Subsystem boundaries
The WWW interface subsystem presents the ability for a customer of Sydkraft to remotely monitor and change the status of the appliances in their homes.
Technically speaking, this subsystem interacts with the WWW server and the Data Server in the SAIDA system environment. The WWW interface uses the Data Server to get and set the values of the customer's appliances, and the WWW server to present data and receive input from the customer.
The system will be implemented as two subsystems of which one gets data from the Data Server and presents it to the customer, and the other gets information from a HTML-page and sets the specified values of variables in the Data Server.
2 Extensions to HTML
In order to be able to implement the necessary functionality of the WWW interface, some extensions need to be made to the HTML language. HTML combined with these extensions will be called SEHTML (SAIDA Extended HyperText Markup Language).
2.1 SGET
This tag makes it possible to retrieve data from the Data Server for a specific variable. When the value of the variable has been retrieved, the SGET tag in the HTML code will be substituted with this value.
2.1.1 Syntax
<SGET VARIABLE="Unique name of the variable">
2.1.2 Tag
<SGET>
2.1.3 End Tag
No end tag is necessary.
2.1.4 Parameters
2.1.4.1 VARIABLE
Definition
The variable name in a format which can be understood by the Data Server.
Description
The variable name to get the value of from the Data Server.
2.2 SSET
This tag makes it possible to set a value in the Data Server for a specific variable.
2.2.1 Syntax
<SSET VARIABLE="Unique name of the variable" VALUE="Value of the variable">
2.2.2 Tag
<SSET>
2.2.3 End Tag
No end tag is necessary.
2.2.4 Parameters
2.2.4.1 VARIABLE
Definition
The variable name in a format which can be understood by the Data Server.
Description
The variable name to set to a specific value through the use of the Data Server.
2.2.4.2 VALUE
Definition
A valid value for the variable specified in the set-tag to be set to. The definition of valid depends on which variable it applies to. If the value was considered invalid by the Data Server, an error-message is expected to be returned from it.
Description
Value to ask the Data Server to set the previously specified variable to.
2.3 SERR
This tag specifies where to place error messages returned from the Data Server in a HTML page
2.3.1 Syntax
<SERR>
2.3.2 Tag
<SERR>
2.3.3 End Tag
No end tag is necessary.
2.3.4 Parameters
No parameters exist for this tag.
2.4 IF
NOTE: This tag is not to be implemented at this time due to time budget constraints.
By using this tag, conditional actions can be achieved, i.e. the execution of actions which depend on if a condition has been fulfilled or not. The action could be anything which is allowed in standard HTML syntax, such as only showing links or text if a certain condition has been met, or get or set a variable in the Data Server depending on the condition.
2.4.1 Syntax
<IF VARIABLE="Name" CONDITION="Comparison operator" VALUE="Variable value">
ACTION
</IF>
<IF VARIABLE="Name" CONDITION="Comparison operator" VARIABLE="Name">
ACTION
</IF>
2.4.2 Tag
<IF>
2.4.3 End Tag
</IF>
2.4.4 Parameters
2.4.4.1 VARIABLE
Definition
The variable name in a format which can be understood by the Data Server.
Description
The variable name to compare against a certain condition.
2.4.4.2 CONDITION
Definition
A comparison operator which evaluates to either true or false. Valid operators are (==, !=, <, <=, >, >=).
Description
A condition which has to be fulfilled for the if-statement to be executed.
2.4.4.3 VALUE
Definition
The value for the variable specified in the if-tag to be compared against.
Description
The value to compare the specified variable against.
2.5 INCLUDE
NOTE: This tag is not to be implemented at this time due to time budget constraints.
This tag makes it possible to include another HTML/SEHTML-file into the one which is being parsed by the SEHTMLParser entity.
2.5.1 Syntax
<INCLUDE FILE="path/filename.extension">
</INCLUDE>
2.5.2 Tag
<INCLUDE>
2.5.3 End Tag
</INCLUDE>
2.5.4 Parameters
2.5.4.1 FILE
Definition
Filename according to the standard in [CQM 96-1].
Description
The name of the file to include into the file being parsed by the SEHTMLParser.
3 Global Interface Entities
3.1 Generator.exe
This binary contains the functionality for parsing a template SEHTML page, getting information on the appliances of a customer, and presenting this information as a HTML page.
The entities used by this entity are:
3.1.1 Global Interface Specification
This entity is invoked in as a cgi-bin script when a user selects a specified link in a web-browser.
The following method is externally accessible:
3.1.2 Subsystem Interface Specification
This entity offers no methods to other entities within the subsystem.
3.1.3 Internal Interface Specification
This entity has no internal methods.
3.1.4 Traceability
3.1.4.1 Backwards
The requirements met by this entity are:
[WWW_F1], [WWW_F3], [WWW_A1], in [SAIDA 96-1].
3.1.4.2 Forwards
The implementation of this entity can be found in the following file:
3.1.5 Attributes
3.1.5.1 SCgi theCgi
- Description: Instance of class SCgi which is used to decode HTML forms.
- Limits: theCgi != 0.
3.1.5.2 SGen theGen
- Description: Instance of class SGen which is used to generate a new HTML page from a
SEHTML template page.
- Limits: theGen != 0.
3.1.5.3 SClients theClients
- Description: Stores information on which client is accessing the script.
- Limits: theClients != 0.
3.1.5.4 SHTMLPage* thePage
3.1.6 Methods
This entity has no methods.
3.2 Updator.exe
This binary contains the functionality for parsing a HTML page containing forms, updating information on the appliances of a customer and presenting possible error-information as a HTML page.
The entities used by this entity are:
3.2.1 Global Interface Specification
This entity is invoked in as a cgi-bin script when a user selects a specified link in a web-browser.
The following method is externally accessible:
3.2.2 Subsystem Interface Specification
This entity offers no methods to other entities within the subsystem.
3.2.3 Internal Interface Specification
This entity has no internal methods.
3.2.4 Traceability
3.2.4.1 Backwards
The requirements met by this entity are:
[WWW_F2], [WWW_F4], [WWW_A1], in [SAIDA 96-1].
3.2.4.2 Forwards
The implementation of this entity can be found in the following file:
3.2.5 Attributes
3.2.5.1 SCgi theCgi
- Description: Instance of class SCgi which is used to decode HTML forms.
- Limits: theCgi != 0.
3.2.5.2 SGen theGen
- Description: Instance of class SGen which is used to generate a new HTML page from a
SEHTML template page.
- Limits: theGen != 0.
3.2.5.3 SClients theClients
- Description: Stores information on which client is accessing the script.
- Limits: theClients != 0.
3.2.5.4 SHTMLPage* thePage
3.2.6 Methods
This entity has no methods.
3.3 SC_ClientInterface
This entity contains the client interface functionality towards the Data Server. It is through this entity that the calls to/from the Data Server passes to [3.1], "Generator.exe" and [3.2], "Updator.exe".
3.3.1 Global Interface Specification
There are no externally accessible methods.
3.3.2 Subsystem Interface Specification
The following methods are externally accessible:
3.3.3 Internal Interface Specification
This entity has no internal methods.
3.3.4 Traceability
3.3.4.1 Backwards
The requirements met by this entity are:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], [WWW_A1], in [SAIDA 96-1].
3.3.4.2 Forwards
The implementation of this entity can be found in the following file:
- clientinterface.h
- clientinterface.cpp
3.3.5 Attributes
3.3.5.1 ISC_Export serverStub
- Description: Automatically generated mirror-class of exported class in the Data Server.
- Limits: serverStub != 0.
3.3.6 Methods
3.3.6.1 SC_ClientInterface ( void )
3.3.6.2 ~SC_ClientInterface ( void )
3.3.6.3 short Get ( CString& name, CString& value, CString& msg )
- Description: Gets the value of the specified variable from the Data Server.
- Input: name - The name of the variable to get the value of.
value - String for storing the value of the variable in.
msg - Struct for storing possible error-message.
- Output: The return-code from the Data Server-call.
- Used by: [4.8], "STokenSGET".
- Uses: NONE.
3.3.6.4 short Set ( CString& name, CString& value, CString& msg )
- Description: Set the value of the specified variable in the Data Server.
- Input: name - The name of the variable to set the value of.
value - String containing the new value of the variable.
msg - Struct for storing possible error-message.
- Output: The return-code from the Data Server-call.
- Used by: [4.9], "STokenSSET".
- Uses: NONE.
4 Internal entities
4.1 SGen
Presents an HTML page to the customer with information of current status of his/her appliances which it gets from the Data Server according to information it reads from a SEHTML template file.
4.1.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.1.2 Internal Interface Specification
No methods are acccessible only to instances of this entity.
4.1.3 Traceability
4.1.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F3], in [SAIDA 96-1].
4.1.3.2 Forwards
The implementation of this entity can be found in the files:
4.1.4 Attributes
4.1.4.1 SHTMLPage* myHTMLPage
- Description: Pointer to the instance of class SHTMLPage which is generated by this entity from
a SEHTML template page.
- Limits: myHTMLPage != NULL.
4.1.5 Methods
4.1.5.1 SGen ( void )
4.1.5.2 ~SGen ( void )
4.1.5.3 SHTMLPage* Generate ( CString anUID, CString aTemplate )
- Description: Public method which communicates with the Data Server to present the current
values of a customer�s appliances in a HTML page which it generates.
- Input: anUID - An user ID which uniquely identifies a customer.
aTemplate - A filename of a template page which specifies which variables to
get during generation of an HTML page.
- Output: A pointer to an instance of class SHTMLPage which can be shown on WWW.
- Used by: [3.1], "Generator.exe" and [3.2], "Updator.exe".
- Uses: [4.4], "SHTMLPage".
4.2 SLexer
A class which reads a SEHTML template page and separates regular SEHTML code from HTML code. HTML code is copied to a new HTML page, and the SEHTML tags cause methods to be called and the result of those methods are copied to the new HTML page.
4.2.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.2.2 Internal Interface Specification
These methods are only accessible to instances of this entity:
4.2.3 Traceability
4.2.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.2.3.2 Forwards
The implementation of this entity can be found in the files:
4.2.4 Attributes
4.2.4.1 CString myString
- Description: The string containing the text which was in the SEHTML template page.
- Limits: myIndex != 0.
4.2.4.2 STokenList* myTokenList
- Description: A list of tokens which are encountered in the SEHTML template page.
- Limits: myTokenList != NULL.
4.2.4.3 int myCurrentID
- Description: Contains the latest created ID for determining what ID to create for any new
variables.
- Limits: myCurrentID >= 0.
4.2.5 Methods
4.2.5.1 SLexer ( CString aTemplate )
- Description: Initializing constructor.
- Input: aTemplate - A string which contains the filename of the SEHTML page to use as
a template for creating a status-page for a customer�s appliances.
- Output: Instance of class SLexer.
- Used by: [4.1], "SGen" and [4.4], "SHTMLPage".
- Uses: [4.11], "STokenList".
4.2.5.2 ~SLexer ( void )
- Description: Destructor.
- Input: NONE.
- Output: Deallocated memory which was previously used by the instance of class SLexer.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.2.5.3 STokenList* Tokenize ( void )
- Description: Splits a SHTMLPage instance�s contents into tokens which can be used when
creating a status-page for a customer�s appliances.
- Input: NONE.
- Output: A list of tokens which contains a type, a variable name and a variable value.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.2.5.4 void Tokenize ( CString aToken, int aPosition )
- Description: Recursive method which is used to split a SHTMLPage instance�s contents into
tokens.
- Input: aToken - The type of token to search for.
aPosition - The position in an internal string of the instance of SHTMLPage.
- Output: NONE.
- Used by: [4.4], "SHTMLPage".
- Uses: [4.5], "SToken".
4.2.5.5 CString GenerateID ( void )
- Description: Generate a new unique ID for a variable name.
- Input: NONE.
- Output: A string containing the new ID.
- Used by: Internal method.
- Uses: NONE.
4.3 SClients
4.3.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.3.2 Internal Interface Specification
These methods are accessible only to instances of this entity:
4.3.3 Traceability
4.3.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], in [SAIDA 96-1].
4.3.3.2 Forwards
The implementation of this entity can be found in the files:
4.3.4 Attributes
4.3.4.1 CList<CString, CString>* myClients
- Description: List of information on each client.
- Limits: myClients != NULL.
4.3.5 Methods
4.3.5.1 SClients ( void )
- Description: Default constructor.
- Input: NONE
- Output: Instance of class SClients.
- Used by: [3.1], "Generator.exe".
- Uses: NONE.
4.3.5.2 ~SClients ( void )
- Description: Destructor.
- Input: NONE
- Output: Deallocated memory which was previously used by the instance of class SClients.
- Used by: [3.1], "Generator.exe".
- Uses: NONE.
4.3.5.3 BOOL Validate ( CString aName, CString aPasswd )
- Description: Validates the authorization of a username.
- Input: aName - The username to validate.
aPasswd - The password to compare the username against.
- Output: TRUE if authorization was valid, FALSE otherwise.
- Used by: [3.1], "Generator.exe" and [3.2], "Updator.exe".
- Uses: NONE.
4.3.5.4 CString UpdTemplate ( CString aName )
- Description: Get the filename of the template for the specified username.
- Input: aName - The username to find a matching template for.
- Output: The filename of the template.
- Used by: [3.2], "Updator.exe".
- Uses: NONE.
4.3.5.5 CString GenTemplate ( CString aName )
- Description: Retreive the template to be used for a specified user.
- Input: aName - The username to find a matching template for.
- Output: The name of the template to use.
- Used by: [3.1], "Generator.exe".
- Uses: NONE.
4.3.5.6 CString Password ( CString aName )
- Description: Get the password for a specified user.
- Input: aName - The username to find a password for.
- Output: The password of the user.
- Used by: Internal method.
- Uses: NONE.
4.3.5.7 int GetCount ( void )
- Description: Get number of client entries.
- Input: NONE.
- Output: The number of client entries.
- Used by: Internal method.
- Uses: NONE.
4.3.5.8 CString GetEntry ( int anIndex)
- Description: Get the client entry at a specified index.
- Input: anIndex - The index of the entry to get.
- Output: The entry at the specified index.
- Used by: Internal method.
- Uses: NONE.
4.3.5.9 void SplitEntry ( CString anInputString, CString* aStringArray, char aSeparator )
- Description: Split a string into several substrings.
- Input: anInputString - The string to split.
aStringArray - The array to store the substrings into.
aSeparator - The character which is used to indicate where to split
anInputString into substrings.
- Output: NONE.
- Used by: Internal method.
- Uses: NONE.
4.4 SHTMLPage
A class which encapsulates the concept of a HTML page.
4.4.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
- [4.4.5.1], "SHTMLPage ( void )".
- [4.4.5.2], "SHTMLPage ( CString anUID, CString aTemplate )".
- [4.4.5.3], "~SHTMLPage ( void )".
- [4.4.5.4], "void Insert ( SToken* aToken )".
- [4.4.5.5], "void Insert ( CString aString )".
- [4.4.5.6], "friend ostream& operator << ( ostream& anOut, SHTMLPage& aPage )".
- [4.4.5.7], "friend ostream& operator << ( ostream& anOut, SHTMLPage* aPage )".
4.4.2 Internal Interface Specification
These methods are only accessible to instances of this entity:
4.4.3 Traceability
4.4.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], in [SAIDA 96-1].
4.4.3.2 Forwards
The implementation of this entity can be found in the files:
4.4.4 Attributes
4.4.4.1 STokenList* myTokenList
- Description: Linked list containing the tokens which makes up the HTML page.
- Limits: myTokenList != 0
4.4.4.2 SLexer* myLexer
- Description: A lexer entity which is used to split a HTML page string into tokens.
- Limits: myLexer != NULL.
4.4.4.3 CString myTemplate
- Description: Contains the filename of the SEHTML page to be used as a template.
- Limits: myTemplate.Length () > 0
4.4.4.4 CString myUID
- Description: The unique user ID of the customer.
- Limits: myUID.Length () > 0
4.4.5 Methods
4.4.5.1 SHTMLPage ( void )
- Description: Default constructor.
- Input: NONE.
- Output: Instance of class SHTMLPage.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.4.5.2 SHTMLPage ( CString anUID, CString aTemplate )
- Description: Initializing constructor.
- Input: anUID - A unique ID which identifies a customer.
aTemplate - A string containing the filename of the file to read the SEHTML
code from which is then used as a template for selecting information
on a customer�s appliances..
- Output: Instance of class SHTMLPage.
- Used by: [4.1], "SGen".
- Uses: [4.2], "SLexer" and [4.11], "STokenList".
4.4.5.3 ~SHTMLPage ( void )
- Description: Destructor.
- Input: NONE.
- Output: Deallocated memory which was previously used by the instance of class
SHTMLPage.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.4.5.4 void Insert ( SToken* aToken )
- Description: Inserts aToken into the SHTMLPage instance.
- Input: aToken - A pointer to the SToken to insert.
- Output: NONE.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.4.5.5 void Insert ( CString aString )
- Description: Inserts aString into the SHTMLPage instance.
- Input: aString - The CString to insert.
- Output: NONE.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.4.5.6 friend ostream& operator << ( ostream& anOut, SHTMLPage& aPage )
- Description: Overloaded operator << which facilitates easy output of the attributes of an
instance of the class S HTMLPage in a structured way.
- Input: anOut - Reference to the outputstream to write the data to.
aSource - Reference to the object to write to anOut.
- Output: A reference to the ostream object which is argument one, anOut, to the method.
- Used by: [4.1], "SGen"
- Uses: [4.4], "SHTMLPage".
4.4.5.7 friend ostream& operator << ( ostream& anOut, SHTMLPage* aPage )
- Description: Overloaded operator << which facilitates easy output of the attributes of a pointer
to an instance of the class S HTMLPage in a structured way.
- Input: anOut - Reference to the outputstream to write the data to.
aSource - Pointer to the object to write to anOut.
- Output: A reference to the ostream object which is argument one, anOut, to the method.
- Used by: [4.1], "SGen"
- Uses: [4.4], "SHTMLPage".
4.4.5.8 CString ReadTemplate ( void )
- Description: Reads a template file and converts it into a CString.
- Input: NONE.
- Output : A string containing the whole file.
- Used by: Internal method.
- Uses: NONE.
4.5 SToken
A class which encapsulates tokens which can be either SEHTML tags from a SEHTML template page, or variables with their corresponding type and value.
4.5.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
- [4.5.5.1], "SToken ( void )".
- [4.5.5.2], "~SToken ( void )".
- [4.5.5.3], "virtual CString Type ( void )".
- [4.5.5.4], "CString Var ( void )".
- [4.5.5.5], "CString Var ( CString aName )".
- [4.5.5.6], "CString Val ( void )".
- [4.5.5.7], "CString Val ( CString aValue )".
- [4.5.5.8], "void SetAll ( CString aVar, CString aVal )".
- [4.5.5.9], "virtual ostream& Dump ( ostream& anOut )".
4.5.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.5.3 Traceability
4.5.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], in [SAIDA 96-1].
4.5.3.2 Forwards
The implementation of this entity can be found in the files:
4.5.4 Attributes
4.5.4.1 CString myName
- Description: Contains the name of the variable which is contained in this token.
- Limit: myName.Length () > 0
4.5.4.2 CString myValue
- Description: Contains the value of the variable which is contained in this token.
- Limit: myValue.Length () > 0
4.5.5 Methods
4.5.5.1 SToken ( void )
- Description: Initializing constructor.
- Input: NONE.
- Output: Instance of class SToken.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.5.5.2 ~SToken ( void )
- Description: Destructor.
- Input: NONE.
- Output: Deallocated memory which was previously used by the instance of class SLexer.
- Used by: [4.2], "SLexer".
- Uses: NONE.
4.5.5.3 virtual CString Type ( void )
- Description: Virtual method which is to be implemented in entities which inherits from this
entity.
- Input: NONE.
- Output: Empty CString.
- Used by: [4.1], "SGen".
- Uses: NONE.
4.5.5.4 CString Var ( void )
4.5.5.5 CString Var ( CString aName )
4.5.5.6 CString Val ( void )
4.5.5.7 CString Val ( CString aValue )
4.5.5.8 void SetAll ( CString aVar, CString aVal )
- Description: Set all values in the token to new specified values.
- Input: aVar - The new name of the variable.
aVal - The new value of the variable.
- Output: NONE.
- Used by: Not currently used.
- Uses: NONE.
4.5.5.9 virtual ostream& Dump ( ostream& anOut )
- Description: Prints the contents of a token to anOut.
- Input: anOut - The ostream to write the contents of the token to.
- Output: A reference to the ostream which the contents of the token was written to.
- Used by: [4.4], "SHTMLPage".
- Uses: NONE.
4.6 STokenHTML
This entity inherits functionality from entity [4.5], "SToken".
4.6.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.6.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.6.3 Traceability
4.6.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.6.3.2 Forwards
The implementation of this entity can be found in the files:
- stokenhtml.h
- stokenhtml.cpp
4.6.4 Attributes
4.6.4.1 const CString myType
- Description: The type of token this is.
- Limits: myType.Length() != 0.
4.6.5 Methods
4.6.5.1 STokenHTML ( void )
4.6.5.2 STokenHTML ( CString aVar )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
- Output: Initialized instance of class STokenHTML.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.6.5.3 STokenHTML ( CString aVar, CString aVal )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
aVal - The value to set the token value to.
- Output: Initialized instance of class STokenHTML.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.6.5.4 ~STokenHTML ( void )
- Description: Destructor.
- Input: NONE.
- Output: Deallocated memory which was previously used by the instance of class
STokenHTML.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.6.5.5 CString Type ( void )
- Description: Get the type of the token.
- Input: NONE.
- Output: A string containing the type of token this is.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.6.5.6 ostream& Dump ( ostream& anOut )
- Description: Write the contents of the token to an ostream.
- Input: anOut - The ostream to write to.
- Output: Reference to the ostream that the contents of the token was written to.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.7 STokenSERR
This entity inherits functionality from entity [4.5], "SToken".
4.7.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.7.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.7.3 Traceability
4.7.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.7.3.2 Forwards
The implementation of this entity can be found in the files:
- stokenserr.h
- stokenserr.cpp
4.7.4 Attributes
4.7.4.1 const CString myType
- Description: The type of the token.
- Limits: myType.Length() != 0.
4.7.5 Methods
4.7.5.1 STokenSERR ( void )
4.7.5.2 STokenSERR ( CString aVar )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
- Output: Initialized instance of class STokenSERR.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.7.5.3 STokenSERR ( CString aVar, CString aVal )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
aVal - The value to set the token value to.
- Output: Initialized instance of class STokenSERR.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.7.5.4 ~STokenSERR ( void )
- Description: Destructor.
- Input: NONE
- Output: Deallocated memory which was previously used by the instance of class
STokenSERR.
- Used by: [4.11], "STokenList"
- Uses: NONE.
4.7.5.5 CString Type ( void )
- Description: Get the type of the token.
- Input: NONE.
- Output: A string containing the type of the token.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.7.5.6 ostream& Dump ( ostream& anOut )
- Description: Write the contents of the token to an ostream.
- Input: anOut - The ostream to write to.
- Output: Reference to the ostream that the contents of the token was written to.
- Used by: [4.11], "STokenList"
- Uses: NONE.
4.8 STokenSGET
This entity inherits functionality from entity [4.5], "SToken".
4.8.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.8.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.8.3 Traceability
4.8.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.8.3.2 Forwards
The implementation of this entity can be found in the files:
- stokensget.h
- stokensget.cpp
4.8.4 Attributes
4.8.4.1 const CString myType
- Description: The type of the token.
- Limits: myType.Length() != 0.
4.8.5 Methods
4.8.5.1 STokenSGET ( void )
4.8.5.2 STokenSGET ( CString aVar )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
- Output: Initialized instance of class STokenSGET.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.8.5.3 STokenSGET ( CString aVar, CString aVal )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
aVal - The value to set the token value to.
- Output: Initialized instance of class STokenSGET.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.8.5.4 ~STokenSGET ( void )
- Description: Destructor.
- Input: NONE.
- Output: Deallocated memory which was previously used by the instance of class
STokenSGET.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.8.5.5 CString Type ( void )
- Description: Get the type of the token.
- Input: NONE.
- Output: A string containing the type of the token.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.8.5.6 ostream& Dump ( ostream& anOut )
- Description: Write the contents of the token to an ostream.
- Input: anOut - The ostream to write to.
- Output: Reference to the ostream that the contents of the token was written to.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.9 STokenSSET
This entity inherits functionality from entity [4.5], "SToken".
4.9.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.9.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.9.3 Traceability
4.9.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.9.3.2 Forwards
The implementation of this entity can be found in the files:
- stokensset.h
- stokensset.cpp
4.9.4 Attributes
4.9.4.1 const CString myType
- Description: The type of the token.
- Limits: myType.Length() != 0.
4.9.5 Methods
4.9.5.1 STokenSSET ( void )
4.9.5.2 STokenSSET ( CString aVar )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
- Output: Initialized instance of class STokenSSET.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.9.5.3 STokenSSET ( CString aVar, CString aVal )
- Description: Initializing constructor.
- Input: aVar - The variable name to set the token name to.
aVal - The value to set the token value to.
- Output: Initialized instance of class STokenSSET.
- Used by: [4.2], "SLexer" and [4.10], "SCgi".
- Uses: NONE.
4.9.5.4 ~STokenSSET ( void )
- Description: Destructor.
- Input: NONE
- Output: Deallocated memory which was previously used by the instance of class
STokenSSET.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.9.5.5 CString Type ( void )
- Description: Get the type of the token.
- Input: NONE.
- Output: A string containing the type of the token.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.9.5.6 ostream& Dump ( ostream& anOut )
- Description: Write the contents of the token to an ostream.
- Input: anOut - The ostream to write to.
- Output: Reference to the ostream that the contents of the token was written to.
- Used by: [4.11], "STokenList".
- Uses: NONE.
4.10 SCgi
This class encapsulates the encoding of HTML forms, which is considered complex enough to warrant a class of it own. It is used whenever one of the other entities needs to parse a HTML form and is therefore considered to be a supportclass which should be general enough to be used outside of the subsystem too if such a need would arise. This entity inherits functionality from entity [4.11], "STokenList".
4.10.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
4.10.2 Internal Interface Specification
These methods are accessible only to instances of this entity:
- [4.10.5.3], "CList<SToken*, SToken*>* DecodeCGI ( void )".
- [4.10.5.4], "CList<SToken*, SToken*>* DecodeGetCGI ( void )".
- [4.10.5.5], "CList<SToken*, SToken*>* DecodePostCGI ( void )".
- [4.10.5.6], "CList<SToken*, SToken*>* DecodeCGIMain ( CString anInput )".
- [4.10.5.7], "int Split ( CString anInputString, CString* anOutputArray, int aMaxArraySize, char aStringSeparator )".
- [4.10.5.8], "void UnescapeHex ( CString& aString )".
4.10.3 Traceability
4.10.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.10.3.2 Forwards
The implementation of this entity can be found in the following file(s):
4.10.4 Attributes
4.10.4.1 const int myMaxCGIDecodes
- Description: Maximal number of tokens the class can hold.
- Value: 512
4.10.4.2 const char myStringSeparator
- Description: Contains the character which is used as the string separator in the form strings.
- Value: '&'
4.10.5 Methods
4.10.5.1 SCgi ( void )
- Description: Default constructor.
- Input: NONE.
- Output: Instance of class SCgi.
- Used by: [4.2], "SLexer"
- Uses: NONE.
4.10.5.2 friend ostream& operator << ( ostream& anOut, SCgi& aSource )
- Description: Overloaded << operator to facilitate easy output of from the entity.
- Input: anOut - Reference to the stream to write to.
aSource - The source object to output.
- Output: Reference to the stream which the entity was written to.
- Used by: [4.4], "SHTMLPage".
- Uses: NONE.
4.10.5.3 CList<SToken*, SToken*>* DecodeCGI ( void )
- Description: Decides which method was used to invoke the cgi script and calls the appropriate
method to parse the input.
- Input: NONE.
- Output: A list of tokens containing the information in the input.
- Used by: Internal method.
- Uses: NONE.
4.10.5.4 CList<SToken*, SToken*>* DecodeGetCGI ( void )
4.10.5.5 CList<SToken*, SToken*>* DecodePostCGI ( void )
4.10.5.6 CList<SToken*, SToken*>* DecodeCGIMain ( CString anInput )
4.10.5.7 int Split ( CString anInputString, CString* anOutputArray, int aMaxArraySize, char aStringSeparator )
- Description: Splits anInputString (a CString with aStringSeparator present on various
positions), inserts the resulting CStrings into anOutputArray, and returns the
number of string that the input string was split into.
- Input: anInputString - CString containing the string to split.
anOutputArray - The CString vector where the split strings are stored.
aMaxArraySize - The maximum size of the array for storing split strings in.
aStringSeparator - The character which is used as a separator in anInputString.
- Output: Number of strings that anInputString has been split into.
- Used by: Internal method.
- Uses: NONE.
4.10.5.8 void UnescapeHex ( CString& aString )
- Description: Exchange HTML instances of hexadecimal values in aString with the
corresponding character representation.
- Input: aString - The HTML string containing the hexadecimal values to convert.
- Output: NONE.
- Used by: Internal method.
- Uses: NONE.
4.11 STokenList
A linked list of tokens used by the other classes when there is a need to have an ordered collection of SToken.
4.11.1 Subsystem Interface Specification
These methods are accessible to entities within the subsystem:
- [4.11.5.1], "STokenList ( void )"
- [4.11.5.2], "STokenList ( CList<SToken*, SToken*>* aTokenList )"
- [4.11.5.3], "BOOL Exist ( CString aVariableName )"
- [4.11.5.4], "BOOL Exist ( SToken* aToken )"
- [4.11.5.5], "CString Fetch ( CString aVariableName )"
- [4.11.5.6], "CString Fetch ( int index )"
- [4.11.5.7], "BOOL Add ( SToken* aToken )"
- [4.11.5.8], "BOOL Replace ( SToken* aToken )"
- [4.11.5.9], "int Length ( void )"
- [4.11.5.10], "ostream& Dump ( ostream& anOut )"
4.11.2 Internal Interface Specification
No methods are accessible only to instances of this entity.
4.11.3 Traceability
4.11.3.1 Backwards
The implementation of this entity meet parts of the following requirements:
[WWW_F1], [WWW_F2], [WWW_F3], [WWW_F4], in [SAIDA 96-1].
4.11.3.2 Forwards
The implementation of this entity can be found in the following file:
- stokenlist.h
- stokenlist.cpp
4.11.4 Attributes
4.11.4.1 CList<SToken*, SToken*>* myTokenList
- Description: Linked list of pointers to SToken.
- Limit: myTokenList != NULL.
4.11.5 Methods
4.11.5.1 STokenList ( void )
- Description: Default constructor.
- Input: NONE.
- Output: An instance of class STokenList.
- Used by: [4.1], "SGen"
- Uses: NONE.
4.11.5.2 STokenList ( CList<SToken*, SToken*>* aTokenList )
- Description: Initializing constructor.
- Input: aTokenList - A list of tokens which is used to initialize the instance.
- Output: An initialized instance of class STokenList.
- Used by: [4.2], "SLexer"
- Uses: NONE.
4.11.5.3 BOOL Exist ( CString aVariableName )
- Description: Checks if a variable with aVariableName exists in the list.
- Input: aVariableName - the name of the variable to look for.
- Output: TRUE if the variable name existed in the list, FALSE otherwise.
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: [4.5], "SToken".
4.11.5.4 BOOL Exist ( SToken* aToken )
- Description: Checks if a token which is equal to aToken exists in the list.
- Input: aToken - the token to look for.
- Output: TRUE if such a token existed in the list, FALSE otherwise.
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: NONE.
4.11.5.5 CString Fetch ( CString aVariableName )
- Description: Checks if a token which is equal to aToken exists in the list and return its value if it
does.
- Input: aVariableName - Name of the variable to fetch.
- Output: The variable value.
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: [4.5], "SToken".
4.11.5.6 CString Fetch ( int index )
- Description: Get the variable-value at the position defined by index.
- Input: anIndex - The index at which a variable-value is to be found.
- Output: The variable-value.
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: [4.5], "SToken".
4.11.5.7 BOOL Add ( SToken* aToken )
- Description: Add a token to the end of the list.
- Input: aToken - the token to add.
- Output: TRUE if method was successful in adding the token, FALSE otherwise.
- Used by: [4.10], "SCgi".
- Uses: NONE.
4.11.5.8 BOOL Replace ( SToken* aToken )
- Description: Replaces a token in the list. If the token already existed, it replaces the values of the
token�s attributes.
- Input: aToken - The token to replace with.
- Output: TRUE
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: [4.5], "SToken".
4.11.5.9 int Length ( void )
- Description: Return the number of tokens in the list.
- Input: NONE.
- Output: An integer containing the number of tokens in the list.
- Used by: Not currently used, but implemented for increased flexibility in class usage.
- Uses: NONE.
4.11.5.10 ostream& Dump ( ostream& anOut )
- Description: Returns a CString containing all tokens.
- Input: NONE.
- Output: The CString containing the tokens.
- Used by: The user of the class.
- Uses: [4.5], "SToken".
5 Entity diagram
Entity diagram of the entities in the WWW-interface subsystem.
5.1 External Interfaces
External interfaces of WWW Interface subsystem.
6 Event Trace Diagram
This overview figure of the system describes a possible chain of events during a customer's accesses to Sydkraft's WWW pages to monitor/update his/her appliance values.
Overview of WWW interface subsystem.
Explanations to Figure [5-1].
| | 1 | Sydkraft's welcome page. |
I | User selects "View/Change Status" link. | 2 | Identification page. |
II | User enters User Identification and Password, selects which template to use, and selects Submit. | 3 | Generator is executed. |
III | Generator reads information from a template page. | 4 | Template pages. |
IV | Generator asks Data Server for values of each variable as it encounters them in get-tags in the template. | 5 | Data Server OLE Object. |
V | Data Server returns the value of the variable which was requested in []. | | |
VI | Generator generates a new HTML page which contains the status of the customer's appliances in a format which complies with the template which was selected. | 6 | Status page. |
VII | The customer changes some of the values of his/her appliances, and selects Update. | 7 | Updator is executed. |
VIII | Updator asks the Data Server to update the selected appliances. | | |
IX | The Data Server reports back with possible error-messages to Updator. | | |
X | Updator generates a new HTML page which contains possible error-messages and a Goodbye message. | 8 | End page. |
XI | User selects Update and is returned to []. | | |
7 Appendix A
7.1 Terminology
Data Server - Server application which manages NeuronC nodes and their variable values.
WWW Server - Server application which serves WWW documents to clients.
7.2 Literature
[CQM 96-1], QMG, "CQM - Metaterminology" - Rev. A - University of Karlskrona/Ronneby, 1996.
[CQM 96-2], QMG, "CQM - Design" - Rev. A - University of Karlskrona/Ronneby, 1996.
[SAIDA 96-1], Sassner J., Wikström P., "WWW Interface Requirements Specification" - Rev. A - University of Karlskrona/Ronneby, 1996.
- WWW Interface Design
-
- Abstract
-
- 1 - Outline
-
- 1.1 - Requirements
-
- 1.2 - Subsystem boundaries
-
- 2 - Extensions to HTML
-
- 2.1 - SGET
-
- 2.1.1 - Syntax
-
- 2.1.2 - Tag
-
- 2.1.3 - End Tag
-
- 2.1.4 - Parameters
-
- 2.1.4.1 - VARIABLE
-
- Definition
-
- Description
-
- 2.2 - SSET
-
- 2.2.1 - Syntax
-
- 2.2.2 - Tag
-
- 2.2.3 - End Tag
-
- 2.2.4 - Parameters
-
- 2.2.4.1 - VARIABLE
-
- Definition
-
- Description
-
- 2.2.4.2 - VALUE
-
- Definition
-
- Description
-
- 2.3 - SERR
-
- 2.3.1 - Syntax
-
- 2.3.2 - Tag
-
- 2.3.3 - End Tag
-
- 2.3.4 - Parameters
-
- 2.4 - IF
-
- 2.4.1 - Syntax
-
- 2.4.2 - Tag
-
- 2.4.3 - End Tag
-
- 2.4.4 - Parameters
-
- 2.4.4.1 - VARIABLE
-
- Definition
-
- Description
-
- 2.4.4.2 - CONDITION
-
- Definition
-
- Description
-
- 2.4.4.3 - VALUE
-
- Definition
-
- Description
-
- 2.5 - INCLUDE
-
- 2.5.1 - Syntax
-
- 2.5.2 - Tag
-
- 2.5.3 - End Tag
-
- 2.5.4 - Parameters
-
- 2.5.4.1 - FILE
-
- Definition
-
- Description
-
- 3 - Global Interface Entities
-
- 3.1 - Generator.exe
-
- 3.1.1 - Global Interface Specification
-
- 3.1.2 - Subsystem Interface Specification
-
- 3.1.3 - Internal Interface Specification
-
- 3.1.4 - Traceability
-
- 3.1.4.1 - Backwards
-
- 3.1.4.2 - Forwards
-
- 3.1.5 - Attributes
-
- 3.1.5.1 - SCgi theCgi
-
- 3.1.5.2 - SGen theGen
-
- 3.1.5.3 - SClients theClients
-
- 3.1.5.4 - SHTMLPage* thePage
-
- 3.1.6 - Methods
-
- 3.2 - Updator.exe
-
- 3.2.1 - Global Interface Specification
-
- 3.2.2 - Subsystem Interface Specification
-
- 3.2.3 - Internal Interface Specification
-
- 3.2.4 - Traceability
-
- 3.2.4.1 - Backwards
-
- 3.2.4.2 - Forwards
-
- 3.2.5 - Attributes
-
- 3.2.5.1 - SCgi theCgi
-
- 3.2.5.2 - SGen theGen
-
- 3.2.5.3 - SClients theClients
-
- 3.2.5.4 - SHTMLPage* thePage
-
- 3.2.6 - Methods
-
- 3.3 - SC_ClientInterface
-
- 3.3.1 - Global Interface Specification
-
- 3.3.2 - Subsystem Interface Specification
-
- 3.3.3 - Internal Interface Specification
-
- 3.3.4 - Traceability
-
- 3.3.4.1 - Backwards
-
- 3.3.4.2 - Forwards
-
- 3.3.5 - Attributes
-
- 3.3.5.1 - ISC_Export serverStub
-
- 3.3.6 - Methods
-
- 3.3.6.1 - SC_ClientInterface ( void )
-
- 3.3.6.2 - ~SC_ClientInterface ( void )
-
- 3.3.6.3 - short Get ( CString& name, CString& value, CString& msg )
-
- 3.3.6.4 - short Set ( CString& name, CString& value, CString& msg )
-
- 4 - Internal entities
-
- 4.1 - SGen
-
- 4.1.1 - Subsystem Interface Specification
-
- 4.1.2 - Internal Interface Specification
-
- 4.1.3 - Traceability
-
- 4.1.3.1 - Backwards
-
- 4.1.3.2 - Forwards
-
- 4.1.4 - Attributes
-
- 4.1.4.1 - SHTMLPage* myHTMLPage
-
- 4.1.5 - Methods
-
- 4.1.5.1 - SGen ( void )
-
- 4.1.5.2 - ~SGen ( void )
-
- 4.1.5.3 - SHTMLPage* Generate ( CString anUID, CString aTemplate )
-
- 4.2 - SLexer
-
- 4.2.1 - Subsystem Interface Specification
-
- 4.2.2 - Internal Interface Specification
-
- 4.2.3 - Traceability
-
- 4.2.3.1 - Backwards
-
- 4.2.3.2 - Forwards
-
- 4.2.4 - Attributes
-
- 4.2.4.1 - CString myString
-
- 4.2.4.2 - STokenList* myTokenList
-
- 4.2.4.3 - int myCurrentID
-
- 4.2.5 - Methods
-
- 4.2.5.1 - SLexer ( CString aTemplate )
-
- 4.2.5.2 - ~SLexer ( void )
-
- 4.2.5.3 - STokenList* Tokenize ( void )
-
- 4.2.5.4 - void Tokenize ( CString aToken, int aPosition )
-
- 4.2.5.5 - CString GenerateID ( void )
-
- 4.3 - SClients
-
- 4.3.1 - Subsystem Interface Specification
-
- 4.3.2 - Internal Interface Specification
-
- 4.3.3 - Traceability
-
- 4.3.3.1 - Backwards
-
- 4.3.3.2 - Forwards
-
- 4.3.4 - Attributes
-
- 4.3.4.1 - CList<CString, CString>* myClients
-
- 4.3.5 - Methods
-
- 4.3.5.1 - SClients ( void )
-
- 4.3.5.2 - ~SClients ( void )
-
- 4.3.5.3 - BOOL Validate ( CString aName, CString aPasswd )
-
- 4.3.5.4 - CString UpdTemplate ( CString aName )
-
- 4.3.5.5 - CString GenTemplate ( CString aName )
-
- 4.3.5.6 - CString Password ( CString aName )
-
- 4.3.5.7 - int GetCount ( void )
-
- 4.3.5.8 - CString GetEntry ( int anIndex)
-
- 4.3.5.9 - void SplitEntry ( CString anInputString, CString* aStringArray, char aSeparator )
-
- 4.4 - SHTMLPage
-
- 4.4.1 - Subsystem Interface Specification
-
- 4.4.2 - Internal Interface Specification
-
- 4.4.3 - Traceability
-
- 4.4.3.1 - Backwards
-
- 4.4.3.2 - Forwards
-
- 4.4.4 - Attributes
-
- 4.4.4.1 - STokenList* myTokenList
-
- 4.4.4.2 - SLexer* myLexer
-
- 4.4.4.3 - CString myTemplate
-
- 4.4.4.4 - CString myUID
-
- 4.4.5 - Methods
-
- 4.4.5.1 - SHTMLPage ( void )
-
- 4.4.5.2 - SHTMLPage ( CString anUID, CString aTemplate )
-
- 4.4.5.3 - ~SHTMLPage ( void )
-
- 4.4.5.4 - void Insert ( SToken* aToken )
-
- 4.4.5.5 - void Insert ( CString aString )
-
- 4.4.5.6 - friend ostream& operator << ( ostream& anOut, SHTMLPage& aPage )
-
- 4.4.5.7 - friend ostream& operator << ( ostream& anOut, SHTMLPage* aPage )
-
- 4.4.5.8 - CString ReadTemplate ( void )
-
- 4.5 - SToken
-
- 4.5.1 - Subsystem Interface Specification
-
- 4.5.2 - Internal Interface Specification
-
- 4.5.3 - Traceability
-
- 4.5.3.1 - Backwards
-
- 4.5.3.2 - Forwards
-
- 4.5.4 - Attributes
-
- 4.5.4.1 - CString myName
-
- 4.5.4.2 - CString myValue
-
- 4.5.5 - Methods
-
- 4.5.5.1 - SToken ( void )
-
- 4.5.5.2 - ~SToken ( void )
-
- 4.5.5.3 - virtual CString Type ( void )
-
- 4.5.5.4 - CString Var ( void )
-
- 4.5.5.5 - CString Var ( CString aName )
-
- 4.5.5.6 - CString Val ( void )
-
- 4.5.5.7 - CString Val ( CString aValue )
-
- 4.5.5.8 - void SetAll ( CString aVar, CString aVal )
-
- 4.5.5.9 - virtual ostream& Dump ( ostream& anOut )
-
- 4.6 - STokenHTML
-
- 4.6.1 - Subsystem Interface Specification
-
- 4.6.2 - Internal Interface Specification
-
- 4.6.3 - Traceability
-
- 4.6.3.1 - Backwards
-
- 4.6.3.2 - Forwards
-
- 4.6.4 - Attributes
-
- 4.6.4.1 - const CString myType
-
- 4.6.5 - Methods
-
- 4.6.5.1 - STokenHTML ( void )
-
- 4.6.5.2 - STokenHTML ( CString aVar )
-
- 4.6.5.3 - STokenHTML ( CString aVar, CString aVal )
-
- 4.6.5.4 - ~STokenHTML ( void )
-
- 4.6.5.5 - CString Type ( void )
-
- 4.6.5.6 - ostream& Dump ( ostream& anOut )
-
- 4.7 - STokenSERR
-
- 4.7.1 - Subsystem Interface Specification
-
- 4.7.2 - Internal Interface Specification
-
- 4.7.3 - Traceability
-
- 4.7.3.1 - Backwards
-
- 4.7.3.2 - Forwards
-
- 4.7.4 - Attributes
-
- 4.7.4.1 - const CString myType
-
- 4.7.5 - Methods
-
- 4.7.5.1 - STokenSERR ( void )
-
- 4.7.5.2 - STokenSERR ( CString aVar )
-
- 4.7.5.3 - STokenSERR ( CString aVar, CString aVal )
-
- 4.7.5.4 - ~STokenSERR ( void )
-
- 4.7.5.5 - CString Type ( void )
-
- 4.7.5.6 - ostream& Dump ( ostream& anOut )
-
- 4.8 - STokenSGET
-
- 4.8.1 - Subsystem Interface Specification
-
- 4.8.2 - Internal Interface Specification
-
- 4.8.3 - Traceability
-
- 4.8.3.1 - Backwards
-
- 4.8.3.2 - Forwards
-
- 4.8.4 - Attributes
-
- 4.8.4.1 - const CString myType
-
- 4.8.5 - Methods
-
- 4.8.5.1 - STokenSGET ( void )
-
- 4.8.5.2 - STokenSGET ( CString aVar )
-
- 4.8.5.3 - STokenSGET ( CString aVar, CString aVal )
-
- 4.8.5.4 - ~STokenSGET ( void )
-
- 4.8.5.5 - CString Type ( void )
-
- 4.8.5.6 - ostream& Dump ( ostream& anOut )
-
- 4.9 - STokenSSET
-
- 4.9.1 - Subsystem Interface Specification
-
- 4.9.2 - Internal Interface Specification
-
- 4.9.3 - Traceability
-
- 4.9.3.1 - Backwards
-
- 4.9.3.2 - Forwards
-
- 4.9.4 - Attributes
-
- 4.9.4.1 - const CString myType
-
- 4.9.5 - Methods
-
- 4.9.5.1 - STokenSSET ( void )
-
- 4.9.5.2 - STokenSSET ( CString aVar )
-
- 4.9.5.3 - STokenSSET ( CString aVar, CString aVal )
-
- 4.9.5.4 - ~STokenSSET ( void )
-
- 4.9.5.5 - CString Type ( void )
-
- 4.9.5.6 - ostream& Dump ( ostream& anOut )
-
- 4.10 - SCgi
-
- 4.10.1 - Subsystem Interface Specification
-
- 4.10.2 - Internal Interface Specification
-
- 4.10.3 - Traceability
-
- 4.10.3.1 - Backwards
-
- 4.10.3.2 - Forwards
-
- 4.10.4 - Attributes
-
- 4.10.4.1 - const int myMaxCGIDecodes
-
- 4.10.4.2 - const char myStringSeparator
-
- 4.10.5 - Methods
-
- 4.10.5.1 - SCgi ( void )
-
- 4.10.5.2 - friend ostream& operator << ( ostream& anOut, SCgi& aSource )
-
- 4.10.5.3 - CList<SToken*, SToken*>* DecodeCGI ( void )
-
- 4.10.5.4 - CList<SToken*, SToken*>* DecodeGetCGI ( void )
-
- 4.10.5.5 - CList<SToken*, SToken*>* DecodePostCGI ( void )
-
- 4.10.5.6 - CList<SToken*, SToken*>* DecodeCGIMain ( CString anInput )
-
- 4.10.5.7 - int Split ( CString anInputString, CString* anOutputArray, int aMaxArraySize, char aStringSeparator )
-
- 4.10.5.8 - void UnescapeHex ( CString& aString )
-
- 4.11 - STokenList
-
- 4.11.1 - Subsystem Interface Specification
-
- 4.11.2 - Internal Interface Specification
-
- 4.11.3 - Traceability
-
- 4.11.3.1 - Backwards
-
- 4.11.3.2 - Forwards
-
- 4.11.4 - Attributes
-
- 4.11.4.1 - CList<SToken*, SToken*>* myTokenList
-
- 4.11.5 - Methods
-
- 4.11.5.1 - STokenList ( void )
-
- 4.11.5.2 - STokenList ( CList<SToken*, SToken*>* aTokenList )
-
- 4.11.5.3 - BOOL Exist ( CString aVariableName )
-
- 4.11.5.4 - BOOL Exist ( SToken* aToken )
-
- 4.11.5.5 - CString Fetch ( CString aVariableName )
-
- 4.11.5.6 - CString Fetch ( int index )
-
- 4.11.5.7 - BOOL Add ( SToken* aToken )
-
- 4.11.5.8 - BOOL Replace ( SToken* aToken )
-
- 4.11.5.9 - int Length ( void )
-
- 4.11.5.10 - ostream& Dump ( ostream& anOut )
-
- 5 - Entity diagram
-
- 5.1 - External Interfaces
-
- 6 - Event Trace Diagram
-
- 7 - Appendix A
-
- 7.1 - Terminology
-
- 7.2 - Literature
-
Info
Team
WebCam
Documents
Schedule
CustomerOnly
© 1996, The SAIDA Project