Represents a location in which folders, documents, and custom objects are stored, accessed, and managed on the Content Engine server.

An IObjectStore object provides access to metadata and Content Engine objects, such as class descriptions, property descriptions, security policies, and so on. Using methods on this interface, you can retrieve this information, create and store new objects in the object store, and retrieve its installed feature add-ons.

You can get a reference to an IObjectStore by iterating an IObjectStoreSet collection. You can get an instance of IObjectStore by:

  • Calling CreateInstance, GetInstance, or FetchInstance on the Factory.ObjectStore class.
  • Calling GetObjectStore on an instance of an IRepositoryObject subclass.

The following tables list the members exposed by IObjectStore.

Public Properties

 NameDescription
Public propertyAddOnInstallationRecordsSpecifies a list of IAddOnInstallationRecord objects corresponding to this object store.
Public propertyAuditLevelThe level of auditing on the object store on which this object is persisted. A value of 0 is returned if auditing is disabled; a value of 1 is returned if auditing is enabled. You can change the auditing level by setting this property on the IObjectStore object.
Public propertyCBRLocaleThe Verity locale used for the object store. Any valid locale name supported by Verity can be used. This value must be set before any VerityIndexArea objects are created, and may not be modified while any VerityIndexArea objects exist. If the locale is "uni", the default language code can optionally be appended to this name (such as "uni/fr" for French). When a language code is appended, queries use the specified language as the default language for word stemming and other language-specific features.

Specifying a language code here applies only to the default language used. It does not preclude the use of additional languages for the object store. Multiple languages can be indexed into Verity collections in the same object store.

Public propertyChoiceListsSpecifies a ChoiceListSet object containing the set of ChoiceList objects defined in this object store.
Public propertyClassDescriptionsSpecifies a ClassDescriptionSet object, which contains a collection of the ClassDescription objects associated with a given object store. The ClassDescriptions property returns a "snapshot" of the latest class metadata for a given object store. If you make changes to a class, it will not be reflected in the ClassDescriptions collection until you refresh the object store.
Public propertyContentAccessRecordingLevelSpecifies the frequency of recording updates to the DateContentLastAccessed property (that is, the time of the last content access). Recording frequency can be none, immediate, hourly, or daily.
Note
Enabling content access recording (that is, setting to an option other than "None") impacts system performance. The more frequent the updates to the DateContentLastAccessed property, the greater the impact is to the system.

The DateContentLastAccessed property on a document or annotation is updated based on the value of a given object store's ContentAccessRecordingLevel property. The update occurs whenever content on a ContentTransfer object on the document or annotation is accessed. Content on a ContentTransfer object is considered accessed when:

  • "Content" is included in the property filter of a document or annotation during refresh. In this case, the DateContentLastAccessed property is updated during the refresh.
  • "Content" is not included in the property filter, but Document.accessContentStream is called to retrieve the content. In this case, the DateContentLastAccessed property is updated during the content access operation (via the AccessContentStream method).
Note
Even if the content is larger than the specified chunk size (default or user-specified) and multiple trips to the database or cache are performed, the DateContentLastAccessed property is set to the time when the content is first accessed.
Public propertyDatabaseIndexStorageLocationSpecifies the location within the database in which index information is to be created and referenced. If this property is set during creation of the object store, Content Engine uses the value to control where indexes are located. A change to the property value after the object store is created affects only the location of indexes that are added after the change. You can override the value of this property by specifying a custom schema script during object store creation.
Public propertyDatabaseLOBStorageLocationSpecifies the location within the database in which Large Object (LOB) data is to be created and referenced. If this property is set during creation of the object store, Content Engine uses the value to control where LOB data is placed. A change to the property value after the object store is created affects only the location of LOBs that are added after the change. You can override the value of this property by specifying a custom schema script during object store creation.

Note: This property is ignored on DB2 for z/OS.

Public propertyDatabaseTableStorageLocationSpecifies the location within the database in which new tables are to be created and referenced. If this property is set during creation of the object store, Content Engine uses the value to control where tables are located. A change to the property value after the object store is created affects only the location of tables that are added after the change. You can override the value of this property by specifying a custom schema script during object store creation.

Note: This property is ignored on DB2 for z/OS.

Public propertyDatabaseTypeSpecifies the database type (DB2, MSSQL, or ORACLE).
Public propertyDefaultQueryTimeLimitThe default value (in seconds) for the maximum amount of time that the server will allow a query to run before cancelling the query. This value can be overridden by a query.
Public propertyDefaultReservationTypeSpecifies a ReservationType constant that indicates, if an explicit choice is not made when a document is checked out, the default type of reservation to create (collaborative or exclusive) in this object store. For a newly created object store, this property is initialized to EXCLUSIVE. A collaborative reservation is a reservation that any user with the appropriate permissions can check in, modify, or delete. An exclusive reservation is a reservation that only the reservation owner can check in, modify, or delete.
Public propertyDescriptiveTextUser-readable text that describes an object.

The text is not locale-specific to the retrieving user except for the following classes:

  • ClassDescription
  • PropertyDescription*
  • ClassDefinition
  • PropertyTemplate*
  • PropertyDefinition*
