Process API

filenet.vw.api
Class VWTableDefinition

java.lang.Object
  extended by filenet.vw.api.VWTableDefinition
All Implemented Interfaces:
IVWTableDefinition, java.io.Serializable, java.lang.Cloneable
Direct Known Subclasses:
VWLogDefinition, VWQueueDefinition, VWRosterDefinition

public abstract class VWTableDefinition
extends java.lang.Object
implements IVWTableDefinition, java.io.Serializable, java.lang.Cloneable

Defines database tables for use with queues, rosters, and logs.

Methods for Managing User and Group Access Control

The following methods in the WQueueDefinition and VWRosterDefinition classes set read and write access permissions for users and groups, using VWParticipant objects:

After the above methods have been used to set access permissions (using VWParticipant object arrays), the following methods in this class can be used to retrieve (get) VWParticipant arrays that represent users and groups who have create, read, or write access:

Note: VWParticipant objects are advantageous for representing user and group lists in a multi-platform environment. If VWParticipant objects are not needed, String arrays of user and group names may be used to represent users and groups, with additional methods in this class. You can set access permissions using String lists to represent users and groups with the following methods in the VWQueueDefinition and VWRosterDefinition classes:

After the above methods have been used to set access permissions (using VWParticipant object arrays), the following methods should be used to retrieve (get) String arrays that represent users and groups who have create, read, or write access:

See Also:
Serialized Form

Field Summary
static int CONFIG_TYPE_LOG
          Value of 3. This constant indicates a log configuration type.
static int CONFIG_TYPE_QUEUE
          Value of 2. This constant indicates a queue configuration type.
static int CONFIG_TYPE_ROSTER
          Value of 1. This constant indicates a roster configuration type.
static int LVALUE
          Value of 0. This constant can be used to subscript into the pre or post assignment arrays.
static int RVALUE
          Value of 1. This constant can be used to subscript into the pre or post assignment arrays.
 
Method Summary
static java.lang.String _get_FILE_AUTHOR()
          For FileNet internal use only, do not call
static java.lang.String _get_FILE_DATE()
          For FileNet internal use only, do not call
static java.lang.String _get_FILE_REVISION()
          For FileNet internal use only, do not call
 java.lang.Object clone()
          Creates a clone of this VWTableDefinition object.
 VWExposedFieldDefinition createFieldDefinition(java.lang.String theName, int theType, int theLength)
          Create an exposed field by input of a field name and data type.
 VWIndexDefinition createIndexDefinition(java.lang.String theName, java.lang.String[] theFieldNames)
          Create the index definition DMM addded because of IVWTableDef
 void deleteFieldDefinition(java.lang.String theName)
          Delete an exposed field from one of the following: log, queue, or roster.
 void deleteIndexDefinition(java.lang.String theName)
          Delete an index from one of the following: log, queue, or roster.
 java.lang.String getDescription()
          Get the description for this table definition.
 VWExposedFieldDefinition[] getFields()
          Get an array of exposed field definitions for this table definition.
 VWIndexDefinition[] getIndexes()
          Get an array of index definitions for one of the following Process Engine table types: log, queue, or roster definition.
static java.lang.String getLocalizedString(int theConfigType)
          Gets a localized string representation of the config type (roster, queue, or log).
 java.lang.String getName()
          Gets the name for one of the following: log, queue, or roster.
 java.lang.String[] getReadSecurity()
          Returns a String array of users and/or groups who have read access.
 VWParticipant[] getReadSecurityPx()
          Returns an array of VWParticipant objects that specifies users and/or groups who have read access.
 int getServerId()
          Get the server ID location for one of the following: log, queue, or roster.
 java.lang.String[] getWriteSecurity()
          Returns a String array of users and/or groups who have write access.
 VWParticipant[] getWriteSecurityPx()
          Returns an array of VWParticipant objects that specifies users and/or groups who have write access.
 boolean hasFieldName(java.lang.String fieldName)
          Determine whether a specified log, queue, or roster field exists.
static boolean isValid(int theConfigType)
          Validates the config type (a process engine table type) as a valid type.
