Click or drag to resize

Aras.IOM Namespace

The Aras.IOM namespace contains classes that allow connecting to a specified Innovator server and interact with it sending to it AML requests and getting back AML responses. Main classes of the namespace are Innovator and Item. An instance of the class Innovator can be thought of as a channel to an Innovator server and contains method for logging\logout with the server, creating instances of class Item, sending raw AMLs to the server plus some convenience methods. Class Item implements a generic Innovator's item that can represent either a request or a response to\from Innovator server.

The namespace is implemented in IOM.dll. There are two versions of the library: for usage from .NET and for usage from COM. Most of namespace's classes provides identical interface for .NET and COM applications except few methods in which cases the differences are explicitly mentioned in comments of the corresponding class method. The major difference between .NET and COM versions of the IOM.dll is dictated by difference in Microsoft implementation of core xml classes for .NET and COM (e.g. XmlDocument in .NET and MSXML2.FreeThreadedDOMDocument40Class for COM). As the result, a .NET application that uses the namespace and linked with the .NET version of IOM.dll should expect that, let's say, property Item.dom has type XmlDocument; similar COM application must reference the COM version of IOM.dll and should expect that property Item.dom has type MSXML2.FreeThreadedDOMDocument40Class.
Classes
  ClassDescription
Public classHttpServerConnection
Implementation of IServerConnection over HTTP.
Public classI18NSessionContext
The class represents an internationalization context of a client session. Every client of any type (e.g. standard Innovator client; standalone .NET client; etc.) has an instance of the class associated with each of its sessions. The context defines what locale, time zone, etc. are used by the session; this affects what kind of data is returned from the server and how the locale sensitive data (date, float, etc.) is formatted. The class also provides methods for converting from a locale specific formats of the session to neutral formats that are used in AML for sending\receiving data to\from Innovator server. In order to correctly build or interpret an AML it's important to remember the following:
  • Locale sensitive types ( 'date' | 'float' | 'decimal' ) must be always presented in AML in neutral format
  • Dates must be always presented in AML in the time zone of the session
Public classInnovator
The Innovator class provides methods for connecting to Aras Innovator Server and for performing miscellaneous mostly non-Item related operations.
Public classIomFactory
Provides method to create Innovator instances.
Public classItem
Public classRequestFactory
Provides method to init requests.
Public classServerConnectionBase
Base class for standard IServerConnection implementations.
Public classWinAuthHttpServerConnection
The class extends the HttpServerConnection class allowing to connect to Innovator server that is configured to use Windows authentication instead of Innovator's database authentication.
Structures
  StructureDescription
Public structureHttpConnectionParameters
Interfaces
  InterfaceDescription
Public interfaceIServerConnection
The interface is required to connect AML generator (Item and Innovator) to Innovator server. Responsibility of this interface is provide abstraction from transport layer.
Enumerations
  EnumerationDescription
Public enumerationFetchFileMode
This is an flags enumeration for fetchFileProperty method.
Public enumerationUrlType
Params for the getFileUrl() method on Innovator and ServerConnection.
Public enumerationVaultUrlType
Vault URL type.