/******************************************************************************* * Copyright 2011 * Ubiquitous Knowledge Processing (UKP) Lab * Technische Universität Darmstadt * * Licensed 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. ******************************************************************************/ package org.dkpro.lab.uima.task.impl; import static org.apache.uima.fit.factory.AnalysisEngineFactory.createEngineDescription; import org.apache.uima.analysis_engine.AnalysisEngineDescription; import org.apache.uima.collection.CollectionReaderDescription; import org.apache.uima.resource.ResourceInitializationException; import org.dkpro.lab.engine.TaskContext; /** * Simple UIMA task configuration which allows you to set pre-generated * {@link CollectionReaderDescription} and {@link AnalysisEngineDescription}s. In most cases you * would want to extend {@link UimaTaskBase} and just override * {@link UimaTaskBase#getCollectionReaderDescription(TaskContext)} and * {@link UimaTaskBase#getAnalysisEngineDescription(TaskContext)}. */ public class DefaultUimaTask extends UimaTaskBase { private CollectionReaderDescription readerDesc; private AnalysisEngineDescription analysisDesc; public DefaultUimaTask() { // Do nothing } public DefaultUimaTask(CollectionReaderDescription aReader, AnalysisEngineDescription... aAes) throws ResourceInitializationException { setReaderDescription(aReader); if (aAes.length == 1) { setAnalysisEngineDescription(aAes[0]); } else { setAnalysisEngineDescription(createEngineDescription(aAes)); } } @Override public CollectionReaderDescription getCollectionReaderDescription(TaskContext aContext) throws ResourceInitializationException { return readerDesc; } public void setReaderDescription(CollectionReaderDescription aReaderDesc) { readerDesc = aReaderDesc; } @Override public AnalysisEngineDescription getAnalysisEngineDescription(TaskContext aContext) throws ResourceInitializationException { return analysisDesc; } public void setAnalysisEngineDescription( AnalysisEngineDescription aAnalysisDesc) { analysisDesc = aAnalysisDesc; } }