All Frameworks  Class Hierarchy  This Framework  Next  Indexes

ENOVIAPlugIn Class ENOVPublishAttributeNode

ENOVIAPlugIn.ENOVPublishObject
  |
  +---ENOVPublishAttributeNode
 

Usage: you must use this class as is. You should never derive it.


public class ENOVPublishAttributeNode

Class to manage attribute definition and value.
Role: This class enables to manage attribute definition and value defined on an Object node. The attribute node can support only one value (mono-valuation) or several (multi-valuation). On an attribute, we define its name, the type of values (integer, real, character string, binary, Object id, symbolic link, timestamp or Vault reference) and the access authorization (No access, read only or read/Write).

Tags define on Attribute node:



Case of timestamp values: Date is expressed using one ISO 8601 format called Extended format for ordinal date and time of the day (Application will used Coordinated Universal Time UTC)
CCYY-MM-DDThh:mm:ss "2000-00-01T00:00:01"
CCYY-MM-DDThh:mm "2000-00-01T00:00"
CCYY-MM-DD "2000-00-01" No time information set to 00:00:00
hh:mm:ss "12:00:00" means today at noon
hh:mm "14:00" means today at 2 pm

Where:
CC represents the century component
YY represents the year within century
MM represents months starting with January [1, 12]
DD represents the day in the month [1, 31]
hh represents hours from beginning of days
mm represents minutes
ss represents seconds


Constructor and Destructor Index


o ENOVPublishAttributeNode(ENOVPublishAttributeNode&)
Copy constructor.
o ENOVPublishAttributeNode(ENOVPublishObject*,char*,int,int)
Constructs an Attribute object node.
o ~ENOVPublishAttributeNode()

Method Index


o GetName(char*&)
Returns the attribute name.
o GetNumberOfValues(int&)
Returns the number of values for this attribute.
o GetTimeValue(time_t&)
Returns attribute value for a date & time value.
o GetValue(char*&)
Returns attribute value for string or date & time.
o GetValue(double&)
Returns attribute value for a floating point value.
o GetValue(int&)
Returns attribute value for an integer value.
o GetValue(int,ENOVPublishAttributeValue*&)
Returns one of values for this attribute.
o GetValue(unsigned char*&,int&)
Returns attribute value for a binary value.
o GetValueType(int&)
Returns the type value for this attribute.
o IsKeyAttribute()
Returns if attribute participates to uniqueness indentification.
o IsMandatory()
Returns if attribute must be valuated.
o IsModificationAuthorized()
Returns if attribute modification is authorized.
o IsMultipleValueAuthorized()
Returns if attribute supports mono-valuation or multi-valuation.
o Print(int)
Print a report on standard output.
o SetTimeValue(time_t)
Sets attribute value for an date & time value.
o SetValue(char*)
Sets attribute value for a string or date & time value.
o SetValue(double)
Sets attribute value for a floating point value.
o SetValue(int)
Sets attribute value for an integer value.
o SetValue(unsigned char*,int)
Sets attribute value for a binary value.
o operator=(ENOVPublishAttributeNode&)
Assignment operator from another object node.

Constructor and Destructor


o ENOVPublishAttributeNode
public ENOVPublishAttributeNode( const ENOVPublishAttributeNode& ixNode)
Copy constructor.
Parameters:
ixNode
Object to be duplicated.
o ENOVPublishAttributeNode
public ENOVPublishAttributeNode(ENOVPublishObject* ixFather,
const char* icTypeName= NULL ,
int inValueType= ENOVPublishTypeString ,
int ilMultiValuated= 0 )
Constructs an Attribute object node.
Parameters:
ixFather
Pointer to the Publish Stream object father for this PublishedBy object.
icTypeName
Attribute name (identifier).
inValueType
Attribute value type
Legal values: It can be set to either:
  • ENOVPublishTypeInteger For integer value
  • ENOVPublishTypeReal For real value
  • ENOVPublishTypeString For character string value
  • ENOVPublishTypeBinary For binary value
  • ENOVPublishTypeOid For Object id value (an hexa-decimal string)
  • ENOVPublishTypeUid For symbolic link value
  • ENOVPublishTypeTimestamp For timestamp value
  • ENOVPublishTypeVaultReference For Vault reference value
ilMultiValuated
Define if the Attribute node is mono-valuated or multi-valuated
Legal values: 0 means mono-valuated (default value)
o ~ENOVPublishAttributeNode
public virtual ~ENOVPublishAttributeNode()

Methods


