while (it.hasNext()) { ProcessingResourceMetaData md = it.next(); if (md.getTypePriorities() != null) typePriorities.add(md.getTypePriorities());
if (md.getTypeSystem() != null) typeSystemsToMerge.add(md.getTypeSystem()); if (md.getTypePriorities() != null) typePrioritiesToMerge.add(md.getTypePriorities()); if (md.getFsIndexCollection() != null) fsIndexesToMerge.add(md.getFsIndexCollection());
public CasDefinition(Collection<? extends ProcessingResourceMetaData> aMetaDataToMerge, ResourceManager aResourceManager) throws ResourceInitializationException { // extract TypeSystems, TypePriorities, and FsIndexes from metadata List<TypeSystemDescription> typeSystems = new ArrayList<TypeSystemDescription>(); List<TypePriorities> typePrioritiesList = new ArrayList<TypePriorities>(); List<FsIndexCollection> fsIndexes = new ArrayList<FsIndexCollection>(); Iterator<? extends ProcessingResourceMetaData> it = aMetaDataToMerge.iterator(); while (it.hasNext()) { ProcessingResourceMetaData md = it.next(); if (md.getTypeSystem() != null) typeSystems.add(md.getTypeSystem()); if (md.getTypePriorities() != null) typePrioritiesList.add(md.getTypePriorities()); if (md.getFsIndexCollection() != null) fsIndexes.add(md.getFsIndexCollection()); } // merge TypePriorities and FsIndexes TypePriorities aggTypePriorities = CasCreationUtils.mergeTypePriorities(typePrioritiesList, aResourceManager); FsIndexCollection aggIndexColl = CasCreationUtils.mergeFsIndexes(fsIndexes, aResourceManager); TypeSystemDescription aggTypeDesc = CasCreationUtils.mergeTypeSystems(typeSystems, aResourceManager); this.typeSystemDescription = aggTypeDesc; this.typePriorities = aggTypePriorities; this.fsIndexDescriptions = aggIndexColl.getFsIndexes(); this.resourceManager = aResourceManager; }
if (md.getTypeSystem() != null) typeSystems.add(md.getTypeSystem()); if (md.getTypePriorities() != null) typePriorities.add(md.getTypePriorities()); if (md.getFsIndexCollection() != null) fsIndexes.add(md.getFsIndexCollection());
while (it.hasNext()) { ProcessingResourceMetaData md = it.next(); if (md.getTypePriorities() != null) typePriorities.add(md.getTypePriorities());
/** * This comparison is needed to avoid throwing errors in the use case: * a) the pipeline has been fully initialized, and one or more CASes have been drawn from this pool * b) Another instance of an annotator using the same resource manager is initialized. * * In this case there is no change to the metadata, and we do not want to disturb anything. * * @param md the metadata to see if its in the list already * @return true if the type system description, the type priority description, and the index collection are * in the list already. */ private boolean containsSameTypeAndIndexInfo(ProcessingResourceMetaData md) { final TypeSystemDescription tsd = md.getTypeSystem(); final TypePriorities tsp = md.getTypePriorities(); final FsIndexCollection ic = md.getFsIndexCollection(); for (ProcessingResourceMetaData item : mMetaDataList) { final TypeSystemDescription otsd = item.getTypeSystem(); final TypePriorities otsp = item.getTypePriorities(); final FsIndexCollection oic = item.getFsIndexCollection(); if (equalsWithNulls(tsp, otsp) && equalsWithNulls(tsd, otsd) && equalsWithNulls(ic , oic )) { return true; } } return false; }
if (md.getTypeSystem() != null) typeSystems.add(md.getTypeSystem()); if (md.getTypePriorities() != null) typePriorities.add(md.getTypePriorities()); if (md.getFsIndexCollection() != null) fsIndexes.add(md.getFsIndexCollection());
private TypePriorities mergeTypePriorities() throws ResourceInitializationException { TypePriorities aggTypePriorities = getCasManagerWrapper().getMetadata().getTypePriorities(); if ( aggregateMetadata.getTypePriorities() != null && aggregateMetadata.getTypePriorities().getPriorityLists() != null) { for( TypePriorityList pl : aggregateMetadata.getTypePriorities().getPriorityLists()) { getCasManagerWrapper(). getMetadata(). getTypePriorities(). addPriorityList(pl); } List<? extends TypePriorities> tpl = Arrays.asList(getCasManagerWrapper().getMetadata().getTypePriorities()); aggTypePriorities = CasCreationUtils.mergeTypePriorities(tpl, getCasManagerWrapper().getResourceManager()); } return aggTypePriorities; } protected void startProcessing() throws Exception {
if (md.getTypeSystem() != null) typeSystems.add(md.getTypeSystem()); if (md.getTypePriorities() != null) typePriorities.add(md.getTypePriorities()); if (md.getFsIndexCollection() != null) fsIndexCollections.add(md.getFsIndexCollection());
public CAS getEmptyCas() throws ResourceInitializationException { // Reuse same CAS for each request if (cas != null) { cas.reset(); } else { TypePriorities ae_tp = ae.getProcessingResourceMetaData().getTypePriorities(); TypeSystemDescription ae_tsd = ae.getProcessingResourceMetaData().getTypeSystem(); FsIndexDescription[] ae_fid = ae.getProcessingResourceMetaData().getFsIndexes(); // Use class level locking to serialize access to CasCreationUtils // Only one thread at the time can create a CAS. UIMA uses lazy // initialization approach which can cause NPE when two threads // attempt to initialize a CAS. synchronized( CasCreationUtils.class) { cas = CasCreationUtils.createCas(ae_tsd, ae_tp, ae_fid); } } return cas; }
aDesc.getAnalysisEngineMetaData().setTypePriorities(meta.getTypePriorities()); aDesc.getAnalysisEngineMetaData().setFsIndexCollection(meta.getFsIndexCollection());
cr_tp = cr.getProcessingResourceMetaData().getTypePriorities(); cr_tsd = cr.getProcessingResourceMetaData().getTypeSystem(); cr_fid = cr.getProcessingResourceMetaData().getFsIndexes();
/** * Convert to ae meta data. * * @param r the r * @return the analysis engine meta data */ private AnalysisEngineMetaData convertToAeMetaData(ResourceMetaData r) { ProcessingResourceMetaData p = (ProcessingResourceMetaData) r; AnalysisEngineMetaData d = UIMAFramework.getResourceSpecifierFactory() .createAnalysisEngineMetaData(); d.setCapabilities(p.getCapabilities()); d.setConfigurationParameterDeclarations(p.getConfigurationParameterDeclarations()); d.setConfigurationParameterSettings(p.getConfigurationParameterSettings()); d.setCopyright(p.getCopyright()); d.setDescription(p.getDescription()); d.setFsIndexCollection(p.getFsIndexCollection()); d.setName(p.getName()); d.setTypePriorities(p.getTypePriorities()); d.setTypeSystem(p.getTypeSystem()); d.setVendor(p.getVendor()); d.setVersion(p.getVersion()); d.setOperationalProperties(p.getOperationalProperties()); ((AnalysisEngineMetaData_impl)d).setInfoset(((MetaDataObject_impl)r).getInfoset()); return d; }