/// <summary> /// Add selected entities to folder. /// </summary> /// <param name="sourceSchemaName"></param> /// <param name="destinationSchemaName"></param> /// <param name="folderId"></param> /// <param name="filtersConfig"></param> public ConfigurationServiceResponse IncludeEntitiesInFolder(string sourceSchemaName, string destinationSchemaName, string entityColumnNameInFolderEntity, Guid folderId, string filtersConfig) { destinationSchemaName.CheckArgumentNullOrEmpty(nameof(destinationSchemaName)); sourceSchemaName.CheckArgumentNullOrEmpty(nameof(sourceSchemaName)); entityColumnNameInFolderEntity.CheckArgumentNullOrEmpty(nameof(entityColumnNameInFolderEntity)); folderId.CheckArgumentEmpty(nameof(folderId)); filtersConfig.CheckArgumentNullOrEmpty(nameof(filtersConfig)); var response = new ConfigurationServiceResponse(); var primaryColumnValues = GridUtilitiesHandler.GetPrimaryColumnValuesFromFilters(sourceSchemaName, filtersConfig); var includeParameters = new FolderActionParameters() { EntitySchemaName = destinationSchemaName, EntityColumnNameInFolderEntity = entityColumnNameInFolderEntity, FolderId = folderId }; var handler = CreateIncludeExecutor(includeParameters); response.RowsAffected = handler.Execute(primaryColumnValues); return(response); }
private IIncludeEntitiesInFolderExecutor CreateIncludeExecutor(FolderActionParameters parameters) => ClassFactory.Get <IIncludeEntitiesInFolderExecutor>(UserConnectionConstructorArg, new ConstructorArgument("parameters", parameters));