<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->
<?eclipse version="3.4"?>
<plugin>
<extension-point id="learners" name="TextRuler Learner" schema="schema/learners.exsd"/>
   <extension
         point="org.eclipse.ui.views">
      <view
            allowMultiple="false"
            category="org.apache.uima.ruta.ide.ui"
            class="org.apache.uima.ruta.textruler.ui.TextRulerView"
            icon="icons/lineal.png"
            id="org.apache.uima.ruta.ml.MainView"
            name="TextRuler"
            restorable="true">
      </view>
      <view
            allowMultiple="true"
            category="org.apache.uima.ruta.ide.ui"
            class="org.apache.uima.ruta.textruler.ui.TextRulerResultsView"
            icon="icons/lineal.png"
            id="org.apache.uima.ruta.textruler.TextRulerResultsView"
            name="TextRuler Results"
            restorable="false">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.commands">
      <command
            defaultHandler="org.apache.uima.ruta.textruler.ui.StartStopHandler"
            id="org.apache.uima.ruta.ml.startstop"
            name="StartStop">
      </command>
      <command
            defaultHandler="org.apache.uima.ruta.textruler.ui.ConfigureLearnersHandler"
            id="org.apache.uima.ruta.textruler.configure"
            name="Configure Learners">
      </command>
      <command
            defaultHandler="org.apache.uima.ruta.textruler.ui.StartHandler"
            id="org.apache.uima.ruta.ml.start"
            name="Start">
      </command>
      <command
            defaultHandler="org.apache.uima.ruta.textruler.ui.StopHandler"
            id="org.apache.uima.ruta.ml.stop"
            name="Stop">
      </command>
      <command
            defaultHandler="org.apache.uima.ruta.textruler.ui.TestHandler"
            id="org.apache.uima.ruta.ml.test"
            name="Test">
      </command>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="toolbar:org.apache.uima.ruta.ml.MainView">
         <!--
         <command
               commandId="org.apache.uima.ruta.ml.startstop"
               icon="icons/PlayStop.png"
               id="MLStartStopCommand"
               label="Start/Stop"
               style="push">
         </command>
         -->
         <command
               commandId="org.apache.uima.ruta.ml.start"
               icon="icons/start.png"
               id="MLStartCommand"
               label="Start"
               style="push">
         </command>
         <command
               commandId="org.apache.uima.ruta.ml.stop"
               icon="icons/stop.gif"
               id="MLStopCommand"
               label="Stop"
               style="push">
         </command>
         <command
               commandId="org.apache.uima.ruta.textruler.configure"
               icon="icons/config.gif"
               id="MLConfigCommand"
               label="Configure Learners"
               style="push">
            <visibleWhen
                  checkEnabled="true">
            </visibleWhen>
         </command>
      </menuContribution>
      <menuContribution
            locationURI="toolbar:org.apache.uima.ruta.textruler.TextRulerResultsView">
         <command
               commandId="org.apache.uima.ruta.ml.test"
               icon="icons/testing.gif"
               id="MLTestCommand"
               label="Test"
               style="push">
               <visibleWhen
                  checkEnabled="false">
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.ide.preferences"
            class="org.apache.uima.ruta.textruler.preferences.ConfigPreferencePage"
            id="org.apache.uima.ruta.textruler"
            name="TextRuler">
      </page>
   </extension>
   <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.lp2.OptimizedLP2Factory"
            id="org.apache.uima.ruta.textruler.lp2opt"
            name="LP2 (optimized)">
      </learner>
      <learner
            class="org.apache.uima.ruta.textruler.learner.lp2.NaiveLP2Factory"
            id="org.apache.uima.ruta.textruler.lp2naive"
            name="LP2 (naive)">
      </learner>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.lp2.NaiveLP2PreferencePage"
            id="org.apache.uima.ruta.textruler.preference.lp2naive"
            name="LP2 (naive)">
      </page>
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.lp2.OptimizedLP2PreferencePage"
            id="org.apache.uima.ruta.textruler.preference.lp2opt"
            name="LP2 (optimized)">
      </page>
   </extension>
   <!--
   <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.wien.WienFactory"
            id="org.apache.uima.ruta.textruler.wien"
            name="WIEN">
      </learner>
   </extension>
   -->
      <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.whisk.token.WhiskFactory"
            id="org.apache.uima.ruta.textruler.whisk.token"
            name="WHISK (token)">
      </learner>
      <learner
            class="org.apache.uima.ruta.textruler.learner.whisk.generic.WhiskFactory"
            id="org.apache.uima.ruta.textruler.whisk.generic"
            name="WHISK (generic)">
      </learner>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.whisk.generic.WhiskGenericPreferencePage"
            id="org.apache.uima.ruta.textruler.preference.whisk.generic"
            name="Whisk (generic)">
      </page>
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.whisk.token.WhiskTokenPreferencePage"
            id="org.apache.uima.ruta.textruler.preference.whisk.token"
            name="Whisk (token)">
      </page>
   </extension>
   <!--
   <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.rapier.RapierFactory"
            id="org.apache.uima.ruta.textruler.rapier"
            name="RAPIER">
      </learner>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.rapier.RapierPreferencePage"
            id="org.apache.uima.ruta.textruler.preference.rapier"
            name="Rapier">
      </page>
   </extension>
   -->
   <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.trabal.TrabalFactory"
            id="org.apache.uima.ruta.textruler.trabal"
            name="TraBaL">
      </learner>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.trabal.TrabalPreferencePage"
            id="org.apache.uima.ruta.textruler.trabal"
            name="TraBaL">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.apache.uima.ruta.textruler"
            class="org.apache.uima.ruta.textruler.learner.kep.KEPPreferencePage"
            id="org.apache.uima.ruta.textruler.kep"
            name="KEP">
      </page>
   </extension>
   <extension
         point="org.apache.uima.ruta.textruler.learners">
      <learner
            class="org.apache.uima.ruta.textruler.learner.kep.KEPFactory"
            id="org.apache.uima.ruta.textruler.kep"
            name="KEP">
      </learner>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer
            class="org.apache.uima.ruta.textruler.preferences.TextRulerPreferenceInitializer">
      </initializer>
   </extension>
</plugin>
