public PostFactory( IDateService dateService, IUserContext userContext, IPostRepository postRepository, ITagRepository tagRepository, ITagFactory tagFactory, IWebsiteInfo websiteInfo ) { dateService.CheckArgumentIsNull(); _dateService = dateService; userContext.CheckArgumentIsNull(); _userContext = userContext; postRepository.CheckArgumentIsNull(); _postRepository = postRepository; tagRepository.CheckArgumentIsNull(nameof(tagRepository)); _tagRepository = tagRepository; tagFactory.CheckArgumentIsNull(nameof(tagFactory)); _tagFactory = tagFactory; websiteInfo.CheckArgumentIsNull(nameof(websiteInfo)); _websiteInfo = websiteInfo; }
public MetaDataFactory(IPathTransformer pathTransformer , ITagFactory tagFactory ) { this.pathTransformer = pathTransformer; this.tagFactory = tagFactory; }
private void AddTag(string name, ITagFactory factory) { if (REGISTERED_TAGS.ContainsKey(name)) { throw TagException.DuplicateTag(name, REGISTERED_TAGS.Keys.ToArray()); } REGISTERED_TAGS.Add(factory.Name, factory); }
public static async Task <List <Tag> > CreateTagsAsync(this ITagFactory tagFactory, IEnumerable <string> englishNames) { var tags = new List <Tag>(); foreach (var name in englishNames) { tags.Add(await tagFactory.CreateTagAsync(name)); } return(tags); }
public SpiralLayouter(Point center, ITagFactory tagFactory) { if (center.X < 0 || center.Y < 0) { throw new ArgumentException($"Center point must have positive coordinates. Actual is {center}"); } this.center = center; this.tagFactory = tagFactory; spiral = GenerateSpiral(center); }
public HFile(IDatabase database, IFileHasher hasher, ITagFactory tagFactory, HFileState state) { _state = state; _database = database; _hasher = hasher; _tagFactory = tagFactory; _hash = new Lazy <FileHash>(() => _hasher.GetHash(_state)); _stream = new Lazy <Stream>(() => File.OpenRead(Location)); }
public static SpiralLayouter GetRandomLayouter(int canvasSideLength, ITagFactory factory) { var halfLength = canvasSideLength / 2; var fourthLength = canvasSideLength / 4; var center = new Point(halfLength, halfLength); var size = new Size(fourthLength, fourthLength); return(new SpiralLayouter( GetRandomPoint(DrawingExtensions.CreateRectangleWithCenter(center, size)), factory)); }
public WebApiDataService(IJournalEntryFactory journalEntryFactory, IDoseFactory doseFactory, INutritionalInfoFactory nutritionalInfoFactory, ITagFactory tagFactory) { this.client = new HttpClient(); client.DefaultRequestHeaders.Add("apikey", "2367b17e3d83bcf1b93dab840aa24d62"); client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json")); System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; client.BaseAddress = new Uri($"{Resources.ApiBackendUrl}/"); this.journalEntryFactory = journalEntryFactory; this.doseFactory = doseFactory; this.nutritionalInfoFactory = nutritionalInfoFactory; this.tagFactory = tagFactory; }
public TemplateParser(ITagFactory tagFactory, IReflector reflector, IFilterRunner filterRunner) { if (tagFactory == null) throw new ArgumentNullException("tagFactory", "tagFactory may not be null"); this.tagFactory = tagFactory; if (reflector == null) throw new ArgumentNullException("reflector"); this.reflector = reflector; if (filterRunner == null) throw new ArgumentNullException("filterRunner"); this.filterRunner = filterRunner; }
public static ImpressionEngine Create(string templatePath, IPropertyBag bag, ITemplateCache templateCache) { // create container and register it, in itself IContainer container = new Container(); container.Register <IContainer>(delegate { return(container); }); // singleton objects, only create once IReflector reflector = null; IFilterRunner filterRunner = null; ITagFactory tagFactory = null; container.Register <ITemplateCache>(delegate { return(templateCache); }); container.Register <IReflector>(delegate { if (reflector == null) { reflector = new Reflector(); } return(reflector); }); container.Register <IFilterRunner>(delegate { if (filterRunner == null) { filterRunner = new FilterRunner(); } return(filterRunner); }); container.Register <ITagFactory>(delegate { if (tagFactory == null) { tagFactory = container.Resolve <TagFactory>(); } return(tagFactory); }); // instance scoped, create new each time container.Register <ITemplateParser, TemplateParser>(); ImpressionEngine ie = container.Resolve <ImpressionEngine>(); if (!string.IsNullOrEmpty(templatePath)) { ie.LoadTemplate(templatePath, true); } if (bag != null) { ie.LoadBag(bag); } return(ie); }
public TagBuilder() { Assembly asm = Assembly.GetExecutingAssembly(); foreach (Type t in asm.GetTypes()) { object[] attrs = t.GetCustomAttributes(typeof(TagFactoryForAttribute), false); if (attrs.Length == 0) { continue; } ConstructorInfo[] ctors = t.GetConstructors(); ITagFactory factory = ctors[0].Invoke(new object[] { }) as ITagFactory; foreach (TagFactoryForAttribute attr in attrs) { m_factories[attr.EventType] = factory; } } }
public TemplateParser(ITagFactory tagFactory, IReflector reflector, IFilterRunner filterRunner) { if (tagFactory == null) { throw new ArgumentNullException("tagFactory", "tagFactory may not be null"); } this.tagFactory = tagFactory; if (reflector == null) { throw new ArgumentNullException("reflector"); } this.reflector = reflector; if (filterRunner == null) { throw new ArgumentNullException("filterRunner"); } this.filterRunner = filterRunner; }
public virtual void SyncVotes(User user, string[] tagNames, Dictionary<string, Tag> allTags, ITagFactory tagFactory, ITagUsageFactory<T> tagUsageFactory, bool onlyAdd = false) { var newTags = tagNames.Where(t => !allTags.ContainsKey(t)); foreach (var tag in newTags) { var newTag = tagFactory.CreateTag(tag); allTags.Add(newTag.Name, newTag); } tagNames = tagNames.Select(t => allTags[t].ActualTag.Name).Distinct().ToArray(); var tagUsagesDiff = CollectionHelper.Diff(Usages, tagNames, (t1, t2) => t1.Tag.Name.Equals(t2, StringComparison.InvariantCultureIgnoreCase)); foreach (var newUsageName in tagUsagesDiff.Added) { var tag = allTags[newUsageName]; var newUsage = tagUsageFactory.CreateTagUsage(tag); Usages.Add(newUsage); newUsage.CreateVote(user); } if (!onlyAdd) { foreach (var removedTag in tagUsagesDiff.Removed) { removedTag.RemoveVote(user); if (removedTag.Count <= 0) Usages.Remove(removedTag); } } foreach (var updated in tagUsagesDiff.Unchanged) { updated.CreateVote(user); } }
public TagExtractor(ITagFactory tagFactory) { _tagFactory = tagFactory; }
/// <summary> /// 變更要處理的ITag /// </summary> /// <param name="tag">tag名稱</param> public void ChangeTag(string tag) { ITag = ITagFactory.CreateITag(tag); }
public static void RegisterTagFactory(ITagFactory tagFactory) { Tags[tagFactory.TagName] = new Tuple <ITagFactory, Type>(tagFactory, null); }
public TagService(IRepository <Tag> tag, ITagFactory tagFactory) { _tag = tag ?? throw new ArgumentNullException(nameof(tag)); _tagFactory = tagFactory ?? throw new ArgumentNullException(nameof(tagFactory)); }
public HFileFactory(IDatabase database, IFileHasher hasher, ITagFactory tagFactory) { _database = database; _hasher = hasher; _tagFactory = tagFactory; }
public void Register(ITagFactory factory) { AddTag(factory.Name, factory); }
public TagRespository(IDatabase database, ITagFactory tagFactory) { _database = database; _tagFactory = tagFactory; }