/// <summary> /// Initializes a new instance of the <see cref="ActionSuiteProvider"/> class. /// </summary> public ActionSuiteProvider() { actionDescriptorSuite = null; actionListSuite = null; actionReferenceSuite = null; disposed = false; }
/// <summary> /// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. /// </summary> public void Dispose() { if (!disposed) { disposed = true; if (actionDescriptorSuite != null) { actionDescriptorSuite.Dispose(); actionDescriptorSuite = null; } actionListSuite = null; actionReferenceSuite = null; } }
/// <summary> /// Creates the action list suite. /// </summary> /// <param name="zstringSuite">The ASZString suite instance.</param> /// <exception cref="ArgumentNullException"><paramref name="zstringSuite"/> is null.</exception> /// <exception cref="ObjectDisposedException">The class has been disposed.</exception> public void CreateListSuite(IASZStringSuite zstringSuite) { if (zstringSuite == null) { throw new ArgumentNullException(nameof(zstringSuite)); } if (disposed) { throw new ObjectDisposedException("ActionSuiteProvider"); } if (!ListSuiteCreated) { if (!ReferenceSuiteCreated) { CreateReferenceSuite(); } actionListSuite = new ActionListSuite(actionReferenceSuite, zstringSuite); } }