public override bool CanInterpretFrom(Extractor.Extractor aExtractor)
        {
            // The text interpreter only works with the text extractor
            bool ret = (aExtractor is Extractor.Implementations.ExtractorText);

            if (ret)
            {
            }
            //
            return(ret);
        }
        public InterpreterBase FindSuitableInterpreter(Extractor.Extractor aExtractor)
        {
            InterpreterBase ret = null;

            //
            foreach (Type type in iTypes)
            {
                InterpreterBase interpreter = CreateInstance(type);
                try
                {
                    bool canDoIt = interpreter.CanInterpretFrom(aExtractor);
                    if (canDoIt)
                    {
                        ret = interpreter;
                        break;
                    }
                }
                catch (Exception)
                {
                }
            }
            //
            return(ret);
        }
 public override void PrepareToStart(Extractor.Extractor aExtractor)
 {
     // Seed the data source with the thread name. We can do this immediately
     // since the thread name is identified during the extractor initialisation
     DataSource.ThreadName = aExtractor.Hash;
 }
예제 #4
0
 public abstract void PrepareToStart(Extractor.Extractor aExtractor);
예제 #5
0
 public abstract bool CanInterpretFrom(Extractor.Extractor aExtractor);