/// <summary>
        /// Creates the view model.
        /// </summary>
        /// <param name="settings">The settings.</param>
        /// <param name="parentViewModel">The parent view model.</param>
        /// <returns>IIntegrationServiceSettingsViewModel.</returns>
        /// <exception cref="System.ArgumentException">Invalid options type.</exception>
        public IIntegrationServiceSettingsViewModel CreateViewModel(IIntegrationServiceSettings settings, IIntegrationServiceViewModel parentViewModel)
        {
            if (settings is ServiceCreationSettingsEdit)
            {
                var viewModel = ServiceCreationSettingsViewModelFactory.CreateExport().Value;
                viewModel.Initialize((ServiceCreationSettingsEdit)settings, parentViewModel);

                return viewModel;
            }

            if (settings is ServiceCallSettingsEdit)
            {
                var viewModel = ServiceCallSettingsViewModelFactory.CreateExport().Value;
                viewModel.Initialize((ServiceCallSettingsEdit)settings, parentViewModel);

                return viewModel;
            }

            throw new ArgumentException("Invalid options type.");
        }
        /// <summary>
        /// Initializes the specified model.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="parentViewModel">The parent view model.</param>
        /// <exception cref="System.ArgumentNullException">
        /// model
        /// or
        /// parentViewModel
        /// </exception>
        public void Initialize(ServiceCallSettingsEdit model, IIntegrationServiceViewModel parentViewModel)
        {
            if (model == null)
                throw new ArgumentNullException("model");

            if (parentViewModel == null)
                throw new ArgumentNullException("parentViewModel");

            ParentViewModel = parentViewModel;
            RefreshInternal(model);
        }
        /// <summary>
        /// Initializes the specified model.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <param name="parentViewModel">The parent view model.</param>
        public void Initialize(ServiceCreationSettingsEdit model, IIntegrationServiceViewModel parentViewModel)
        {
            ParentViewModel = parentViewModel;
            SelectedMethod = null;
            SelectedType = null;

            RefreshInternal(model);
        }