public List<ENCODED_TYPE> encode(Feature feature) throws CleartkEncoderException { for (FeatureEncoder<ENCODED_TYPE> featureEncoder : featureEncoders) { if (featureEncoder.encodes(feature)) return featureEncoder.encode(feature); } throw CleartkEncoderException.noMatchingEncoder(feature, featureEncoders); }
public boolean encodes(Feature feature) { for (FeatureEncoder<ENCODED_TYPE> encoder : featureEncoders) if (encoder.encodes(feature)) return true; return false; }
public List<NameNumber> encode(Feature feature) throws CleartkEncoderException { FeatureCollection fc = (FeatureCollection) feature.getValue(); List<NameNumber> fves = new ArrayList<NameNumber>(); if (identifier != null && !identifier.equals(fc.getIdentifier())) return Collections.emptyList(); for (Feature f : fc.getFeatures()) { Feature f1 = new Feature(Feature.createName(feature.getName(), f.getName()), f.getValue()); fves.addAll(subEncoder.encode(f1)); } normalizer.normalize(fves); return fves; }