/// <summary> /// Invokes callback for a read annotations request. /// </summary> private bool InvokeCallback(TsCHdaUpdateCompleteEventHandler callback, object results) { // check for valid result type. if (!typeof(TsCHdaResultCollection[]).IsInstanceOfType(results)) { return(false); } TsCHdaResultCollection[] values = (TsCHdaResultCollection[])results; // update item handles and actual times. UpdateResults(values); try { callback(this, values); } catch { // ignore exceptions in the callbacks. } // request always completes return(true); }
/// <summary> /// Starts an asynchronous delete values at specific times request for all items in the trend. /// </summary> public OpcItemResult[] DeleteAtTime( object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { return(DeleteAtTime(GetItems(), requestHandle, callback, out request)); }
/// <summary> /// Starts an asynchronous delete raw request for a set of items. /// </summary> public OpcItemResult[] Delete( OpcItem[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { OpcItemResult[] results = _server.Delete( StartTime, EndTime, items, requestHandle, callback, out request); return(results); }
/// <summary> /// Sends an asynchronous request to inserts annotations for one or more items. /// </summary> /// <param name="items">A list of annotations to add for each item (must include the item name).</param> /// <param name="requestHandle">An identifier for the request assigned by the caller.</param> /// <param name="callback">A delegate used to receive notifications when the request completes.</param> /// <param name="request">An object that contains the state of the request (used to cancel the request).</param> /// <returns>A set of results containing any errors encountered when the server validated the items.</returns> public OpcItemResult[] InsertAnnotations( TsCHdaAnnotationValueCollection[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { if (_server == null) { throw new NotConnectedException(); } OpcItemResult[] results = ((ITsCHdaServer)_server).InsertAnnotations( items, requestHandle, callback, out request); return(results); }
/// <summary> /// Sends an asynchronous request to delete values for one or more items at a specified times. /// </summary> /// <param name="items">The set of timestamps to delete for one or more items.</param> /// <param name="requestHandle">An identifier for the request assigned by the caller.</param> /// <param name="callback">A delegate used to receive notifications when the request completes.</param> /// <param name="request">An object that contains the state of the request (used to cancel the request).</param> /// <returns>A set of results containing any errors encountered when the server validated the items.</returns> internal OpcItemResult[] DeleteAtTime( TsCHdaItemTimeCollection[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { if (_server == null) { throw new NotConnectedException(); } OpcItemResult[] results = ((ITsCHdaServer)_server).DeleteAtTime( items, requestHandle, callback, out request); return(results); }
/// <summary> /// Starts an asynchronous delete values at specific times request for a set of items. /// </summary> public OpcItemResult[] DeleteAtTime( TsCHdaItem[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { TsCHdaItemTimeCollection[] times = new TsCHdaItemTimeCollection[items.Length]; for (int ii = 0; ii < items.Length; ii++) { times[ii] = (TsCHdaItemTimeCollection)Timestamps.Clone(); times[ii].ItemName = items[ii].ItemName; times[ii].ItemPath = items[ii].ItemPath; times[ii].ClientHandle = items[ii].ClientHandle; times[ii].ServerHandle = items[ii].ServerHandle; } return(_server.DeleteAtTime(times, requestHandle, callback, out request)); }
/// <summary> /// Sends an asynchronous request to inserts annotations for one or more items. /// </summary> /// <param name="items">A list of annotations to add for each item (must include the item name).</param> /// <param name="requestHandle">An identifier for the request assigned by the caller.</param> /// <param name="callback">A delegate used to receive notifications when the request completes.</param> /// <param name="request">An object that contains the state of the request (used to cancel the request).</param> /// <returns>A set of results containing any errors encountered when the server validated the items.</returns> public OpcItemResult[] InsertAnnotations( TsCHdaAnnotationValueCollection[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { LicenseHandler.ValidateFeatures(LicenseHandler.ProductFeature.HistoricalAccess); if (Server == null) { throw new NotConnectedException(); } OpcItemResult[] results = ((ITsCHdaServer)Server).InsertAnnotations( items, requestHandle, callback, out request); return(results); }
/// <summary> /// Sends an asynchronous request to delete values for one or more items at a specified times. /// </summary> /// <param name="items">The set of timestamps to delete for one or more items.</param> /// <param name="requestHandle">An identifier for the request assigned by the caller.</param> /// <param name="callback">A delegate used to receive notifications when the request completes.</param> /// <param name="request">An object that contains the state of the request (used to cancel the request).</param> /// <returns>A set of results containing any errors encountered when the server validated the items.</returns> internal OpcItemResult[] DeleteAtTime( TsCHdaItemTimeCollection[] items, object requestHandle, TsCHdaUpdateCompleteEventHandler callback, out IOpcRequest request) { LicenseHandler.ValidateFeatures(LicenseHandler.ProductFeature.HistoricalAccess); if (Server == null) { throw new NotConnectedException(); } OpcItemResult[] results = ((ITsCHdaServer)Server).DeleteAtTime( items, requestHandle, callback, out request); return(results); }