@@ -0,0 +1,1236 @@
+package com.mattbachmann.nlpexperiments.apps;%0A%0Aimport com.google.inject.Guice;%0Aimport com.google.inject.Injector;%0Aimport com.mattbachmann.nlpexperiments.detectors.Detector;%0Aimport com.mattbachmann.nlpexperiments.detectors.LocationDetector;%0Aimport com.mattbachmann.nlpexperiments.detectors.PersonDetector;%0Aimport com.mattbachmann.nlpexperiments.modules.NLPModule;%0Aimport com.mattbachmann.nlpexperiments.utils.TextUtils;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.Arrays;%0Aimport java.util.List;%0A%0Apublic class ScanText %7B%0A    public static void main(String%5B%5D args) %7B%0A        Injector injector = Guice.createInjector(%0A                new NLPModule()%0A        );%0A        List%3CDetector%3E detectors = new ArrayList%3C%3E();%0A        detectors.add(injector.getInstance(LocationDetector.class));%0A        detectors.add(injector.getInstance(PersonDetector.class));%0A%0A        Arrays.asList(args).forEach(textBlock -%3E %7B%0A            System.out.println(String.format(%22Processing Text:%5Cn%25s%22, textBlock));%0A            TextUtils.extractMatchesFromText(detectors, textBlock).forEach(%0A                    (key, value) -%3E System.out.println(String.format(%22%25s detector found: %25s%22, key, value))%0A            );%0A            System.out.println();%0A        %7D);%0A%0A    %7D%0A%7D%0A

Create basic main to demonstrate the flow