Dev2.Utils.ResourceChangeHandler.ShowResourceChanged C# (CSharp) Method

ShowResourceChanged() public method

public ShowResourceChanged ( IContextualResourceModel resource, IList numberOfDependants, IResourceChangedDialog resourceChangedDialog = null ) : void
resource IContextualResourceModel
numberOfDependants IList
resourceChangedDialog IResourceChangedDialog
return void
        public void ShowResourceChanged(IContextualResourceModel resource, IList<string> numberOfDependants, IResourceChangedDialog resourceChangedDialog = null)
        {
            if(resource == null)
            {
                throw new ArgumentNullException("resource");
            }
            if(numberOfDependants == null)
            {
                throw new ArgumentNullException("numberOfDependants");
            }
            if(resourceChangedDialog == null)
            {
                resourceChangedDialog = new ResourceChangedDialog(resource, numberOfDependants.Count);
            }
            resourceChangedDialog.ShowDialog();
            if(resourceChangedDialog.OpenDependencyGraph)
            {
                if(numberOfDependants.Count == 1)
                {
                    var resourceModel = resource.Environment.ResourceRepository.FindSingle(model => model.ResourceName == numberOfDependants[0]);
                    if(resourceModel != null)
                    {
                        WorkflowDesignerUtils.EditResource(resourceModel, _eventPublisher);
                    }
                }
                else
                {
                    Dev2Logger.Log.Info("Publish message of type - " + typeof(ShowReverseDependencyVisualizer));
                    _eventPublisher.Publish(new ShowReverseDependencyVisualizer(resource));
                }
            }
        }
    }