Server
API Reference Guide
Product Documentation:

Rogue Wave Server
Documentation Home
List of all members | Public Member Functions | Friends
IlsRtModelParser Class Reference

This class is a base class of IlsMvComponent. More...

#include <ilserver/rtmodelp.h>

Inheritance diagram for IlsRtModelParser:
IlsMvComponent IlsSwComponent

Public Member Functions

virtual void declAttribute (const IlsString &name, IlsMvDataType type, IlsRTTypes::AttributeKind kind, const IlsMvValue &defaultValue, IlsBoolean isIndexed, IlsBoolean canEdit, IlsBoolean isImplicit, IlsBoolean isExported, IlsBoolean isDynamic)
 Called by Rogue Wave Server to declare the Server attribute name. More...
 
virtual void declClass (const IlsString &name, IlsBoolean isExported, IlsBoolean isDynamic)
 Called by Rogue Wave Server to declare a Server object type. More...
 
virtual void declFunction (const IlsString &signature, IlsBoolean isImplicit, IlsBoolean isExported, IlsBoolean isDynamic, IlsBoolean global)
 Called by Rogue Wave Server to declare a Server member function. More...
 
virtual void declParentClass (IlsString derived, IlsString parent)
 Called by Rogue Wave Server to declare that the Server type derived derives directly from the Server type parent. More...
 
virtual void declRelation (const IlsString &name, const IlsString &target, IlsRTTypes::RelationKind kind, const IlsString &reverseRelName, IlsBoolean canEdit, IlsBoolean isImplicit, IlsBoolean isMandatory, IlsBoolean isExported, IlsBoolean isDynamic)
 Called by Rogue Wave Server to declare the Server relation name. More...
 
virtual void declViewType (const IlsString &viewTypeName, const IlsString &viewInfo, const IlsString &filename, IlsMvViewParamInfo **params, int nbParams)
 Called for each view types received that matches the request (see the member function IlsMvComponent::getViewTypes()). More...
 

Friends

class IlsMvComponent
 

Detailed Description

This class is a base class of IlsMvComponent.

Library: mvserver
and mvcomp

It allows a component to receive the specification of a server model—asynchronously in the case of a remote component—after the function IlsMvComponent::getServerModel() has been called. All the functions in the synopsis below are virtual and have empty implementations. They are called automatically by Rogue Wave Server when it receives the model description. It is the user's responsibility to subclass IlsMvComponent and override these functions to obtain a specific representation of the server model.

See also
IlsAttributeDef, IlsFunctionDef, IlsModelInterpreter, IlsMvComponent, IlsObjectType, IlsRelationDef, IlsRTTypes::RelationKind.

Member Function Documentation

◆ declAttribute()

virtual void IlsRtModelParser::declAttribute ( const IlsString name,
IlsMvDataType  type,
IlsRTTypes::AttributeKind  kind,
const IlsMvValue defaultValue,
IlsBoolean  isIndexed,
IlsBoolean  canEdit,
IlsBoolean  isImplicit,
IlsBoolean  isExported,
IlsBoolean  isDynamic 
)
virtual

Called by Rogue Wave Server to declare the Server attribute name.

This attribute is owned by the object type that was declared last (see the function declClass() above).

Parameters
nameattribute name.
typethe type of the attribute value.
kindonly defined for future extensions. It should not be used.
defaultValuelets you pass a default value for the attribute.
isIndexedset to IlsTrue if the attribute is indexed.
canEditset to IlsTrue if the relation is editable.
isImplicitset to IlsTrue if the relation has been implicitly declared in the server model interpreter.
isExportedspecifies whether this attribute has been exported. An element that has been marked as "not exported" should be considered as internal, which means that it is not available in Rogue Wave Views Studio, for example.
isDynamicspecifies whether the corresponding element has been declared using the API of the dynamic modeling services.
Warning
This member function is private.

◆ declClass()

virtual void IlsRtModelParser::declClass ( const IlsString name,
IlsBoolean  isExported,
IlsBoolean  isDynamic 
)
virtual

Called by Rogue Wave Server to declare a Server object type.

Parameters
namename of the type
isExportedspecifies whether this attribute has been exported. An element that has been marked as "not exported" should be considered as internal, which means that it is not available in Rogue Wave Views Studio, for example.
isDynamicspecifies whether the corresponding element has been declared using the API of the dynamic modeling services.
Warning
This member function is private.

◆ declFunction()

virtual void IlsRtModelParser::declFunction ( const IlsString signature,
IlsBoolean  isImplicit,
IlsBoolean  isExported,
IlsBoolean  isDynamic,
IlsBoolean  global 
)
virtual

Called by Rogue Wave Server to declare a Server member function.

This function is owned by the object type that was declared last (see the function declClass() above).

Parameters
signaturethe signature of the function.
isImplicitset to IlsTrue if the function has been implicitly declared in the server model interpreter.
isExportedspecifies whether this attribute has been exported. An element that has been marked as "not exported" should be considered as internal, which means that it is not available in Rogue Wave Views Studio, for example.
isDynamicset to IlsTrue if the function is a script function.
globalset to IlsTrue if a global function is currently declared.
Warning
This member function is private.

◆ declParentClass()

virtual void IlsRtModelParser::declParentClass ( IlsString  derived,
IlsString  parent 
)
virtual

Called by Rogue Wave Server to declare that the Server type derived derives directly from the Server type parent.

Warning
This member function is private.

Reimplemented in IlsMvComponent.

◆ declRelation()

virtual void IlsRtModelParser::declRelation ( const IlsString name,
const IlsString target,
IlsRTTypes::RelationKind  kind,
const IlsString reverseRelName,
IlsBoolean  canEdit,
IlsBoolean  isImplicit,
IlsBoolean  isMandatory,
IlsBoolean  isExported,
IlsBoolean  isDynamic 
)
virtual

Called by Rogue Wave Server to declare the Server relation name.

This relation is owned by the object type that was declared last (see the function declClass()).

Parameters
namerelation name.
targetthe name of the relation target type
kindthe kind of the relation
reverseRelNamethe name of the direct relation in case of an inverted relation or the name of the inverted relation in case of a direct relation.
canEditset to IlsTrue if the relation is editable.
isImplicitset to IlsTrue if the relation has been implicitly declared in the server model interpreter.
isMandatoryspecifies whether the relation has been declared mandatory or not. This argument is only revelant for unary relations.
isExportedspecifies whether this attribute has been exported. An element that has been marked as "not exported" should be considered as internal, which means that it is not available in Rogue Wave Views Studio, for example.
isDynamicspecifies whether the corresponding element has been declared using the API of the dynamic modeling services.
Warning
This member function is private.

◆ declViewType()

virtual void IlsRtModelParser::declViewType ( const IlsString viewTypeName,
const IlsString viewInfo,
const IlsString filename,
IlsMvViewParamInfo **  params,
int  nbParams 
)
virtual

Called for each view types received that matches the request (see the member function IlsMvComponent::getViewTypes()).

If it is non-null, the params array parameter and its contents are not freed by Rogue Wave Server. You are responsible for freeing it when you no longer need it.

Warning
This member function is private.