o GetName
public int GetName( const char*& ocTypeName)const
Returns the attribute name.
Role: Enables to access to Attribute name information.
Returns:
Method return code
Legal values: Returns 0 if operation runs well.
Parameters:
ocTypeName
Attribute identifier.
o GetNumberOfValues
public int GetNumberOfValues(int& onbValues)const
Returns the number of values for this attribute.
Role: Returns the number of values for this attribute.
Returns:
Method return code
Legal values: Returns 0 if operation runs well.
Parameters:
onbValues
Number of values (0 in case of mono-valuated attribute)
o GetTimeValue
public int GetTimeValue(time_t& otValue)const
Returns attribute value for a date & time value.
Role: Enables to read date & time value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 3 if attribute not valuated.
Parameters:
otValue
Attribute value.
o GetValue
public int GetValue( const char*& ocValue)const
Returns attribute value for string or date & time.
Role: Enables to read value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 3 if attribute not valuated.
Parameters:
ocValue
Attribute value.
Legal values: Date is expressed using one ISO 8601 format called Extended format for ordinal date and time of the day (Application will used Coordinated Universal Time UTC) (cf
ENOVPublishAttributeNode )
o GetValue
public int GetValue(double& odValue)const
Returns attribute value for a floating point value.
Role: Enables to read floating point value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 3 if attribute not valuated.
Parameters:
odValue
Attribute value.
o GetValue
public int GetValue(int& onValue)const
Returns attribute value for an integer value.
Role: Enables to read integer value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 3 if attribute not valuated.
Parameters:
onValue
Attribute value.
o GetValue
public int GetValue(int inValuePos,
ENOVPublishAttributeValue*& oxValue)const
Returns one of values for this attribute.
Role: Access to attribute values per value position.
Returns:
Method return code
Legal values: Returns 0 if operation runs well.
Parameters:
inValuePos
Value indices.
oxValue
Attribute value object corresponding to the attribute at inValuePos position.
o GetValue
public int GetValue( const unsigned char*& obValue,
int& onValueLength)const
Returns attribute value for a binary value.
Role: Enables to read binary value of the Attribute node in case of a mono-valuated attribute. (This method needs to be invoked for ENOVPublishTypeOid, ENOVPublishTypeUid and ENOVPublishTypeVaultReference attributes.)
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 3 if attribute not valuated.
Parameters:
obValue
Binary string value.
onValueLength
Binary string length.
o GetValueType
public int GetValueType(int& onValueType)const
Returns the type value for this attribute.
Role: Enables to access to Attribute name information.
Returns:
Method return code
Legal values: Returns 0 if operation runs well.
Parameters:
onValueType
Attribute value type
Legal values: It can be set to either:
  • ENOVPublishTypeInteger For integer value
  • ENOVPublishTypeReal For real value
  • ENOVPublishTypeString For character string value
  • ENOVPublishTypeBinary For binary value
  • ENOVPublishTypeOid For Object id value (an hexa-decimal string)
  • ENOVPublishTypeUid For symbolic link value
  • ENOVPublishTypeTimestamp For timestamp value
  • ENOVPublishTypeVaultReference For Vault reference value
o IsKeyAttribute
public int IsKeyAttribute()const
Returns if attribute participates to uniqueness indentification.
Role: Returns if attribute participates to uniqueness indentification.
Returns:
Defines if the Attribute is a key attribute or not.
Legal values: 0 means that this attribute is not a key attribute.
o IsMandatory
public int IsMandatory()const
Returns if attribute must be valuated.
Role: Returns if attribute must be valuated at creation time.
Returns:
Defines if the Attribute must be valuated.
Legal values: 0 means optional valuation for this attribute.
o IsModificationAuthorized
public int IsModificationAuthorized()const
Returns if attribute modification is authorized.
Role: Returns if attribute modification is authorized.
Returns:
Define the access mode for this attribute
Legal values: It can be set to either:
  • ENOVPublishNoAccess To forbid any access
  • ENOVPublishReadOnly To authorize read only access
  • ENOVPublishReadWrite To autorize Read and write access
o IsMultipleValueAuthorized
public int IsMultipleValueAuthorized()const
Returns if attribute supports mono-valuation or multi-valuation.
Role: Returns if attribute supports mono-valuation or multi-valuation.
Returns:
Defines if the Attribute node is mono-valuated or multi-valuated
Legal values: 0 means mono-valuated
o Print
public virtual void Print(int inLevel= 0 )const
Print a report on standard output.
Role: Print the content of this node and its children.
Parameters:
inLevel
Enable to have an indented presentation according to the tree depth of the node.
o SetTimeValue
public int SetTimeValue(time_t itValue)
Sets attribute value for an date & time value.
Role: Sets date & time value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 4 if attribute modification not authorized.
  • Returns 5 if attribute modification could not be done.
Parameters:
itValue
Attribute value.
o SetValue
public int SetValue( const char* icValue)
Sets attribute value for a string or date & time value.
Role: Sets string or date & time value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 4 if attribute modification not authorized.
  • Returns 5 if attribute modification could not be done.
Parameters:
inValue
Attribute value.
o SetValue
public int SetValue(double idValue)
Sets attribute value for a floating point value.
Role: Sets floating point value of the Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 4 if attribute modification not authorized.
  • Returns 5 if attribute modification could not be done.
Parameters:
idValue
Attribute value.
o SetValue
public int SetValue(int inValue)
Sets attribute value for an integer value.
Role: Sets value of the integer Attribute node in case of a mono-valuated attribute.
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 4 if attribute modification not authorized.
  • Returns 5 if attribute modification could not be done.
Parameters:
inValue
Attribute value.
o SetValue
public int SetValue( const unsigned char* ibValue,
int inValueLength)
Sets attribute value for a binary value.
Role: Sets binary value of the Attribute node in case of a mono-valuated attribute. (This method needs to be invoked for ENOVPublishTypeOid, ENOVPublishTypeUid and ENOVPublishTypeVaultReference attributes.)
Returns:
Method return code
Legal values:
  • Returns 0 if operation runs well.
  • Returns 1 if attribute has not a requested type.
  • Returns 2 if attribute multi-valuated.
  • Returns 4 if attribute modification not authorized.
  • Returns 5 if attribute modification could not be done.
Parameters:
ibValue
Attribute value.
inValueLength
Binary string length.
o operator=
public const ENOVPublishAttributeNode & operator=( const ENOVPublishAttributeNode& ixNode)
Assignment operator from another object node.
Parameters:
ixNode
Object used as reference for the assignment.

This object is included in the file: ENOVPublishAttributeNode.h
If needed, your Imakefile.mk should include the module: ENOVIAPubStream

Copyright © 2003, Dassault Systèmes. All rights reserved.