public virtual void EventOccurred(IEventData data, EventType type) { switch (type) { case EventType.RENDER_TEXT: { TextRenderInfo textInfo = (TextRenderInfo)data; int mcid = textInfo.GetMcid(); if (mcid != -1) { ITextExtractionStrategy textExtractionStrategy = this.contentByMcid.Get(mcid); if (textExtractionStrategy == null) { textExtractionStrategy = new LocationTextExtractionStrategy(); this.contentByMcid.Put(mcid, textExtractionStrategy); } textExtractionStrategy.EventOccurred(data, type); } break; } default: { break; } } }