Public propertyDocumentClassificationActionsSpecifies a DocumentClassificationActionSet object that contains the collection of DocumentClassificationAction objects that have been created in this object store. Each DocumentClassificationAction object represents Java™ code for auto-classifying documents that hold a particular type of content data.
Public propertyDocumentLifecycleActionsSpecifies a DocumentLifecycleActionSet object that contains the collection of DocumentLifecycleAction objects defined in this object store.
Public propertyDocumentLifecyclePoliciesSpecifies a DocumentLifecyclePolicySet object that contains the collection of DocumentLifecyclePolicy objects associated with this object store or DocumentLifecycleAction object.
Public propertyDomainThe FileNet P8 domain to which a given object belongs.
Public propertyEventActionsA collection of the the EventAction objects associated with an ObjectStore object.
Public propertyFolderCacheMaxAgeDeltaObsolete. The maximum number of milliseconds difference (delta) in the timestamps (age) of entries in the cache to allow for age equality of the entries. This value is used by the cache-purging algorithm associated with FolderCacheReapFrequency.

Folder entries that have this number of milliseconds or less difference in their timestamps will be considered equal, for the purposes of comparison when determining which entries to purge from the cache.

Public propertyFolderCacheMaxEntriesThe maximum number of folders in the folder cache for the object store. Each object store has only one folder cache. The folder cache is incrementally added to as queries are made of the cache to find folders. As requests are made of the folder cache for information, that information is read from the object store. The folder information is then stored in the folder cache and returned to the caller.
Public propertyFolderCacheReapFrequencyObsolete. The frequency with which the folder cache is to be purged when the cache exceeds the value of FolderCacheMaxEntries. A usage algorithm determines which folder entries are to be removed. Folder entries are removed from the cache until the number of entries in the cache is less than or equal to the value of FolderCacheMaxEntries.

The value for this property indicates that, whenever the cache exceeds the value of FolderCacheMaxEntries, n (the value specified) entries can be added to the cache before the purging algorithm will run.

Public propertyForceCaseInsensitiveSearchDetermines whether searches operate in case-insensitive mode regardless of the configured behavior of the database.
Public propertyFullTextRowDefaultThe default number of rows that can be returned from the indexing data during a search. This value can be exceeded using the FULLTEXTROWLIMIT option for a SQL statement. As this value is increased, the amount of system resources used in a full text search operation goes up, as does the time to execute a full text search that results in a large number of hits. As this value is decreased, the accuracy of full text searches may be reduced.
Public propertyFullTextRowMaxThe maximum number of rows that can be returned from the indexing data during a search. If the FULLTEXTROWLIMIT option is specified for a SQL statement, the lesser of this property value and the value specified for FULLTEXTROWLIMIT is used as the maximum number of rows that can be returned.

This limit prevents excessive resource use during a search operation.

Public propertyIndexAreasThe IndexArea objects that can be used to store full-text indexing information for this object store.
Public propertyJNDIDataSourceSpecifies the Java™ Naming and Directory Interface (JNDI) name of the DataSource defined in the Java™ 2 Platform Enterprise Edition (J2EE) application server, which can be used to access the object store database via a non-XA database connection.
Public propertyJNDIXADataSourceSpecifies the Java™ Naming and Directory Interface (JNDI) name of the DataSource defined in the Java™ 2 Platform Enterprise Edition (J2EE) application server, which can be used to access the object store database via an XA database connection.
Public propertyLocaleNameIndicates the name of the locale in which this object is currently operating. A locale name is an ID that indicates the specific regional language of the text string value of a display name or description. For example, the ID "en-us" or "en_US" indicates United States English. Note that the locale name formats are those supported in IETF RFC-3066, with the addition of support for using underbars in placed of hyphens between the regional language and the country code, as show in the example above. Setting the locale to "C" is also supported, and simply maps to the server's Java™ Virtual Machine (JVM) defaults for language and country. Variant information passed in the country code of the locale string is ignored by the Content Engine validation routines and stripped off when the object is saved to the object store. Locale validation logic applies to both the UserContext locale-specific operations as well as the WSDL-defined locale for the web services SOAP transport.
Public propertyLocaleNamesThe names of the locales this object supports. Each locale name is a string containing an ID that indicates the specific regional language of the text string value of a display name or description.
Public propertyMaxQueryTimeLimitThe maximum amount of time (in seconds) that the server will allow a query to run before canceling the query. This cannot be overridden by an individual query.

Setting this value helps to prevent excessive server resource usage by a single user.

Public propertyNameThe name for this object.

For most classes, this property is read-only and returns the value of the designated name property for the object, or its ID if there is no name property. If ClassDescription.NamePropertyIndex has a value, this property contains the value of the designated name property. If there is no designated name property value, and the object has an Id property, this property contains the string value of the Id property. If neither of these conditions is satisfied, this property contains an empty string.

For a ComponentRelationship object, this property is read/write and specifies the name of the object.

Public propertyObjectSecurityCacheEntryTTLSpecifies the Time-To-Live (TTL) in seconds for entries in the object security cache. Once the TTL has elapsed, cached information that has become stale is discarded and fresh data is obtained from the database.