static VWExposedFieldDefinition[] optionalSystemFields(int theType)
          Gets optional exposed workflow system fields of type roster, queue, or log.
 void setDescription(java.lang.String theDescription)
          Set the description for this table definition.
 void setServerId(int theNewServerId)
          Set the server ID location for one of the following: log, queue, or roster.
 java.lang.String toString()
          Get the string version of the table definition.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LVALUE

public static final int LVALUE
Value of 0. This constant can be used to subscript into the pre or post assignment arrays.

See Also:
Constant Field Values

RVALUE

public static final int RVALUE
Value of 1. This constant can be used to subscript into the pre or post assignment arrays.

See Also:
Constant Field Values

CONFIG_TYPE_ROSTER

public static final int CONFIG_TYPE_ROSTER
Value of 1. This constant indicates a roster configuration type.

See Also:
Constant Field Values

CONFIG_TYPE_QUEUE

public static final int CONFIG_TYPE_QUEUE
Value of 2. This constant indicates a queue configuration type.

See Also:
Constant Field Values

CONFIG_TYPE_LOG

public static final int CONFIG_TYPE_LOG
Value of 3. This constant indicates a log configuration type.

See Also:
Constant Field Values
Method Detail

_get_FILE_DATE

public static java.lang.String _get_FILE_DATE()
For FileNet internal use only, do not call

Returns:
the modification date

_get_FILE_AUTHOR

public static java.lang.String _get_FILE_AUTHOR()
For FileNet internal use only, do not call

Returns:
the file author

_get_FILE_REVISION

public static java.lang.String _get_FILE_REVISION()
For FileNet internal use only, do not call

Returns:
the file revision

createFieldDefinition

public VWExposedFieldDefinition createFieldDefinition(java.lang.String theName,
                                                      int theType,
                                                      int theLength)
                                               throws VWException
Create an exposed field by input of a field name and data type. Use the exposed field to create index definitions.

Specified by:
createFieldDefinition in interface IVWTableDefinition
Parameters:
theName - Name of the exposed field
An exposed field name:
  • Must have 31 or fewer characters (bytes)
  • Must be alphanumeric (An underscore is acceptable anywhere after the first letter in the name.)
  • May begin with F_ (to allow the user to expose a system field)
theType - Integer value that represents the type of the data, as follows:
Value Data type
1 FIELD_TYPE_INT
2 FIELD_TYPE_STRING
4 FIELD_TYPE_BOOLEAN
8 FIELD_TYPE_FLOAT
16 FIELD_TYPE_TIME
Arrays of any of these types are not acceptable.
theLength - Number of bytes (length) of data stored, if data type is a string
Zero (0) for all other types
Returns:
VWExposedDefinition Exposed definition for one of the following: log, queue, or roster
Throws:
VWException

deleteFieldDefinition

public void deleteFieldDefinition(java.lang.String theName)
                           throws VWException
Delete an exposed field from one of the following: log, queue, or roster.

Specified by:
deleteFieldDefinition in interface IVWTableDefinition
Parameters:
theName - Name of the exposed field to be deleted from the log, queue, or roster
Throws:
VWException - Thrown whenever the system does not find the name.

createIndexDefinition

public VWIndexDefinition createIndexDefinition(java.lang.String theName,
                                               java.lang.String[] theFieldNames)
                                        throws VWException
Create the index definition DMM addded because of IVWTableDef

Specified by:
createIndexDefinition in interface IVWTableDefinition
Parameters:
theName -
theFieldNames -
Returns:
the index definition
Throws:
VWException
Since:
P8 4.0

deleteIndexDefinition

public void deleteIndexDefinition(java.lang.String theName)
                           throws VWException
Delete an index from one of the following: log, queue, or roster.

Specified by:
deleteIndexDefinition in interface IVWTableDefinition
Parameters:
theName - Name of the index to be deleted from the log, queue, or roster
Throws:
VWException - Thrown whenever the system does not find the index.

getFields

public VWExposedFieldDefinition[] getFields()
                                     throws VWException
Get an array of exposed field definitions for this table definition.

Specified by:
getFields in interface IVWTableDefinition
Returns:
Array of exposed field definitions
Null if there is no exposed field definition
Throws:
VWException

