public void AddCrawlAction(ACrawlAction <TArachnodeDAO> crawlAction, CrawlActionType crawlActionType, bool isEnabled, int order) { //TODO: AssemblyName should be Namespace... crawlAction.AssemblyName = crawlAction.GetType().Namespace; crawlAction.CrawlActionType = crawlActionType; crawlAction.IsEnabled = isEnabled; crawlAction.Order = order; crawlAction.TypeName = crawlAction.GetType().FullName; CrawlActions.Add(crawlAction.TypeName, crawlAction); }
internal void LoadCrawlActions(IArachnodeDAO arachnodeDAO) { CrawlActions = new Dictionary <string, ACrawlAction <TArachnodeDAO> >(); foreach (ArachnodeDataSet.CrawlActionsRow crawlActionsRow in arachnodeDAO.GetCrawlActions()) { ObjectHandle objectHandle = Engine <TArachnodeDAO> .GetObjectHandle(crawlActionsRow.AssemblyName, crawlActionsRow.TypeName, _applicationSettings, _webSettings); ACrawlAction <TArachnodeDAO> crawlAction = (ACrawlAction <TArachnodeDAO>)objectHandle.Unwrap(); crawlAction.AssemblyName = crawlActionsRow.AssemblyName; crawlAction.IsEnabled = crawlActionsRow.IsEnabled; crawlAction.Order = crawlActionsRow.Order; crawlAction.CrawlActionType = (CrawlActionType)Enum.Parse(typeof(CrawlActionType), crawlActionsRow.CrawlActionTypeID.ToString()); if (!crawlActionsRow.IsSettingsNull()) { crawlAction.Settings = crawlActionsRow.Settings; } crawlAction.TypeName = crawlActionsRow.TypeName; CrawlActions.Add(crawlAction.TypeName, crawlAction); } }