For more information about this cache, see Security Caching.

Public propertyObjectSecurityCacheMaxEntriesSpecifies the maximum number of entries in the object security cache. When the maximum number is exceeded, the least recently used elements are removed to allow more recently used elements to be cached.

For more information about this cache, see Security Caching.

Public propertyObjectStoreIdReturns the persistent ID (GUID) that identifies the given object store.
Public propertyPermissionsManages the discretionary permissions assigned to the object.
Public propertyPropertyTemplatesSpecifies a PropertyTemplateSet object that contains the defined property templates in this object store.
Public propertyRootClassDefinitionsSpecifies a ClassDefinitionSet object containing the set of root class definitions (objects instantiated from ClassDefinition and its subclasses) that are defined in this object store. Each class definition defines the set of mutable metadata (including property definitions) for a given class. Once you have set a reference to collection returned by the RootClassDefinitions property, you can access all of the mutable class metadata available in this object store.
Public propertyRootFolderThe automatically-created Folder object representing the root of the container hierarchy associated with this object store
Public propertySecurityDescCacheMaxEntriesSpecifies the maximum number of entries allowed in the security descriptor cache for a given object store. When the maximum number is exceeded, the least recently used security descriptor elements are removed to allow more recently used elements to be cached.
Public propertySecurityPoliciesSpecifies a SecurityPolicySet object that contains a collection of the security policies associated with this ObjectStore object.
Public propertyStorageAreasSpecifies the collection of all storage areas.

For a storage policy, this represents all storage areas (regardless of the ResourceStatus property value) that the policy references (the filter includes).

Public propertyStoragePoliciesSpecifies an IStoragePolicySet object that contains a collection of storage policies associated with an object store.
Public propertySubscriptionsA collection of the subscriptions associated with this object.
Public propertySymbolicNameRepresents the programmatic identifier for this class description, class definition, property description, property definition, property template, or object store.

For objects in which you can set the SymbolicName property (object store, class definition, and property template), the value of the SymbolicName property must begin with a letter and contain the following characters only: 'A' to 'Z', 'a' to 'z', '0' to '9', and '_' (underscore). No blanks or symbols are allowed. If you do not provide a value for the SymbolicName property, the server will generate it, based on the value of the DisplayName property, when you save the object.

For property template objects, changing the symbolic name of a property template for a string-valued property that has been enabled for full-text indexing (IsCBREnabled property set to true) will require re-indexing of all objects containing that property. If you do not re-index, full-text searches on this property will fail to find any objects.

Public propertyTableDefinitionsThe collection of TableDefinition objects used by the object store. This collection represents all of the database tables used by the Content Engine.
Public propertyTopFoldersA FolderSet collection object containing the directly-contained Folder objects that are the starting points (children of the root folder) in the container hierarchy.
Public propertyWorkflowDefinitionsA IWorkflowDefinitionSet object that contains the IWorkflowDefinition objects associated with this object store.
Public propertyXMLPropertyMappingScriptsSpecifies an XMLPropertyMappingScriptSet object containing the collection of XMLPropertyMappingScript objects associated with this object store or DocumentClassDefinition object. Each XMLPropertyMappingScript object holds a property-mapping XSL script that is registered for XML documents of a specific type. This script extracts content from XML documents and maps it to property values associated with a particular document class.

For DocumentClassDefinition objects, this property specifies the set of XMLPropertyMappingScript objects that have specified this DocumentClassDefinition object as the value of their TargetClass property.

Top

Public Methods

 NameDescription
Public methodDeterminePrerequisiteAddOnIdsReturns the AddOn IDs for which installation is required prior to the installation of the AddOn specified by addOnId. If the AddOn identified by addOnId has been superseded, the results are based on the superseding AddOn prerequisites.
Public methodFetchAndLockObjectOverloaded. Retrieves and locks the specified object from this ObjectStore object. The object can be specified as a string containing a GUID, a symbolic name, or a path. Use parameters on this method to specify the owner of the lock and the lock timeout value. This method always makes a round-trip to the server.

You can optionally include a filter to control which properties to return with the object. If you pass in null for the filter parameter, this method returns values for all non-object properties and returns placeholders for all object-valued properties. For more information, see the description of the filter parameter.

Public methodInstallAddOnInstalls an add-on, available on a domain, to the current object store. When an add-on is installed, the pre-import script (if one exists) is run. Then the import data is imported into the object store, creating new metadata classes, properties, and data objects. Finally, the post-import script is run.

This method results in one of the following outcomes:

  • If the add-on doesn't have an installation record, the installation is attempted and an AddOnInstallationRecord object is created.
  • If the add-on has an installation record with a status of "InstallationFailed", the installation is re-attempted and the installation record's properties are updated.
  • If the add-on has an installation record with a status of "Installed", an exception (indicating that the add-on is already installed) is thrown.
Public methodIsAddOnInstalledReturns a Boolean value indicating whether the AddOn identified by addOnId is installed (True) or not (False) in the object store. If the AddOn identified by addId has been superseded and the superseded AddOn is currently installed, a value of true will be returned.
Top

See Also