getIndexes

public VWIndexDefinition[] getIndexes()
                               throws VWException
Get an array of index definitions for one of the following Process Engine table types: log, queue, or roster definition.

Specified by:
getIndexes in interface IVWTableDefinition
Returns:
Array of index field definitions Null if there is no index field definition
Throws:
VWException

getName

public java.lang.String getName()
Gets the name for one of the following: log, queue, or roster.

Specified by:
getName in interface IVWTableDefinition
Returns:
name Name of the log, queue, or roster.

getReadSecurity

public java.lang.String[] getReadSecurity()
Returns a String array of users and/or groups who have read access.

Returns:
readSecurity Array of users and/or groups who have read access

getReadSecurityPx

public VWParticipant[] getReadSecurityPx()
                                  throws VWException
Returns an array of VWParticipant objects that specifies users and/or groups who have read access.

Returns:
readSecurity Array of users and/or groups who have read access.
Throws:
VWException

getServerId

public int getServerId()
Get the server ID location for one of the following: log, queue, or roster.

Returns:
the server id

setServerId

public void setServerId(int theNewServerId)
                 throws VWException
Set the server ID location for one of the following: log, queue, or roster. The system validates the server ID only upon transfer of the information to the VWService.

Parameters:
theNewServerId - New server ID
Throws:
VWException - Thrown if theNewServerId input is invalid.

getWriteSecurity

public java.lang.String[] getWriteSecurity()
Returns a String array of users and/or groups who have write access.

Returns:
An array of users and/or groups who have write access to this log definition.

getWriteSecurityPx

public VWParticipant[] getWriteSecurityPx()
                                   throws VWException
Returns an array of VWParticipant objects that specifies users and/or groups who have write access.

Returns:
An array of VWParticipant of users and/or groups who have write access.
Throws:
VWException

getDescription

public java.lang.String getDescription()
Get the description for this table definition.

Specified by:
getDescription in interface IVWTableDefinition
Returns:
Description for this table definition

setDescription

public void setDescription(java.lang.String theDescription)
Set the description for this table definition.

Specified by:
setDescription in interface IVWTableDefinition
Parameters:
theDescription - Description for this table definition

toString

public java.lang.String toString()
Get the string version of the table definition.

Specified by:
toString in interface IVWTableDefinition
Overrides:
toString in class java.lang.Object
Returns:
Table name

optionalSystemFields

public static VWExposedFieldDefinition[] optionalSystemFields(int theType)
                                                       throws VWException
Gets optional exposed workflow system fields of type roster, queue, or log. These system fields are not required.

Parameters:
theType - Type of collection on which the optional system field is exposed, as follows:
    IVWCommandServer.QUERYTYPE_LOG
    IVWCommandServer.QUERYTYPE_QUEUE
    IVWCommandServer.QUERYTYPE_ROSTER
Returns:
Exposed field definitions of optional workflow system fields
Throws:
VWException

hasFieldName

public boolean hasFieldName(java.lang.String fieldName)
                     throws VWException
Determine whether a specified log, queue, or roster field exists.

Parameters:
fieldName - Name of the log, queue, or roster field
Returns:
True if the data field exists
Throws:
VWException - Thrown if the field name parameter is null.

clone

public java.lang.Object clone()
Creates a clone of this VWTableDefinition object.

Overrides:
clone in class java.lang.Object
Returns:
A clone of this instance.

getLocalizedString

public static java.lang.String getLocalizedString(int theConfigType)
                                           throws VWException
Gets a localized string representation of the config type (roster, queue, or log).

Parameters:
theConfigType - An integer value associated with the config type.
Returns:
The localized version of the config type.
Throws:
VWException - Thrown if the config type value specified in the theConfigType parameter is invalid.

isValid

public static boolean isValid(int theConfigType)
Validates the config type (a process engine table type) as a valid type.

Parameters:
theConfigType - The integer value associated with the config type (roster, queue, or log) to be validated.
Returns:
true if the config type value specified in the theConfigType parameter is valid; otherwise, this method returns false.

Process API

© Copyright IBM Corporation 2002, 2008. All rights reserved.