Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

OMI SDK

Read and write status

DataSubscription

Use the DataSubscription class from IRuntimeDataClient to read and data.

DataSubscription

    public abstract class DataSubscription
    {
        /// <summary>
        /// Read the runtime data asynchronously.
        /// </summary>
        /// <param name="dataReferenceSources">The data reference source
        ///  array</param>
        /// <returns>The VTQ array of the references</returns>
        public abstract Task<VTQ[]> ReadAsync(DataReferenceSource[] dataReferenceSources);
        /// <summary>
        /// Write the runtime data asynchronously.
        /// When writing to an ArchestrA attribute in which security is
        /// SecuredWrite or VerifiedWrite, the corresponding pop-up dialog box    
        /// will automatically popup and the method will return when the dialog
        /// box is dismissed and the data is either written to the source or fails.
        /// </summary>
        /// <param name="dataReferenceSource">The data reference source</param>
        /// <param name="value">The value to be written</param>
        /// <returns>The status of the write operation</returns>
        public abstract Task<WriteOperationStatus> WriteAsync(DataReferenceSource dataReferenceSource , object value);
        /// <summary>
        /// Subscribe the runtime data references.
        /// </summary>
        /// <param name="dataReferenceSources">The data reference source array</param>
        /// <returns>The subscribed data reference array</returns>
        public abstract DataReference[] Subscribe(DataReferenceSource[] dataReferenceSources);
        /// <summary>
        /// Unsubscribe the runtime data references.
        /// </summary>
        /// <param name="dataReferences">The data reference array</param>
        public abstract void Unsubscribe(DataReference[] dataReferences);
        /// <summary>
        /// Unsubscribe all runtime data references.
        /// </summary>
        public abstract void UnsubscribeAll();
    }

WriteOperationStatus

Use the WriteOperationStatus class to receive write status when writing data to a reference.

WriteOperationStatus

    public enum WriteOperationStatus
    {
        /// <summary>
        /// Indicates success
        /// </summary>
        WriteSuccess = 0,
        /// <summary>
        /// Indicates failure
        /// </summary>
        WriteFailed = 1,
        /// <summary>
        /// Indicates failure because of application authentication issues
        /// </summary>
        ApplicationAuthenticationError = 2,
        /// <summary>
        /// Indicates failure because of user authentication issues
        /// </summary>
        UserAuthenticationError = 3,
        /// <summary>
        /// Indicates failure because of user authorization issues
        /// </summary>
        UserAuthorizationError = 4,
        /// <summary>
        /// Indicates failure because of unsupported operation
        /// </summary>
        NotSupportedOperation = 5,
        /// <summary>
        /// Indicates failure because the item is already deleted
        /// </summary>
        ItemAlreadyDeletedOrDoesNotExist = 9,
        /// <summary>
        /// Indicates failure because the item is invalid
        /// </summary>
        InvalidMonitoredItems = 10,
        /// <summary>
        /// Indicates failure because the operation failed
        /// </summary>
        OperationFailed = 11,
        /// <summary>
        /// Indicates failure because of no connection
        /// </summary>
        WriteFailedNoConnection = 12
    }
In This Topic